PageSourceSearch

https://www.muppity.net/

html muppity.net collected 2026-10-02 05:22:44 UTC 150,918 bytes, 4,059 lines download raw bytes

1<!DOCTYPE html>
2<html class='v2' dir='ltr' lang='es' xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'>
3<head>
4<link href='https://www.blogger.com/static/v1/widgets/2872013778-css_bundle_v2.css' rel='stylesheet' type='text/css'/>
5<script type='text/javascript'>
6//<![CDATA[
7(function () {
8  try {
9    var savedTheme = localStorage.getItem('muppity-theme');
10    var systemDark =
11      window.matchMedia &&
12      window.matchMedia('(prefers-color-scheme: dark)').matches;
13
14    document.documentElement.setAttribute(
15      'data-theme',
16      savedTheme || (systemDark ? 'dark' : 'light')
17    );
18  } catch (error) {
19    document.documentElement.setAttribute('data-theme', 'light');
20  }
21}());
22//]]>
23</script>
23
24<meta content='width=device-width, initial-scale=1, viewport-fit=cover' name='viewport'/>
25<meta content='text/html; charset=UTF-8' http-equiv='Content-Type'/>
26<meta content='blogger' name='generator'/>
27<link href='https://www.muppity.net/favicon.ico' rel='icon' type='image/x-icon'/>
28<link href='http://www.muppity.net/' rel='canonical'/>
29<link rel="alternate" type="application/atom+xml" title="Muppity -  Cloud Data Architecture  - Atom" href="https://www.muppity.net/feeds/posts/default" />
30<link rel="alternate" type="application/rss+xml" title="Muppity -  Cloud Data Architecture  - RSS" href="https://www.muppity.net/feeds/posts/default?alt=rss" />
31<link rel="service.post" type="application/atom+xml" title="Muppity -  Cloud Data Architecture  - Atom" href="https://www.blogger.com/feeds/9088164836799777632/posts/default" />
32<link rel="me" href="https://www.blogger.com/profile/16222409298408561391" />
33<!--Can't find substitution for tag [blog.ieCssRetrofitLinks]-->
34<meta content='SQL Server' name='description'/>
35<meta content='http://www.muppity.net/' property='og:url'/>
36<meta content='Muppity -  Cloud Data Architecture ' property='og:title'/>
37<meta content='SQL Server' property='og:description'/>
38<title>Muppity -  Cloud Data Architecture </title>
39<style id='page-skin-1' type='text/css'><!--
40/*
41-----------------------------------------------
42Blogger Template Style
43Name:     Awesome Inc.
44Designer: Tina Chen
45URL:      tinachen.org
46----------------------------------------------- */
47#navbar-iframe { display: none !important; }
48/* Variable definitions
49====================
50<Variable name="keycolor" description="Main Color" type="color" default="#a9a9a9"/>
51<Group description="Page" selector="body">
52<Variable name="body.font" description="Font" type="font"
53default="normal normal 13px Arial, Tahoma, Helvetica, FreeSans, sans-serif"/>
54<Variable name="body.background.color" description="Background Color" type="color" default="#000000"/>
55<Variable name="body.text.color" description="Text Color" type="color" default="#FFFFFF"/>
56</Group>
57<Group description="Links" selector=".main-inner">
58<Variable name="link.color" description="Link Color" type="color" default="#888888"/>
59<Variable name="link.visited.color" description="Visited Color" type="color" default="#444444"/>
60<Variable name="link.hover.color" description="Hover Color" type="color" default="#cccccc"/>
61</Group>
62<Group description="Blog Title" selector=".header h1">
63<Variable name="header.font" description="Title Font" type="font"
64default="normal bold 40px Arial, Tahoma, Helvetica, FreeSans, sans-serif"/>
65<Variable name="header.text.color" description="Title Color" type="color" default="#999999" />
66<Variable name="header.background.color" description="Header Background" type="color" default="transparent" />
67</Group>
68<Group description="Blog Description" selector=".header .description">
69<Variable name="description.font" description="Font" type="font"
70default="normal normal 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif"/>
71<Variable name="description.text.color" description="Text Color" type="color"
72default="#999999" />
73</Group>
74<Group description="Tabs Text" selector=".tabs-inner .widget li a">
75<Variable name="tabs.font" description="Font" type="font"
76default="normal bold 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif"/>
77<Variable name="tabs.text.color" description="Text Color" type="color" default="#999999"/>
78<Variable name="tabs.selected.text.color" description="Selected Color" type="color" default="#444444"/>
79</Group>
80<Group description="Tabs Background" selector=".tabs-outer .PageList">
81<Variable name="tabs.background.color" description="Background Color" type="color" default="#141414"/>
82<Variable name="tabs.selected.background.color" description="Selected Color" type="color" default="#444444"/>
83<Variable name="tabs.border.color" description="Border Color" type="color" default="#eeeeee"/>
84</Group>
85<Group description="Date Header" selector=".main-inner .widget h2.date-header, .main-inner .widget h2.date-header span">
86<Variable name="date.font" description="Font" type="font"
87default="normal normal 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif"/>
88<Variable name="date.text.color" description="Text Color" type="color" default="#666666"/>
89<Variable name="date.border.color" description="Border Color" type="color" default="#eeeeee"/>
90</Group>
91<Group description="Post Title" selector="h3.post-title, h4, h3.post-title a">
92<Variable name="post.title.font" description="Font" type="font"
93default="normal bold 22px Arial, Tahoma, Helvetica, FreeSans, sans-serif"/>
94<Variable name="post.title.text.color" description="Text Color" type="color" default="#999999"/>
95</Group>
96<Group description="Post Background" selector=".post">
97<Variable name="post.background.color" description="Background Color" type="color" default="#ffffff" />
98<Variable name="post.border.color" description="Border Color" type="color" default="#eeeeee" />
99<Variable name="post.border.bevel.color" description="Bevel Color" type="color" default="#eeeeee"/>
100</Group>
101<Group description="Gadget Title" selector="h2">
102<Variable name="widget.title.font" description="Font" type="font"
103default="normal bold 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif"/>
104<Variable name="widget.title.text.color" description="Text Color" type="color" default="#999999"/>
105</Group>
106<Group description="Gadget Text" selector=".sidebar .widget">
107<Variable name="widget.font" description="Font" type="font"
108default="normal normal 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif"/>
109<Variable name="widget.text.color" description="Text Color" type="color" default="#999999"/>
110<Variable name="widget.alternate.text.color" description="Alternate Color" type="color" default="#666666"/>
111</Group>
112<Group description="Gadget Links" selector=".sidebar .widget">
113<Variable name="widget.link.color" description="Link Color" type="color" default="#3778cd"/>
114<Variable name="widget.link.visited.color" description="Visited Color" type="color" default="#4d469c"/>
115<Variable name="widget.link.hover.color" description="Hover Color" type="color" default="#3778cd"/>
116</Group>
117<Group description="Gadget Background" selector=".sidebar .widget">
118<Variable name="widget.background.color" description="Background Color" type="color" default="#141414"/>
119<Variable name="widget.border.color" description="Border Color" type="color" default="#222222"/>
120<Variable name="widget.border.bevel.color" description="Bevel Color" type="color" default="#000000"/>
121</Group>
122<Group description="Sidebar Background" selector=".column-left-inner .column-right-inner">
123<Variable name="widget.outer.background.color" description="Background Color" type="color" default="transparent" />
124</Group>
125<Group description="Images" selector=".main-inner">
126<Variable name="image.background.color" description="Background Color" type="color" default="transparent"/>
127<Variable name="image.border.color" description="Border Color" type="color" default="transparent"/>
128</Group>
129<Group description="Feed" selector=".blog-feeds">
130<Variable name="feed.text.color" description="Text Color" type="color" default="#999999"/>
131</Group>
132<Group description="Feed Links" selector=".blog-feeds">
133<Variable name="feed.link.color" description="Link Color" type="color" default="#3778cd"/>
134<Variable name="feed.link.visited.color" description="Visited Color" type="color" default="#4d469c"/>
135<Variable name="feed.link.hover.color" description="Hover Color" type="color" default="#3778cd"/>
136</Group>
137<Group description="Pager" selector=".blog-pager">
138<Variable name="pager.background.color" description="Background Color" type="color" default="#ffffff" />
139</Group>
140<Group description="Footer" selector=".footer-outer">
141<Variable name="footer.background.color" description="Background Color" type="color" default="#ffffff" />
142<Variable name="footer.text.color" description="Text Color" type="color" default="#999999" />
143</Group>
144<Variable name="title.shadow.spread" description="Title Shadow" type="length" default="-1px" min="-1px" max="100px"/>
145<Variable name="body.background" description="Body Background" type="background"
146color="#000000"
147default="$(color) none repeat scroll top left"/>
148<Variable name="body.background.gradient.cap" description="Body Gradient Cap" type="url"
149default="none"/>
150<Variable name="body.background.size" description="Body Background Size" type="string" default="auto"/>
151<Variable name="tabs.background.gradient" description="Tabs Background Gradient" type="url"
152default="none"/>
153<Variable name="header.background.gradient" description="Header Background Gradient" type="url" default="none" />
154<Variable name="header.padding.top" description="Header Top Padding" type="length" default="22px" min="0" max="100px"/>
155<Variable name="header.margin.top" description="Header Top Margin" type="length" default="0" min="0" max="100px"/>
156<Variable name="header.margin.bottom" description="Header Bottom Margin" type="length" default="0" min="0" max="100px"/>
157<Variable name="widget.padding.top" description="Widget Padding Top" type="length" default="8px" min="0" max="20px"/>
158<Variable name="widget.padding.side" description="Widget Padding Side" type="length" default="15px" min="0" max="100px"/>
159<Variable name="widget.outer.margin.top" description="Widget Top Margin" type="length" default="0" min="0" max="100px"/>
160<Variable name="widget.outer.background.gradient" description="Gradient" type="url" default="none" />
161<Variable name="widget.border.radius" description="Gadget Border Radius" type="length" default="0" min="0" max="100px"/>
162<Variable name="outer.shadow.spread" description="Outer Shadow Size" type="length" default="0" min="0" max="100px"/>
163<Variable name="date.header.border.radius.top" description="Date Header Border Radius Top" type="length" default="0" min="0" max="100px"/>
164<Variable name="date.header.position" description="Date Header Position" type="length" default="15px" min="0" max="100px"/>
165<Variable name="date.space" description="Date Space" type="length" default="30px" min="0" max="100px"/>
166<Variable name="date.position" description="Date Float" type="string" default="static" />
167<Variable name="date.padding.bottom" description="Date Padding Bottom" type="length" default="0" min="0" max="100px"/>
168<Variable name="date.border.size" description="Date Border Size" type="length" default="0" min="0" max="10px"/>
169<Variable name="date.background" description="Date Background" type="background" color="transparent"
170default="$(color) none no-repeat scroll top left" />
171<Variable name="date.first.border.radius.top" description="Date First top radius" type="length" default="0" min="0" max="100px"/>
172<Variable name="date.last.space.bottom" description="Date Last Space Bottom" type="length"
173default="20px" min="0" max="100px"/>
174<Variable name="date.last.border.radius.bottom" description="Date Last bottom radius" type="length" default="0" min="0" max="100px"/>
175<Variable name="post.first.padding.top" description="First Post Padding Top" type="length" default="0" min="0" max="100px"/>
176<Variable name="image.shadow.spread" description="Image Shadow Size" type="length" default="0" min="0" max="100px"/>
177<Variable name="image.border.radius" description="Image Border Radius" type="length" default="0" min="0" max="100px"/>
178<Variable name="separator.outdent" description="Separator Outdent" type="length" default="15px" min="0" max="100px"/>
179<Variable name="title.separator.border.size" description="Widget Title Border Size" type="length" default="1px" min="0" max="10px"/>
180<Variable name="list.separator.border.size" description="List Separator Border Size" type="length" default="1px" min="0" max="10px"/>
181<Variable name="shadow.spread" description="Shadow Size" type="length" default="0" min="0" max="100px"/>
182<Variable name="startSide" description="Side where text starts in blog language" type="automatic" default="left"/>
183<Variable name="endSide" description="Side where text ends in blog language" type="automatic" default="right"/>
184<Variable name="date.side" description="Side where date header is placed" type="string" default="right"/>
185<Variable name="pager.border.radius.top" description="Pager Border Top Radius" type="length" default="0" min="0" max="100px"/>
186<Variable name="pager.space.top" description="Pager Top Space" type="length" default="1em" min="0" max="20em"/>
187<Variable name="footer.background.gradient" description="Background Gradient" type="url" default="none" />
188<Variable name="mobile.background.size" description="Mobile Backgroun
188d Size" type="string"
189default="auto"/>
190<Variable name="mobile.background.overlay" description="Mobile Background Overlay" type="string"
191default="transparent none repeat scroll top left"/>
192<Variable name="mobile.button.color" description="Mobile Button Color" type="color" default="#ffffff" />
193*/
194/* Content
195----------------------------------------------- */
196body {
197font: normal normal 11px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
198color: #999999;
199background: #000000 none repeat scroll top left;
200}
201html body .content-outer {
202min-width: 0;
203max-width: 100%;
204width: 100%;
205}
206a:link {
207text-decoration: none;
208color: #3778cd;
209}
210a:visited {
211text-decoration: none;
212color: #4d469c;
213}
214a:hover {
215text-decoration: underline;
216color: #3778cd;
217}
218.body-fauxcolumn-outer .cap-top {
219position: absolute;
220z-index: 1;
221height: 276px;
222width: 100%;
223background: transparent none repeat-x scroll top left;
224_background-image: none;
225}
226/* Columns
227----------------------------------------------- */
228.content-inner {
229padding: 0;
230}
231.header-inner .section {
232margin: 0 16px;
233}
234.tabs-inner .section {
235margin: 0 16px;
236}
237.main-inner {
238padding-top: 30px;
239}
240.main-inner .column-center-inner,
241.main-inner .column-left-inner,
242.main-inner .column-right-inner {
243padding: 0 5px;
244}
245*+html body .main-inner .column-center-inner {
246margin-top: -30px;
247}
248#layout .main-inner .column-center-inner {
249margin-top: 0;
250}
251/* Header
252----------------------------------------------- */
253.header-outer {
254margin: 0 0 0 0;
255background: transparent none repeat scroll 0 0;
256}
257.Header h1 {
258font: normal bold 40px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
259color: #666666;
260text-shadow: 0 0 -1px #000000;
261}
262.Header h1 a {
263color: #666666;
264}
265.Header .description {
266font: normal normal 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
267color: #666666;
268}
269.header-inner .Header .titlewrapper,
270.header-inner .Header .descriptionwrapper {
271padding-left: 0;
272padding-right: 0;
273margin-bottom: 0;
274}
275.header-inner .Header .titlewrapper {
276padding-top: 22px;
277}
278/* Tabs
279----------------------------------------------- */
280.tabs-outer {
281overflow: hidden;
282position: relative;
283background: #eeeeee url(https://resources.blogblog.com/blogblog/data/1kt/awesomeinc/tabs_gradient_light.png) repeat scroll 0 0;
284}
285#layout .tabs-outer {
286overflow: visible;
287}
288.tabs-cap-top, .tabs-cap-bottom {
289position: absolute;
290width: 100%;
291border-top: 1px solid #999999;
292}
293.tabs-cap-bottom {
294bottom: 0;
295}
296.tabs-inner .widget li a {
297display: inline-block;
298margin: 0;
299padding: .6em 1.5em;
300font: normal bold 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
301color: #444444;
302border-top: 1px solid #999999;
303border-bottom: 1px solid #999999;
304border-left: 1px solid #999999;
305height: 16px;
306line-height: 16px;
307}
308.tabs-inner .widget li:last-child a {
309border-right: 1px solid #999999;
310}
311.tabs-inner .widget li.selected a, .tabs-inner .widget li a:hover {
312background: #666666 url(https://resources.blogblog.com/blogblog/data/1kt/awesomeinc/tabs_gradient_light.png) repeat-x scroll 0 -100px;
313color: #ffffff;
314}
315/* Headings
316----------------------------------------------- */
317h2 {
318font: normal bold 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
319color: #444444;
320}
321/* Widgets
322----------------------------------------------- */
323.main-inner .section {
324margin: 0 27px;
325padding: 0;
326}
327.main-inner .column-left-outer,
328.main-inner .column-right-outer {
329margin-top: 0;
330}
331#layout .main-inner .column-left-outer,
332#layout .main-inner .column-right-outer {
333margin-top: 0;
334}
335.main-inner .column-left-inner,
336.main-inner .column-right-inner {
337background: transparent none repeat 0 0;
338-moz-box-shadow: 0 0 0 rgba(0, 0, 0, .2);
339-webkit-box-shadow: 0 0 0 rgba(0, 0, 0, .2);
340-goog-ms-box-shadow: 0 0 0 rgba(0, 0, 0, .2);
341box-shadow: 0 0 0 rgba(0, 0, 0, .2);
342-moz-border-radius: 0;
343-webkit-border-radius: 0;
344-goog-ms-border-radius: 0;
345border-radius: 0;
346}
347#layout .main-inner .column-left-inner,
348#layout .main-inner .column-right-inner {
349margin-top: 0;
350}
351.sidebar .widget {
352font: normal normal 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
353color: #444444;
354}
355.sidebar .widget a:link {
356color: #3778cd;
357}
358.sidebar .widget a:visited {
359color: #4d469c;
360}
361.sidebar .widget a:hover {
362color: #3778cd;
363}
364.sidebar .widget h2 {
365text-shadow: 0 0 -1px #000000;
366}
367.main-inner .widget {
368background-color: #ffffff;
369border: 1px solid #eeeeee;
370padding: 0 15px 15px;
371margin: 20px -16px;
372-moz-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
373-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
374-goog-ms-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
375box-shadow: 0 0 20px rgba(0, 0, 0, .2);
376-moz-border-radius: 0;
377-webkit-border-radius: 0;
378-goog-ms-border-radius: 0;
379border-radius: 0;
380}
381.main-inner .widget h2 {
382margin: 0 -15px;
383padding: .6em 15px .5em;
384border-bottom: 1px solid transparent;
385}
386.footer-inner .widget h2 {
387padding: 0 0 .4em;
388border-bottom: 1px solid transparent;
389}
390.main-inner .widget h2 + div, .footer-inner .widget h2 + div {
391border-top: 1px solid #eeeeee;
392padding-top: 8px;
393}
394.main-inner .widget .widget-content {
395margin: 0 -15px;
396padding: 7px 15px 0;
397}
398.main-inner .widget ul, .main-inner .widget #ArchiveList ul.flat {
399margin: -8px -15px 0;
400padding: 0;
401list-style: none;
402}
403.main-inner .widget #ArchiveList {
404margin: -8px 0 0;
405}
406.main-inner .widget ul li, .main-inner .widget #ArchiveList ul.flat li {
407padding: .5em 15px;
408text-indent: 0;
409color: #666666;
410border-top: 1px solid #eeeeee;
411border-bottom: 1px solid transparent;
412}
413.main-inner .widget #ArchiveList ul li {
414padding-top: .25em;
415padding-bottom: .25em;
416}
417.main-inner .widget ul li:first-child, .main-inner .widget #ArchiveList ul.flat li:first-child {
418border-top: none;
419}
420.main-inner .widget ul li:last-child, .main-inner .widget #ArchiveList ul.flat li:last-child {
421border-bottom: none;
422}
423.post-body {
424position: relative;
425}
426.main-inner .widget .post-body ul {
427padding: 0 2.5em;
428margin: .5em 0;
429list-style: disc;
430}
431.main-inner .widget .post-body ul li {
432padding: 0.25em 0;
433margin-bottom: .25em;
434color: #999999;
435border: none;
436}
437.footer-inner .widget ul {
438padding: 0;
439list-style: none;
440}
441.widget .zippy {
442color: #666666;
443}
444/* Posts
445----------------------------------------------- */
446body .main-inner .Blog {
447padding: 0;
448margin-bottom: 1em;
449background-color: transparent;
450border: none;
451-moz-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
452-webkit-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
453-goog-ms-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
454box-shadow: 0 0 0 rgba(0, 0, 0, 0);
455}
456.main-inner .section:last-child .Blog:last-child {
457padding: 0;
458margin-bottom: 1em;
459}
460.main-inner .widget h2.date-header {
461margin: 0 -15px 1px;
462padding: 0 0 0 0;
463font: normal normal 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
464color: #444444;
465background: transparent none no-repeat scroll top left;
466border-top: 0 solid #eeeeee;
467border-bottom: 1px solid transparent;
468-moz-border-radius-topleft: 0;
469-moz-border-radius-topright: 0;
470-webkit-border-top-left-radius: 0;
471-webkit-border-top-right-radius: 0;
472border-top-left-radius: 0;
473border-top-right-radius: 0;
474position: static;
475bottom: 100%;
476right: 15px;
477text-shadow: 0 0 -1px #000000;
478}
479.main-inner .widget h2.date-header span {
480font: normal normal 14px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
481display: block;
482padding: .5em 15px;
483border-left: 0 solid #eeeeee;
484border-right: 0 solid #eeeeee;
485}
486.date-outer {
487position: relative;
488margin: 30px 0 20px;
489padding: 0 15px;
490background-color: #ffffff;
491border: 1px solid #eeeeee;
492-moz-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
493-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
494-goog-ms-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
495box-shadow: 0 0 20px rgba(0, 0, 0, .2);
496-moz-border-radius: 0;
497-webkit-border-radius: 0;
498-goog-ms-border-radius: 0;
499border-radius: 0;
500}
501.date-outer:first-child {
502margin-top: 0;
503}
504.date-outer:last-child {
505margin-bottom: 20px;
506-moz-border-radius-bottomleft: 0;
507-moz-border-radius-bottomright: 0;
508-webkit-border-bottom-left-radius: 0;
509-webkit-border-bottom-right-radius: 0;
510-goog-ms-border-bottom-left-radius: 0;
511-goog-ms-border-bottom-right-radius: 0;
512border-bottom-left-radius: 0;
513border-bottom-right-radius: 0;
514}
515.date-posts {
516margin: 0 -15px;
517padding: 0 15px;
518clear: both;
519}
520.post-outer, .inline-ad {
521border-top: 1px solid #eeeeee;
522margin: 0 -15px;
523padding: 15px 15px;
524}
525.post-outer {
526padding-bottom: 10px;
527}
528.post-outer:first-child {
529padding-top: 0;
530border-top: none;
531}
532.post-outer:last-child, .inline-ad:last-child {
533border-bottom: none;
534}
535.post-body {
536position: relative;
537}
538.post-body img {
539padding: 8px;
540background: transparent;
541border: 1px solid transparent;
542-moz-box-shadow: 0 0 0 rgba(0, 0, 0, .2);
543-webkit-box-shadow: 0 0 0 rgba(0, 0, 0, .2);
544box-shadow: 0 0 0 rgba(0, 0, 0, .2);
545-moz-border-radius: 0;
546-webkit-border-radius: 0;
547border-radius: 0;
548}
549h3.post-title, h4 {
550font: normal bold 22px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
551color: #444444;
552}
553h3.post-title a {
554font: normal bold 22px Arial, Tahoma, Helvetica, FreeSans, sans-serif;
555color: #444444;
556}
557h3.post-title a:hover {
558color: #3778cd;
559text-decoration: underline;
560}
561.post-header {
562margin: 0 0 1em;
563}
564.post-body {
565line-height: 1.4;
566}
567.post-outer h2 {
568color: #999999;
569}
570.post-footer {
571margin: 1.5em 0 0;
572}
573#blog-pager {
574padding: 15px;
575font-size: 120%;
576background-color: #ffffff;
577border: 1px solid #eeeeee;
578-moz-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
579-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
580-goog-ms-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
581box-shadow: 0 0 20px rgba(0, 0, 0, .2);
582-moz-border-radius: 0;
583-webkit-border-radius: 0;
584-goog-ms-border-radius: 0;
585border-radius: 0;
586-moz-border-radius-topleft: 0;
587-moz-border-radius-topright: 0;
588-webkit-border-top-left-radius: 0;
589-webkit-border-top-right-radius: 0;
590-goog-ms-border-top-left-radius: 0;
591-goog-ms-border-top-right-radius: 0;
592border-top-left-radius: 0;
593border-top-right-radius-topright: 0;
594margin-top: 1em;
595}
596.blog-feeds, .post-feeds {
597margin: 1em 0;
598text-align: center;
599color: #444444;
600}
601.blog-feeds a, .post-feeds a {
602color: #3778cd;
603}
604.blog-feeds a:visited, .post-feeds a:visited {
605color: #4d469c;
606}
607.blog-feeds a:hover, .post-feeds a:hover {
608color: #3778cd;
609}
610.post-outer .comments {
611margin-top: 2em;
612}
613/* Comments
614----------------------------------------------- */
615.comments .comments-content .icon.blog-author {
616background-repeat: no-repeat;
617background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEgAACxIB0t1+/AAAAAd0SU1FB9sLFwMeCjjhcOMAAAD+SURBVDjLtZSvTgNBEIe/WRRnm3U8RC1neQdsm1zSBIU9VVF1FkUguQQsD9ITmD7ECZIJSE4OZo9stoVjC/zc7ky+zH9hXwVwDpTAWWLrgS3QAe8AZgaAJI5zYAmc8r0G4AHYHQKVwII8PZrZFsBFkeRCABYiMh9BRUhnSkPTNCtVXYXURi1FpBDgArj8QU1eVXUzfnjv7yP7kwu1mYrkWlU33vs1QNu2qU8pwN0UpKoqokjWwCztrMuBhEhmh8bD5UDqur75asbcX0BGUB9/HAMB+r32hznJgXy2v0sGLBcyAJ1EK3LFcbo1s91JeLwAbwGYu7TP/3ZGfnXYPgAVNngtqatUNgAAAABJRU5ErkJggg==);
618}
619.comments .comments-content .loadmore a {
620border-top: 1px solid #999999;
621border-bottom: 1px solid #999999;
622}
623.comments .continue {
624border-top: 2px solid #999999;
625}
626/* Footer
627----------------------------------------------- */
628.footer-outer {
629margin: -20px 0 -1px;
630padding: 20px 0 0;
631color: #444444;
632overflow: hidden;
633}
634.footer-fauxborder-left {
635border-top: 1px solid #eeeeee;
636background: #ffffff none repeat scroll 0 0;
637-moz-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
638-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
639-goog-ms-box-shadow: 0 0 20px rgba(0, 0, 0, .2);
640box-shadow: 0 0 20px rgba(0, 0, 0, .2);
641margin: 0 -20px;
642}
643/* Mobile
644----------------------------------------------- */
645body.mobile {
646background-size: auto;
647}
648.mobile .body-fauxcolumn-outer {
649background: transparent none repeat scroll top left;
650}
651*+html body.mobile .main-inner .column-center-inner {
652margin-top: 0;
653}
654.mobile .main-inner .widget {
655padding: 0 0 15px;
656}
657.mobile .main-inner .widget h2 + div,
658.mobile .footer-inner .widget h2 + div {
659border-top: none;
660padding-top: 0;
661}
662.mobile .footer-inner .widget h2 {
663padding: 0.5em 0;
664border-bottom: none;
665}
666.mobile .main-inner .widget .widget-content {
667margin: 0;
668padding: 7px 0 0;
669}
670.mobile .main-inner .widget ul,
671.mobile .main-inner .widget #ArchiveList ul.flat {
672margin: 0 -15px 0;
673}
674.mobile .main-inner .widget h2.date-header {
675right: 0;
676}
677.mobile .date-header span {
678padding: 0.4em 0;
679}
680.mobile .date-outer:first-child {
681margin-bottom: 0;
682border: 1px solid #eeeeee;
683-moz-border-radius-topleft: 0;
684-moz-border-radius-topright: 0;
685-webkit-border-top-left-radius: 0;
686-webkit-border-top-right-radius: 0;
687-goog-ms-border-top-left-radius: 0;
688-goog-ms-border-top-right-radius: 0;
689border-top-left-radius: 0;
690border-top-right-radius: 0;
691}
692.mobile .date-outer {
693border-color: #eeeeee;
694border-width: 0 1px 1px;
695}
696.mobile .date-outer:last-child {
697margin-bottom: 0;
698}
699.mobile .main-inner {
700padding: 0;
701}
702.mobile .header-inner .section {
703margin: 0;
704}
705.mobile .post-outer, .mobile .inline-ad {
706padding: 5px 0;
707}
708.mobile .tabs-inner .section {
709margin: 0 10px;
710}
711.mobile .main-inner .widget h2 {
712margin: 0;
713padding: 0;
714}
715.mobile .main-inner .widget h2.date-header span {
716padding: 0;
717}
718.mobile .main-inner .widget .widget-content {
719margin: 0;
720padding: 7px 0 0;
721}
722.mobile #blog-pager {
723border: 1px solid transparent;
724background: #ffffff none repeat scroll 0 0;
725}
726.mobile .main-inner .column-left-inner,
727.mobile .main-inner .column-right-inner {
728background: transparent none repeat 0 0;
729-moz-box-shadow: none;
730-webkit-box-shadow: none;
731-goog-ms-box-shadow: none;
732box-shadow: none;
733}
734.mobile .date-posts {
735margin: 0;
736padding: 0;
737}
738.mobile .footer-fauxborder-left {
739margin: 0;
740border-top: inherit;
741}
742.mobile .main-inner .section:last-child .Blog:last-child {
743margin-bottom: 0;
744}
745.mobile-index-contents {
746color: #999999;
747}
748.mobile .mobile-link-button {
749background: #3778cd url(https://resources.blogblog.com/blogblog/data/1kt/awesomeinc/tabs_gradient_light.png) repeat scroll 0 0;
750}
751.mobile-link-button a:link, .mobile-link-button a:visited {
752color: #ffffff;
753}
754.mobile .tabs-inner .PageList .widget-content {
755background: transparent;
756border-top: 1px solid;
757border-color: #999999;
758color: #444444;
759}
760.mobile .tabs-inner .PageList .widget-content .pagelist-arrow {
761border-left: 1px solid #999999;
762}
763.jump-link {
764text-align:right; /* center the button-can also use left or right */
765}
766.jump-link a {
767font-size:15px;
768padding:10px;
769border: none;
770background-color:#5b4993; /* change background color for the button */
771color:#fff; /* change text color */
772font-weight:bold;
773border-radius: 10px; /* button shape: 0px for squared edges or more for a rounded rectangle */ }
774/*Hides the Contact Form from the Gadgets shown*/
775div#ContactForm1 {
776display: none !important;
777}
778
779--></style>
780<style id='template-skin-1' type='text/css'><!--
781body {
782min-width: 1180px;
783}
784.content-outer, .content-fauxcolumn-outer, .region-inner {
785min-width: 1180px;
786max-width: 1180px;
787_width: 1180px;
788}
789.main-inner .columns {
790padding-left: 0px;
791padding-right: 300px;
792}
793.main-inner .fauxcolumn-center-outer {
794left: 0px;
795right: 300px;
796/* IE6 does not respect left and right together */
797_width: expression(this.parentNode.offsetWidth -
798parseInt("0px") -
799parseInt("300px") + 'px');
800}
801.main-inner .fauxcolumn-left-outer {
802width: 0px;
803}
804.main-inner .fauxcolumn-right-outer {
805width: 300px;
806}
807.main-inner .column-left-outer {
808width: 0px;
809right: 100%;
810margin-left: -0px;
811}
812.main-inner .column-right-outer {
813width: 300px;
814margin-right: -300px;
815}
816#layout {
817min-width: 0;
818}
819#layout .content-outer {
820min-width: 0;
821width: 800px;
822}
823#layout .region-inner {
824min-width: 0;
825width: auto;
826}
827body#layout div.add_widget {
828padding: 8px;
829}
830body#layout div.add_widget a {
831margin-left: 32px;
832}
833--></style>
834<!-- Muppity modern responsive overrides - generated 2026-07-16 -->
835<style type='text/css'>
836      
837      
838      /* ==========================================================
839         MUPPITY RESPONSIVE SAFETY PATCH
840         One layout system only: the modern Grid rules below control
841         desktop and the existing media queries control mobile.
842         ========================================================== */
843
844      html,
845      body {
846        width: 100% !important;
847        min-width: 0 !important;
848        max-width: 100% !important;
849        overflow-x: clip;
850      }
851
852      .content,
853      .content-outer,
854      .content-inner,
855      .content-fauxcolumns,
856      .content-fauxcolumn-outer,
857      .region-inner,
858      .header-inner,
859      .tabs-inner,
860      .main-inner,
861      .footer-inner {
862        min-width: 0 !important;
863        box-sizing: border-box;
864      }
865
866      .post-body img,
867      .post-body iframe,
868      .post-body video,
869      .post-body embed,
870      .post-body object {
871        max-width: 100% !important;
872      }
873
874      .post-body img {
875        height: auto !important;
876      }
877
878      .post-body iframe,
879      .post-body video {
880        width: 100% !important;
881      }
882
883      .post-body pre,
884      pre {
885        max-width: 100%;
886        overflow-x: auto;
887        -webkit-overflow-scrolling: touch;
888      }
889
890      @supports not (overflow: clip) {
891        html,
892        body {
893          overflow-x: hidden;
894        }
895      }
896
897      :root {
898        --mup-bg: #f4f7fb;
899        --mup-surface: #ffffff;
900        --mup-surface-soft: #f8fafc;
901        --mup-text: #172033;
902        --mup-muted: #667085;
903        --mup-border: #dfe7f1;
904        --mup-brand: #0f6cbd;
905        --mup-brand-strong: #0b4f8a;
906        --mup-accent: #2fb3ec;
907        --mup-code: #111827;
908        --mup-radius: 16px;
909        --mup-shadow: 0 10px 28px rgba(23, 32, 51, .08);
910      }
911
912      * { box-sizing: border-box; }
913
914      html { scroll-behavior: smooth; }
915
916      body,
917      body.mobile {
918        min-width: 0 !important;
919        margin: 0 !important;
920        background: var(--mup-bg) !important;
921        color: var(--mup-text) !important;
922        font-family: "Segoe UI", Inter, Roboto, Arial, sans-serif !important;
923        font-size: 17px !important;
924        line-height: 1.7 !important;
925        -webkit-font-smoothing: antialiased;
926        text-rendering: optimizeLegibility;
927      }
928
929      .content-outer,
930      .content-fauxcolumn-outer,
931      .region-inner {
932        min-width: 0 !important;
933        width: 100% !important;
934        max-width: 1180px !important;
935        margin-left: auto !important;
936        margin-right: auto !important;
937      }
938
939      .content-outer {
940        overflow: visible !important;
941        background: transparent !important;
942      }
943
944      .content-inner { padding: 0 18px !important; }
945      .main-inner { padding-top: 28px !important; }
946      .main-inner .section { margin: 0 14px !important; }
947
948      /* Header image remains intact but becomes responsive. */
949      .header-outer {
950        margin: 18px 0 0 !important;
951        background: transparent !important;
952      }
953
954      #header-inner,
955      #header-inner a,
956      #header-inner img {
957        width: 100% !important;
958        max-width: 100% !important;
959      }
960
961      #header-inner img {
962        height: auto !important;
963        display: block !important;
964        border-radius: 20px 20px 0 0;
965      }
966
967      /* Navigation */
968      .tabs-outer {
969        position: sticky !important;
970        top: 0;
971        z-index: 100;
972        overflow: visible !important;
973        background: #0b4f8a !important;
974        box-shadow: 0 4px 18px rgba(11, 79, 138, .18);
975      }
976
977      .tabs-inner .section { margin: 0 !important; }
978      .tabs-cap-top, .tabs-cap-bottom { display: none !important; }
979      .tabs-inner .widget,
980      .tabs-inner .widget-content { margin: 0 !important; padding: 0 !important; border: 0 !important; }
981
982      .topnav {
983        display: flex !important;
984        align-items: center;
985        gap: 4px;
986        overflow-x: auto !important;
987        background: transparent !important;
988        padding: 7px 10px !important;
989        scrollbar-width: none;
990      }
991
992      .topnav::-webkit-scrollbar { display: none; }
993
994      .topnav a {
995        float: none !important;
996        flex: 0 0 auto;
997        color: #eaf4ff !important;
998        background: transparent !important;
999        padding: 10px 15px !important;
1000        border-radius: 10px;
1001        font-size: 15px !important;
1002        font-weight: 650;
1003        line-height: 1.2;
1004        transition: background .2s ease, color .2s ease, transform .2s ease;
1005      }
1006
1007      .topnav a:hover,
1008      .topnav a:focus-visible {
1009        color: #ffffff !important;
1010        background: rgba(255,255,255,.14) !important;
1011        text-decoration: none !important;
1012        transform: translateY(-1px);
1013      }
1014
1015      .topnav a.active {
1016        color: #ffffff !important;
1017        background: var(--mup-accent) !important;
1018      }
1019
1020      /* Main layout */
1021      .main-inner .columns {
1022        display: grid !important;
1023        grid-template-columns: minmax(0, 1fr) 300px;
1024        gap: 26px;
1025        padding: 0 !important;
1026      }
1027
1028      .columns-inner { display: contents !important; }
1029      .column-center-outer,
1030      .column-right-outer {
1031        float: none !important;
1032        position: static !important;
1033        width: auto !important;
1034        margin: 0 !important;
1035      }
1036
1037      .column-left-outer,
1038      .fauxcolumn-left-outer,
1039      .fauxcolumn-center-outer,
1040      .fauxcolumn-right-outer { display: none !important; }
1041
1042      .column-center-inner,
1043      .column-right-inner { padding: 0 !important; }
1044
1045      /* Post cards */
1046      .date-outer {
1047        margin: 0 0 26px !important;
1048        padding: 0 !important;
1049        background: transparent !important;
1050        border: 0 !important;
1051        box-shadow: none !important;
1052      }
1053
1054      .date-posts { margin: 0 !important; padding: 0 !important; }
1055      .post-outer {
1056        margin: 0 0 24px !important;
1057        padding: 30px !important;
1058        background: var(--mup-surface) !important;
1059        border: 1px solid var(--mup-border) !important;
1060        border-radius: var(--mup-radius) !important;
1061        box-shadow: var(--mup-shadow) !important;
1062      }
1063
1064      .main-inner .widget h2.date-header {
1065        position: static !important;
1066        margin: 0 0 10px !important;
1067        padding: 0 !important;
1068        color: var(--mup-muted) !important;
1069        background: transparent !important;
1070        border: 0 !important;
1071        font-size: 13px !important;
1072        font-weight: 600 !important;
1073        text-transform: uppercase;
1074        letter-spacing: .06em;
1075        text-shadow: none !important;
1076      }
1077
1078      .main-inner .widget h2.date-header span { padding: 0 !important; border: 0 !important; }
1079
1080      h3.post-title,
1081      h3.post-title a,
1082      h4 {
1083        margin: 0 0 12px !important;
1084        color: var(--mup-text) !important;
1085        font-family: "Segoe UI", Inter, Roboto, Arial, sans-serif !important;
1086        font-size: clamp(1.65rem, 3vw, 2.25rem) !important;
1087        font-weight: 750 !important;
1088        line-height: 1.18 !important;
1089        letter-spacing: -.025em;
1090      }
1091
1092      h3.post-title a:hover { color: var(--mup-brand) !important; text-decoration: none !important; }
1093
1094      .post-header,
1095      .post-footer {
1096        color: var(--mup-muted) !important;
1097        font-size: 13px !important;
1098      }
1099
1100      .post-body {
1101        color: var(--mup-text) !important;
1102        font-size: 17px !important;
1103        line-height: 1.75 !important;
1104        overflow-wrap: anywhere;
1105      }
1106
1107      .post-body h1,
1108      .post-body h2,
1109      .post-body h3,
1110      .post-body h4 {
1111        margin: 1.65em 0 .55em !important;
1112        color: var(--mup-text) !important;
1113        line-height: 1.25 !important;
1114        letter-spacing: -.015em;
1115      }
1116
1117      .post-body h2 { font-size: 1.6rem !important; }
1118      .post-body h3 { font-size: 1.3rem !important; }
1119      .post-body p { margin: 0 0 1.15em; }
1120
1121      .post-body a { color: var(--mup-brand) !important; text-decoration-thickness: 1px; text-underline-offset: 3px; }
1122      .post-body a:hover { color: var(--mup-brand-strong) !important; }
1123
1124      .post-body img {
1125        max-width: 100% !important;
1126        height: auto !important;
1127        padding: 0 !important;
1128        border: 1px solid var(--mup-border) !important;
1129        border-radius: 12px !important;
1130        box-shadow: 0 8px 22px rgba(23, 32, 51, .10) !important;
1131      }
1132
1133      .post-body blockquote {
1134        margin: 1.4em 0;
1135        padding: 14px 18px;
1136        color: #344054;
1137        background: #edf6ff;
1138        border-left: 4px solid var(--mup-brand);
1139        border-radius: 0 10px 10px 0;
1140      }
1141
1142      .post-body pre {
1143        max-width: 100%;
1144        overflow-x: auto;
1145        margin: 1.4em 0;
1146        padding: 18px 20px !important;
1147        color: #e5e7eb !important;
1148        background: var(--mup-code) !important;
1149        border: 1px solid #273244;
1150        border-radius: 12px;
1151        font: 14px/1.65 Consolas, Monaco, "Courier New", monospace !important;
1152        tab-size: 2;
1153      }
1154
1155      .post-body code {
1156        padding: .12em .35em;
1157        color: #9a3412;
1158        background: #fff2e8;
1159        border-radius: 5px;
1160        font-family: Consolas, Monaco, "Courier New", monospace !important;
1161      }
1162
1163      .post-body pre code { padding: 0; color: inherit; background: transparent; }
1164
1165      .post-body table {
1166        display: block;
1167        width: 100%;
1168        overflow-x: auto;
1169        border-collapse: collapse;
1170      }
1171
1172      .post-body th,
1173      .post-body td { padding: 10px 12px; border: 1px solid var(--mup-border); }
1174      .post-body th { background: var(--mup-surface-soft); text-align: left; }
1175
1176      /* Read more button */
1177      .jump-link { margin-top: 20px !important; text-align: left !important; }
1178      .jump-link a {
1179        display: inline-flex;
1180        align-items: center;
1181        padding: 10px 16px !important;
1182        color: #ffffff !important;
1183        background: var(--mup-brand) !important;
1184        border: 0 !important;
1185        border-radius: 10px !important;
1186        font-size: 14px !important;
1187        font-weight: 700 !important;
1188        box-shadow: 0 5px 14px rgba(15, 108, 189, .22);
1189      }
1190      .jump-link a:hover { background: var(--mup-brand-strong) !important; text-decoration: none !important; }
1191
1192      /* Sidebar */
1193      .sidebar .widget,
1194      .main-inner .column-right-inner .widget {
1195        margin: 0 0 20px !important;
1196        padding: 20px !important;
1197        color: var(--mup-text) !important;
1198        background: var(--mup-surface) !important;
1199        border: 1px solid var(--mup-border) !important;
1200        border-radius: 14px !important;
1201        box-shadow: 0 7px 20px rgba(23, 32, 51, .06) !important;
1202      }
1203
1204      .sidebar .widget h2,
1205      .main-inner .column-right-inner .widget h2 {
1206        margin: 0 0 13px !important;
1207        padding: 0 0 10px !important;
1208        color: var(--mup-text) !important;
1209        border-bottom: 1px solid var(--mup-border) !important;
1210        font-size: 15px !important;
1211        font-weight: 750 !important;
1212        letter-spacing: .01em;
1213        text-shadow: none !important;
1214      }
1215
1216      .sidebar .widget .widget-content { margin: 0 !important; padding: 0 !important; }
1217      .sidebar .widget ul { margin: 0 !important; padding: 0 !important; }
1218      .sidebar .widget ul li {
1219        padding: 8px 0 !important;
1220        color: var(--mup-muted) !important;
1221        border-top: 0 !important;
1222        border-bottom: 1px solid #edf1f6 !important;
1223      }
1224      .sidebar .widget ul li:last-child { border-bottom: 0 !important; }
1225      .sidebar .widget a { color: var(--mup-brand) !important; }
1226
1227      /* Pager and footer */
1228      #blog-pager {
1229        margin: 8px 0 30px !important;
1230        padding: 16px !important;
1231        background: var(--mup-surface) !important;
1232        border: 1px solid var(--mup-border) !important;
1233        border-radius: 12px !important;
1234        box-shadow: none !important;
1235      }
1236
1237      #blog-pager a { color: var(--mup-brand) !important; font-weight: 700; }
1238
1239      .footer-outer {
1240        margin: 30px 0 0 !important;
1241        padding: 30px 0 !important;
1242        color: var(--mup-muted) !important;
1243        background: var(--mup-surface) !important;
1244        border-top: 1px solid var(--mup-border);
1245      }
1246
1247      /* Accessibility */
1248      a:focus-visible,
1249      button:focus-visible,
1250      input:focus-visible,
1251      textarea:focus-visible {
1252        outline: 3px solid rgba(47, 179, 236, .45) !important;
1253        outline-offset: 2px;
1254      }
1255
1256      /* Tablet/mobile */
1257      @media (max-width: 900px) {
1258        .content-inner { padding: 0 12px !important; }
1259        .header-outer { margin-top: 10px !important; }
1260        #header-inner img { border-radius: 14px 14px 0 0; }
1261        .main-inner .columns { display: block !important; }
1262        .column-right-outer { width: 100% !important; margin-top: 24px !important; }
1263        .main-inner .section { margin: 0 !important; }
1264        .post-outer { padding: 23px !important; }
1265      }
1266
1267      @media (max-width: 560px) {
1268        body, body.mobile { font-size: 16px !important; }
1269        .content-inner { padding: 0 8px !important; }
1270        .main-inner { padding-top: 16px !important; }
1271        .topnav { padding: 6px !important; }
1272        .topnav a { padding: 9px 12px !important; font-size: 14px !important; }
1273        .post-outer { padding: 19px 16px !important; border-radius: 12px !important; }
1274        .post-body { font-size: 16px !important; line-height: 1.7 !important; }
1275        .sidebar .widget, .main-inner .column-right-inner .widget { padding: 17px !important; }
1276      }
1277
1278      @media print {
1279        .tabs-outer, .sidebar, #blog-pager, .post-footer { display: none !important; }
1280        body { background: #fff !important; }
1281        .main-inner .columns { display: block !important; }
1282        .post-outer { padding: 0 !important; border: 0 !important; box-shadow: none !important; }
1283      }
1284      
1285      /* ==========================================================
1286   MUPPITY COLOR SCHEME
1287   ========================================================== */
1288
1289:root {
1290  color-scheme: light;
1291
1292  --mup-bg: #f4f7fb;
1293  --mup-surface: #ffffff;
1294  --mup-surface-soft: #f8fafc;
1295  --mup-text: #172033;
1296  --mup-heading: #0f172a;
1297  --mup-muted: #667085;
1298  --mup-border: #dfe7f1;
1299  --mup-link: #0067b8;
1300  --mup-link-hover: #004578;
1301  --mup-code-bg: #111827;
1302  --mup-code-text: #e5e7eb;
1303  --mup-shadow: rgba(15, 23, 42, 0.08);
1304}
1305
1306/* Dark mode explicitly selected */
1307html[data-theme='dark'] {
1308  color-scheme: dark;
1309
1310  --mup-bg: #0b1120;
1311  --mup-surface: #111827;
1312  --mup-surface-soft: #172033;
1313  --mup-text: #d9e2ef;
1314  --mup-heading: #f8fafc;
1315  --mup-muted: #9ca9bb;
1316  --mup-border: #293548;
1317  --mup-link: #66b7ff;
1318  --mup-link-hover: #9bd0ff;
1319  --mup-code-bg: #050914;
1320  --mup-code-text: #e5edf8;
1321  --mup-shadow: rgba(0, 0, 0, 0.32);
1322}
1323
1324/* Global transitions */
1325html,
1326body,
1327.content-outer,
1328.main-inner,
1329.date-outer,
1330.post,
1331.sidebar .widget,
1332#blog-pager,
1333.footer-outer,
1334.topnav {
1335  transition:
1336    background-color 0.25s ease,
1337    color 0.25s ease,
1338    border-color 0.25s ease,
1339    box-shadow 0.25s ease;
1340}
1341
1342html,
1343body {
1344  background: var(--mup-bg) !important;
1345  color: var(--mup-text) !important;
1346}
1347
1348/* Main content */
1349.content,
1350.content-outer,
1351.content-inner,
1352.main-outer,
1353.main-inner {
1354  color: var(--mup-text) !important;
1355}
1356
1357.date-outer,
1358.post,
1359.main-inner .widget,
1360.sidebar .widget,
1361#blog-pager {
1362  background: var(--mup-surface) !important;
1363  color: var(--mup-text) !important;
1364  border-color: var(--mup-border) !important;
1365  box-shadow: 0 10px 30px var(--mup-shadow) !important;
1366}
1367
1368/* Headings */
1369h1,
1370h2,
1371h3,
1372h4,
1373h5,
1374h6,
1375.post-title,
1376.post-title a,
1377.sidebar .widget h2,
1378.main-inner .widget h2 {
1379  color: var(--mup-heading) !important;
1380}
1381
1382/* Body text */
1383.post-body,
1384.post-header,
1385.post-footer,
1386.widget-content,
1387.sidebar,
1388.sidebar .widget,
1389.comments,
1390.date-header {
1391  color: var(--mup-text) !important;
1392}
1393
1394/* Secondary text */
1395.post-header,
1396.post-footer,
1397.date-header,
1398.byline,
1399.timestamp-link,
1400.comment-link,
1401.blog-feeds,
1402.post-feeds {
1403  color: var(--mup-muted) !important;
1404}
1405
1406/* Links */
1407a,
1408a:link,
1409a:visited,
1410.post-body a,
1411.sidebar .widget a {
1412  color: var(--mup-link) !important;
1413}
1414
1415a:hover,
1416.post-body a:hover,
1417.sidebar .widget a:hover {
1418  color: var(--mup-link-hover) !important;
1419}
1420
1421/* Images */
1422.post-body img {
1423  border-color: var(--mup-border) !important;
1424}
1425
1426/* Separators */
1427.post-outer,
1428.inline-ad,
1429.main-inner .widget ul li,
1430.main-inner .widget #ArchiveList ul.flat li {
1431  border-color: var(--mup-border) !important;
1432}
1433
1434/* Code blocks */
1435.post-body pre,
1436.post-body code,
1437pre,
1438code {
1439  background: var(--mup-code-bg) !important;
1440  color: var(--mup-code-text) !important;
1441  border-color: var(--mup-border) !important;
1442}
1443
1444/* Tables */
1445.post-body table {
1446  background: var(--mup-surface) !important;
1447  color: var(--mup-text) !important;
1448  border-color: var(--mup-border) !important;
1449}
1450
1451.post-body th {
1452  background: var(--mup-surface-soft) !important;
1453  color: var(--mup-heading) !important;
1454}
1455
1456.post-body td,
1457.post-body th {
1458  border-color: var(--mup-border) !important;
1459}
1460
1461/* Quotes */
1462.post-body blockquote {
1463  background: var(--mup-surface-soft) !important;
1464  color: var(--mup-text) !important;
1465  border-left-color: var(--mup-link) !important;
1466}
1467
1468/* Labels */
1469.Label a,
1470.label-size a {
1471  background: var(--mup-surface-soft) !important;
1472  color: var(--mup-link) !important;
1473  border: 1px solid var(--mup-border) !important;
1474}
1475
1476/* Navigation */
1477.topnav {
1478  background: var(--mup-surface) !important;
1479  border-bottom: 1px solid var(--mup-border) !important;
1480}
1481
1482.topnav a {
1483  color: var(--mup-text) !important;
1484}
1485
1486.topnav a:hover,
1487.topnav a.active {
1488  background: var(--mup-surface-soft) !important;
1489  color: var(--mup-link) !important;
1490}
1491
1492/* Theme toggle button */
1493.theme-toggle {
1494  float: right;
1495  display: inline-flex;
1496  align-items: center;
1497  justify-content: center;
1498  gap: 7px;
1499  min-height: 44px;
1500  padding: 8px 14px;
1501  margin: 3px 8px;
1502  border: 1px solid var(--mup-border);
1503  border-radius: 999px;
1504  background: var(--mup-surface-soft);
1505  color: var(--mup-text);
1506  font: inherit;
1507  font-size: 14px;
1508  font-weight: 600;
1509  cursor: pointer;
1510}
1511
1512.theme-toggle:hover {
1513  border-color: var(--mup-link);
1514  color: var(--mup-link);
1515}
1516
1517.theme-toggle:focus-visible {
1518  outline: 3px solid rgba(0, 120, 212, 0.35);
1519  outline-offset: 2px;
1520}
1521
1522.theme-toggle-icon {
1523  font-size: 17px;
1524  line-height: 1;
1525}
1526
1527/* Prevent Blogger backgrounds from remaining white in dark mode */
1528html[data-theme='dark'] .body-fauxcolumn-outer,
1529html[data-theme='dark'] .content-fauxcolumn-outer,
1530html[data-theme='dark'] .main-fauxborder-left,
1531html[data-theme='dark'] .content-fauxborder-left,
1532html[data-theme='dark'] .footer-fauxborder-left {
1533  background-color: var(--mup-bg) !important;
1534  background-image: none !important;
1535}
1536
1537@media screen and (max-width: 700px) {
1538  .theme-toggle {
1539    float: none;
1540    width: calc(100% - 16px);
1541    margin: 8px;
1542  }
1543}
1544
1545/* ==========================================================
1546   MUPPITY FINAL NAVIGATION AND CTA FIXES
1547   ========================================================== */
1548
1549/* Keep the Read more call-to-action readable in both themes. */
1550.jump-link a,
1551.jump-link a:link,
1552.jump-link a:visited,
1553.post-body .jump-link a,
1554.post-body .jump-link a:link,
1555.post-body .jump-link a:visited {
1556  color: #ffffff !important;
1557  background: var(--mup-brand) !important;
1558}
1559
1560.jump-link a:hover,
1561.jump-link a:focus-visible,
1562.post-body .jump-link a:hover,
1563.post-body .jump-link a:focus-visible {
1564  color: #ffffff !important;
1565  background: var(--mup-brand-strong) !important;
1566  text-decoration: none !important;
1567}
1568
1569/* Mobile uses the same theme, but with a two-row navigation layout. */
1570@media screen and (max-width: 700px) {
1571  .tabs-outer {
1572    position: static !important;
1573    top: auto !important;
1574  }
1575
1576  .topnav {
1577    display: grid !important;
1578    grid-template-columns: repeat(3, minmax(0, 1fr));
1579    gap: 6px !important;
1580    width: 100% !important;
1581    padding: 7px !important;
1582    overflow: visible !important;
1583  }
1584
1585  .topnav a {
1586    display: flex !important;
1587    width: 100% !important;
1588    min-width: 0 !important;
1589    justify-content: center !important;
1590    padding: 10px 6px !important;
1591    font-size: 13px !important;
1592    white-space: nowrap;
1593  }
1594
1595  .theme-toggle {
1596    grid-column: 1 / -1;
1597    float: none !important;
1598    width: 100% !important;
1599    min-width: 0 !important;
1600    margin: 0 !important;
1601    min-height: 42px;
1602  }
1603}
1604      
1605      
1606    </style>
1607<!--Cl0 Beginning custom script for readmore-->
1608<script type='text/javascript'>
1609var summaryConf = {
1610showImage: true,
1611imgFloat: 'left',
1612imgWidth: 120,
1613imgHeight: 120,
1614defaultThumb: 'https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdtnhrqoiKx5CanYOV-y-rRx8bgBVGQ0AhVbs7dU9SVSxB0iB2oKzBogkuBB9j2jm-PUjm0-gLvN1qHGX-K_rFposXR5gnCKSXeRehYOQplKU_QH3I1mYQ8CIHh1KxKsBROliv2PGt2ZE/s1600/thumb.png',
1615words: 100,
1616wordsNoImg: 120,
1617skip: 0,
1618showHome: true,
1619showLabel: true
1620};
1621</script>
1621
1622<!--Cl0 End of custom script for readmore -->
1623<link href='https://www.blogger.com/dyncss/9088164836799777632/authorization.css?zx=99c8eed3-d482-4ca8-ba67-0bfcbbcc3311' media='none' onload='if(media!=&#39;all&#39;)media=&#39;all&#39;' rel='stylesheet'/><noscript><link href='https://www.blogger.com/dyncss/9088164836799777632/authorization.css?zx=99c8eed3-d482-4ca8-ba67-0bfcbbcc3311' rel='stylesheet'/></noscript>
1624<meta name='google-adsense-platform-account' content='ca-host-pub-1556223355139109'/>
1625<meta name='google-adsense-platform-domain' content='blogspot.com'/>
1626
1627<link rel="stylesheet" href="https://fonts.googleapis.com/css2?display=swap&family=Nanum+Gothic"></head>
1628<body class='loading'>
1629<div class='navbar no-items section' id='navbar' name='Barra de navegación'>
1630</div>
1631<div itemscope='itemscope' itemtype='http://schema.org/Blog' style='display: none;'>
1632<meta content='Muppity -  Cloud Data Architecture ' itemprop='name'/>
1633<meta content='SQL Server' itemprop='description'/>
1634</div>
1635<div class='body-fauxcolumns'>
1636<div class='fauxcolumn-outer body-fauxcolumn-outer'>
1637<div class='cap-top'>
1638<div class='cap-left'></div>
1639<div class='cap-right'></div>
1640</div>
1641<div class='fauxborder-left'>
1642<div class='fauxborder-right'></div>
1643<div class='fauxcolumn-inner'>
1644</div>
1645</div>
1646<div class='cap-bottom'>
1647<div class='cap-left'></div>
1648<div class='cap-right'></div>
1649</div>
1650</div>
1651</div>
1652<div class='content'>
1653<div class='content-fauxcolumns'>
1654<div class='fauxcolumn-outer content-fauxcolumn-outer'>
1655<div class='cap-top'>
1656<div class='cap-left'></div>
1657<div class='cap-right'></div>
1658</div>
1659<div class='fauxborder-left'>
1660<div class='fauxborder-right'></div>
1661<div class='fauxcolumn-inner'>
1662</div>
1663</div>
1664<div class='cap-bottom'>
1665<div class='cap-left'></div>
1666<div class='cap-right'></div>
1667</div>
1668</div>
1669</div>
1670<div class='content-outer'>
1671<div class='content-cap-top cap-top'>
1672<div class='cap-left'></div>
1673<div class='cap-right'></div>
1674</div>
1675<div class='fauxborder-left content-fauxborder-left'>
1676<div class='fauxborder-right content-fauxborder-right'></div>
1677<div class='content-inner'>
1678<header>
1679<div class='header-outer'>
1680<div class='header-cap-top cap-top'>
1681<div class='cap-left'></div>
1682<div class='cap-right'></div>
1683</div>
1684<div class='fauxborder-left header-fauxborder-left'>
1685<div class='fauxborder-right header-fauxborder-right'></div>
1686<div class='region-inner header-inner'>
1687<div class='header section' id='header' name='Cabecera'><div class='widget Header' data-version='1' id='Header1'>
1688<div id='header-inner'>
1689<a href='https://www.muppity.net/' style='display: block'>
1690<img alt='Muppity -  Cloud Data Architecture ' height='286px; ' id='Header1_headerimg' src='https://blogger.googleusercontent.com/img/a/AVvXsEg3qHsmlOGzJqCz_BikAm-juhkxg4TjaTx1y2FV_Geo8N8W7ghMU6SHOIks2aTSQx1yIxf6WiTD9VYh0jq-o6CxfuLU496GdmXqhIj--M_YnLS60wcPEJ91_mcyBRNRjgadL3aNT8LAcDmilIWIJ5QvsAWOpEI-SLxkBHExtiKmV2mZAu91298uMSMF4g=s752' style='display: block' width='752px; '/>
1691</a>
1692</div>
1693</div></div>
1694</div>
1695</div>
1696<div class='header-cap-bottom cap-bottom'>
1697<div class='cap-left'></div>
1698<div class='cap-right'></div>
1699</div>
1700</div>
1701</header>
1702<div class='tabs-outer'>
1703<div class='tabs-cap-top cap-top'>
1704<div class='cap-left'></div>
1705<div class='cap-right'></div>
1706</div>
1707<div class='fauxborder-left tabs-fauxborder-left'>
1708<div class='fauxborder-right tabs-fauxborder-right'></div>
1709<div class='region-inner tabs-inner'>
1710<div class='tabs section' id='crosscol' name='Multicolumnas'><div class='widget HTML' data-version='1' id='HTML5'>
1711<div class='widget-content'>
1712<div class="topnav">
1713  <a class="active" href="/">Home</a>
1714  <a href="/p/blog-page.html">Presentations</a>
1715  <a href="/p/about.html">About</a>
1716
1717  <button
1718    aria-label="Switch between light and dark mode"
1719    class="theme-toggle"
1720    id="theme-toggle"
1721    type="button">
1722    <span aria-hidden="true" class="theme-toggle-icon">🌙</span>
1723    <span class="theme-toggle-label">Dark mode</span>
1724  
1725</button
1726></div>
1727</div>
1728<div class='clear'></div>
1729</div></div>
1730<div class='tabs no-items section' id='crosscol-overflow' name='Cross-Column 2'></div>
1731</div>
1732</div>
1733<div class='tabs-cap-bottom cap-bottom'>
1734<div class='cap-left'></div>
1735<div class='cap-right'></div>
1736</div>
1737</div>
1738<div class='main-outer'>
1739<div class='main-cap-top cap-top'>
1740<div class='cap-left'></div>
1741<div class='cap-right'></div>
1742</div>
1743<div class='fauxborder-left main-fauxborder-left'>
1744<div class='fauxborder-right main-fauxborder-right'></div>
1745<div class='region-inner main-inner'>
1746<div class='columns fauxcolumns'>
1747<div class='fauxcolumn-outer fauxcolumn-center-outer'>
1748<div class='cap-top'>
1749<div class='cap-left'></div>
1750<div class='cap-right'></div>
1751</div>
1752<div class='fauxborder-left'>
1753<div class='fauxborder-right'></div>
1754<div class='fauxcolumn-inner'>
1755</div>
1756</div>
1757<div class='cap-bottom'>
1758<div class='cap-left'></div>
1759<div class='cap-right'></div>
1760</div>
1761</div>
1762<div class='fauxcolumn-outer fauxcolumn-left-outer'>
1763<div class='cap-top'>
1764<div class='cap-left'></div>
1765<div class='cap-right'></div>
1766</div>
1767<div class='fauxborder-left'>
1768<div class='fauxborder-right'></div>
1769<div class='fauxcolumn-inner'>
1770</div>
1771</div>
1772<div class='cap-bottom'>
1773<div class='cap-left'></div>
1774<div class='cap-right'></div>
1775</div>
1776</div>
1777<div class='fauxcolumn-outer fauxcolumn-right-outer'>
1778<div class='cap-top'>
1779<div class='cap-left'></div>
1780<div class='cap-right'></div>
1781</div>
1782<div class='fauxborder-left'>
1783<div class='fauxborder-right'></div>
1784<div class='fauxcolumn-inner'>
1785</div>
1786</div>
1787<div class='cap-bottom'>
1788<div class='cap-left'></div>
1789<div class='cap-right'></div>
1790</div>
1791</div>
1792<!-- corrects IE6 width calculation -->
1793<div class='columns-inner'>
1794<div class='column-center-outer'>
1795<div class='column-center-inner'>
1796<div class='main section' id='main' name='Principal'><div class='widget Blog' data-version='1' id='Blog1'>
1797<div class='blog-posts hfeed'>
1798
1799          <div class="date-outer">
1800        
1801<h2 class='date-header'><span>jueves, 20 de agosto de 2026</span></h2>
1802
1803          <div class="date-posts">
1804        
1805<div class='post-outer'>
1806<div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
1807<meta content='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgoMxsxl3ARPxK4-kZOIpmWEkF0TgwY4dftVqZoNS9fPm5t5YRMeUqIm6XpbmxmE87mVvx
180771YzZMkbhSttwwX-HuWNjWMeb5vvYOiXnbijEbzvYZudZ0BPjtNKujjcL4u6WaHpw-IaJPWKQSPLxyuqqhPvElBRWHg9AqncLhpHI3rgOZd6vYrXLtGjNHFqf/s320/1.jpg' itemprop='image_url'/>
1808<meta content='9088164836799777632' itemprop='blogId'/>
1809<meta content='2529063374741370550' itemprop='postId'/>
1810<a name='2529063374741370550'></a>
1811<h3 class='post-title entry-title' itemprop='name'>
1812<a href='https://www.muppity.net/2026/08/use-azure-dev-ops-mcp-in-vs-code.html'>Use Azure Dev Ops MCP in VS Code</a>
1813</h3>
1814<div class='post-header'>
1815<div class='post-header-line-1'></div>
1816</div>
1817<div class='post-body entry-content' id='post-body-2529063374741370550' itemprop='articleBody'>
1818h1 id=&quot;use-azure-devops-mcp-to-manage-your-project&quot;&gt;Use Azure DevOps MCP to manage your project
1819<h2 id="items">Items</h2>
1820<ul>
1821<li><a href="#use-azure-devops-mcp-to-manage-your-project">Use Azure DevOps MCP to manage your project</a><ul>
1822<li><a href="#items">Items</a></li>
1823<li><a href="#requirements">Requirements</a></li>
1824<li><a href="#install-the-azure-devops-mcp-extension-from-the-vs-code-marketplace">Install the Azure DevOps MCP extension from the VS Code Marketplace.</a></li>
1825<li><a href="#configure-the-azure-devops-mcp-extension">Configure the Azure DevOps MCP extension</a></li>
1826</ul>
1827</li>
1828</ul>
1829<h2 id="requirements">Requirements</h2>
1830<ul>
1831<li>Install VS Code or VS Code Insiders.</li>
1832<li>Install Node.js 20 or later.</li>
1833<li>Open your project in VS Code.</li>
1834  </ul>
1835<div style='clear: both;'></div>
1836</div>
1837<div class='jump-link'>
1838<a href='https://www.muppity.net/2026/08/use-azure-dev-ops-mcp-in-vs-code.html#more' title='Use Azure Dev Ops MCP in VS Code'>Continue Reading</a>
1839</div>
1840<div class='post-footer'>
1841<div class='post-footer-line post-footer-line-1'>
1842<span class='post-author vcard'>
1843Publicado por
1844<span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
1845<meta content='https://www.blogger.com/profile/16222409298408561391' itemprop='url'/>
1846<a class='g-profile' href='https://www.blogger.com/profile/16222409298408561391' rel='author' title='author profile'>
1847<span itemprop='name'>Carlos Lopez</span>
1848</a>
1849</span>
1850</span>
1851<span class='post-timestamp'>
1852en
1853<meta content='http://www.muppity.net/2026/08/use-azure-dev-ops-mcp-in-vs-code.html' itemprop='url'/>
1854<a class='timestamp-link' href='https://www.muppity.net/2026/08/use-azure-dev-ops-mcp-in-vs-code.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2026-08-20T04:19:00-07:00'>4:19</abbr></a>
1855</span>
1856<span class='reaction-buttons'>
1857</span>
1858<span class='post-comment-link'>
1859<a class='comment-link' href='https://www.muppity.net/2026/08/use-azure-dev-ops-mcp-in-vs-code.html#comment-form' onclick=''>
1860No hay comentarios:
1861  </a>
1862</span>
1863<span class='post-icons'>
1864<span class='item-control blog-admin pid-235982407'>
1865<a href='https://www.blogger.com/post-edit.g?blogID=9088164836799777632&postID=2529063374741370550&from=pencil' title='Editar entrada'>
1866<img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/>
1867</a>
1868</span>
1869</span>
1870<div class='post-share-buttons goog-inline-block'>
1871<a class='goog-inline-block share-button sb-email' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=2529063374741370550&target=email' target='_blank' title='Enviar por correo electrónico'><span class='share-button-link-text'>Enviar por correo electrónico</span></a><a class='goog-inline-block share-button sb-blog' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=2529063374741370550&target=blog' onclick='window.open(this.href, "_blank", "height=270,width=475"); return false;' target='_blank' title='Escribe un blog'><span class='share-button-link-text'>Escribe un blog</span></a><a class='goog-inline-block share-button sb-twitter' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=2529063374741370550&target=twitter' target='_blank' title='Compartir en X'><span class='share-button-link-text'>Compartir en X</span></a><a class='goog-inline-block share-button sb-facebook' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=2529063374741370550&target=facebook' onclick='window.open(this.href, "_blank", "height=430,width=640"); return false;' target='_blank' title='Compartir con Facebook'><span class='share-button-link-text'>Compartir con Facebook</span></a><a class='goog-inline-block share-button sb-pinterest' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=2529063374741370550&target=pinterest' target='_blank' title='Compartir en Pinterest'><span class='share-button-link-text'>Compartir en Pinterest</span></a>
1872</div>
1873</div>
1874<div class='post-footer-line post-footer-line-2'>
1875<span class='post-labels'>
1876</span>
1877</div>
1878<div class='post-footer-line post-footer-line-3'>
1879<span class='post-location'>
1880</span>
1881</div>
1882</div>
1883</div>
1884</div>
1885
1886          </div></div>
1887        
1888
1889          <div class="date-outer">
1890        
1891<h2 class='date-header'><span>sábado, 3 de junio de 2023</span></h2>
1892
1893          <div class="date-posts">
1894        
1895<div class='post-outer'>
1896<div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
1897<meta content='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinoBRwH6UB8GxIu3tPNh_zgl2PK0kSrqk-gGgqDQ9zQKDFmY5Z__AUVn9RNKOCwEh3EwX0XOeaUeddMfTnhWHZfCmTVWkg2G3Q1ak31ueJ9ZwV5vmelGST6Cl5njFKV2qCIzZ52dqnPIpq0mhPQ-KKC_PvhkQSAKab5-KSVVcjekMMqkc-RHjeWD7Fzg/s1600/sqlservers.png' itemprop='image_url'/>
1898<meta content='9088164836799777632' itemprop='blogId'/>
1899<meta content='5559786616689234088' itemprop='postId'/>
1900<a name='5559786616689234088'></a>
1901<h3 class='post-title entry-title' itemprop='name'>
1902<a href='https://www.muppity.net/2023/06/configure-your-local-sandbox-database.html'>Configure your local sandbox database container from your Azure environment in Azure SQL</a>
1903</h3>
1904<div class='post-header'>
1905<div class='post-header-line-1'></div>
1906</div>
1907<div class='post-body entry-content' id='post-body-5559786616689234088' itemprop='articleBody'>
1908<!--doctype html-->
1909<html>
1910<head>
1911<title>Blog - Configure your local sandbox.md</title>
1912<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
1913
1914<style>
1915/* https://github.com/microsoft/vscode/blob/master/extensions/markdown-language-features/media/markdown.css */
1916/*---------------------------------------------------------------------------------------------
1917 *  Copyright (c) Microsoft Corporation. All rights reserved.
1918 *  Licensed under the MIT License. See License.txt in the project root for license information.
1919 *--------------------------------------------------------------------------------------------*/
1920
1921body {
1922	font-family: var(--vscode-markdown-font-family, -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "Ubuntu", "Droid Sans", sans-serif);
1923	font-size: var(--vscode-markdown-font-size, 14px);
1924	padding: 0 26px;
1925	line-height: var(--vscode-markdown-line-height, 22px);
1926	word-wrap: break-word;
1927}
1928
1929#code-csp-warning {
1930	position: fixed;
1931	top: 0;
1932	right: 0;
1933	color: white;
1934	margin: 16px;
1935	text-align: center;
1936	font-size: 12px;
1937	font-family: sans-serif;
1938	background-color:#444444;
1939	cursor: pointer;
1940	padding: 6px;
1941	box-shadow: 1px 1px 1px rgba(0,0,0,.25);
1942}
1943
1944#code-csp-warning:hover {
1945	text-decoration: none;
1946	background-color:#007acc;
1947	box-shadow: 2px 2px 2px rgba(0,0,0,.25);
1948}
1949
1950body.scrollBeyondLastLine {
1951	margin-bottom: calc(100vh - 22px);
1952}
1953
1954body.showEditorSelection .code-line {
1955	position: relative;
1956}
1957
1958body.showEditorSelection .code-active-line:before,
1959body.showEditorSelection .code-line:hover:before {
1960	content: "";
1961	display: block;
1962	position: absolute;
1963	top: 0;
1964	left: -12px;
1965	height: 100%;
1966}
1967
1968body.showEditorSelection li.code-active-line:before,
1969body.showEditorSelection li.code-line:hover:before {
1970	left: -30px;
1971}
1972
1973.vscode-light.showEditorSelection .code-active-line:before {
1974	border-left: 3px solid rgba(0, 0, 0, 0.15);
1975}
1976
1977.vscode-light.showEditorSelection .code-line:hover:before {
1978	border-left: 3px solid rgba(0, 0, 0, 0.40);
1979}
1980
1981.vscode-light.showEditorSelection .code-line .code-line:hover:before {
1982	border-left: none;
1983}
1984
1985.vscode-dark.showEditorSelection .code-active-line:before {
1986	border-left: 3px solid rgba(255, 255, 255, 0.4);
1987}
1988
1989.vscode-dark.showEditorSelection .code-line:hover:before {
1990	border-left: 3px solid rgba(255, 255, 255, 0.60);
1991}
1992
1993.vscode-dark.showEditorSelection .code-line .code-line:hover:before {
1994	border-left: none;
1995}
1996
1997.vscode-high-contrast.showEditorSelection .code-active-line:before {
1998	border-left: 3px solid rgba(255, 160, 0, 0.7);
1999}
2000
2001.vscode-high-contrast.showEditorSelection .code-line:hover:before {
2002	border-left: 3px solid rgba(255, 160, 0, 1);
2003}
2004
2005.vscode-high-contrast.showEditorSelection .code-line .code-line:hover:before {
2006	border-left: none;
2007}
2008
2009img {
2010	max-width: 100%;
2011	max-height: 100%;
2012}
2013
2014a {
2015	text-decoration: none;
2016}
2017
2018a:hover {
2019	text-decoration: underline;
2020}
2021
2022a:focus,
2023input:focus,
2024select:focus,
2025textarea:focus {
2026	outline: 1px solid -webkit-focus-ring-color;
2027	outline-offset: -1px;
2028}
2029
2030hr {
2031	border: 0;
2032	height: 2px;
2033	border-bottom: 2px solid;
2034}
2035
2036h1 {
2037	padding-bottom: 0.3em;
2038	line-height: 1.2;
2039	border-bottom-width: 1px;
2040	border-bottom-style: solid;
2041}
2042
2043h1, h2, h3 {
2044	font-weight: normal;
2045}
2046
2047table {
2048	border-collapse: collapse;
2049}
2050
2051table > thead > tr > th {
2052	text-align: left;
2053	border-bottom: 1px solid;
2054}
2055
2056table > thead > tr > th,
2057table > thead > tr > td,
2058table > tbody > tr > th,
2059table > tbody > tr > td {
2060	padding: 5px 10px;
2061}
2062
2063table > tbody > tr + tr > td {
2064	border-top: 1px solid;
2065}
2066
2067blockquote {
2068	margin: 0 7px 0 5px;
2069	padding: 0 16px 0 10px;
2070	border-left-width: 5px;
2071	border-left-style: solid;
2072}
2073
2074code {
2075	font-family: Menlo, Monaco, Consolas, "Droid Sans Mono", "Courier New", monospace, "Droid Sans Fallback";
2076	font-size: 1em;
2077	line-height: 1.357em;
2078}
2079
2080body.wordWrap pre {
2081	white-space: pre-wrap;
2082}
2083
2084pre:not(.hljs),
2085pre.hljs code > div {
2086	padding: 16px;
2087	border-radius: 3px;
2088	overflow: auto;
2089}
2090
2091pre code {
2092	color: var(--vscode-editor-foreground);
2093	tab-size: 4;
2094}
2095
2096/** Theming */
2097
2098.vscode-light pre {
2099	background-color: rgba(220, 220, 220, 0.4);
2100}
2101
2102.vscode-dark pre {
2103	background-color: rgba(10, 10, 10, 0.4);
2104}
2105
2106.vscode-high-contrast pre {
2107	background-color: rgb(0, 0, 0);
2108}
2109
2110.vscode-high-contrast h1 {
2111	border-color: rgb(0, 0, 0);
2112}
2113
2114.vscode-light table > thead > tr > th {
2115	border-color: rgba(0, 0, 0, 0.69);
2116}
2117
2118.vscode-dark table > thead > tr > th {
2119	border-color: rgba(255, 255, 255, 0.69);
2120}
2121
2122.vscode-light h1,
2123.vscode-light hr,
2124.vscode-light table > tbody > tr + tr > td {
2125	border-color: rgba(0, 0, 0, 0.18);
2126}
2127
2128.vscode-dark h1,
2129.vscode-dark hr,
2130.vscode-dark table > tbody > tr + tr > td {
2131	border-color: rgba(255, 255, 255, 0.18);
2132}
2133
2134</style>
2135
2136<style>
2137/* Tomorrow Theme */
2138/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */
2139/* Original theme - https://github.com/chriskempson/tomorrow-theme */
2140
2141/* Tomorrow Comment */
2142.hljs-comment,
2143.hljs-quote {
2144	color: #8e908c;
2145}
2146
2147/* Tomorrow Red */
2148.hljs-variable,
2149.hljs-template-variable,
2150.hljs-tag,
2151.hljs-name,
2152.hljs-selector-id,
2153.hljs-selector-class,
2154.hljs-regexp,
2155.hljs-deletion {
2156	color: #c82829;
2157}
2158
2159/* Tomorrow Orange */
2160.hljs-number,
2161.hljs-built_in,
2162.hljs-builtin-name,
2163.hljs-literal,
2164.hljs-type,
2165.hljs-params,
2166.hljs-meta,
2167.hljs-link {
2168	color: #f5871f;
2169}
2170
2171/* Tomorrow Yellow */
2172.hljs-attribute {
2173	color: #eab700;
2174}
2175
2176/* Tomorrow Green */
2177.hljs-string,
2178.hljs-symbol,
2179.hljs-bullet,
2180.hljs-addition {
2181	color: #718c00;
2182}
2183
2184/* Tomorrow Blue */
2185.hljs-title,
2186.hljs-section {
2187	color: #4271ae;
2188}
2189
2190/* Tomorrow Purple */
2191.hljs-keyword,
2192.hljs-selector-tag {
2193	color: #8959a8;
2194}
2195
2196.hljs {
2197	display: block;
2198	overflow-x: auto;
2199	color: #4d4d4c;
2200	padding: 0.5em;
2201}
2202
2203.hljs-emphasis {
2204	font-style: italic;
2205}
2206
2207.hljs-strong {
2208	font-weight: bold;
2209}
2210</style>
2211
2212<style>
2213/*
2214 * Markdown PDF CSS
2215 */
2216
2217 body {
2218	font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "Ubuntu", "Droid Sans", sans-serif, "Meiryo";
2219	padding: 0 12px;
2220}
2221
2222pre {
2223	background-color: #f8f8f8;
2224	border: 1px solid #cccccc;
2225	border-radius: 3px;
2226	overflow-x: auto;
2227	white-space: pre-wrap;
2228	overflow-wrap: break-word;
2229}
2230
2231pre:not(.hljs) {
2232	padding: 23px;
2233	line-height: 19px;
2234}
2235
2236blockquote {
2237	background: rgba(127, 127, 127, 0.1);
2238	border-color: rgba(0, 122, 204, 0.5);
2239}
2240
2241.emoji {
2242	height: 1.4em;
2243}
2244
2245code {
2246	font-size: 14px;
2247	line-height: 19px;
2248}
2249
2250/* for inline code */
2251:not(pre):not(.hljs) > code {
2252	color: #C9AE75; /* Change the old color so it seems less like an error */
2253	font-size: inherit;
2254}
2255
2256/* Page Break : use <div class="page"/> to insert page break
2257-------------------------------------------------------- */
2258.page {
2259	page-break-after: always;
2260}
2261
2262</style>
2263
2264<script src="https://unpkg.com/mermaid/dist/mermaid.min.js"></script>
2264
2265</head>
2266<body>
2267  
2267<script>
2268    mermaid.initialize({
2269      startOnLoad: true,
2270      theme: document.body.classList.contains('vscode-dark') || document.body.classList.contains('vscode-high-contrast')
2271          ? 'dark'
2272          : 'default'
2273    });
2274  </script>
2274
2275<h1 id="configure-a-local-sandbox-db-from-an-az-environment">Configure a local sandbox DB from an AZ environment</h1>
2276<p>Sometimes we need to create a sandbox environment to do some testing before we push it into our company main Dev repository, we need to do some unit testing while developing our database changes; to do so we need to replicate the testing environment to have it in our local machines. In the following note we will work with a cloud database from an Azure SQL that is in a serverless tier and will create a copy, prepare it for our container environment testing, connect it, and do some local tasks to poor in some data tests inside it.</p>
2277<p>These are the steps that will be followed to complete the task:</p>
2278  
2279</body></html></!doctype>
2280<div style='clear: both;'></div>
2281</div>
2282<div class='jump-link'>
2283<a href='https://www.muppity.net/2023/06/configure-your-local-sandbox-database.html#more' title='Configure your local sandbox database container from your Azure environment in Azure SQL'>Continue Reading</a>
2284</div>
2285<div class='post-footer'>
2286<div class='post-footer-line post-footer-line-1'>
2287<span class='post-author vcard'>
2288Publicado por
2289<span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
2290<meta content='https://www.blogger.com/profile/16222409298408561391' itemprop='url'/>
2291<a class='g-profile' href='https://www.blogger.com/profile/16222409298408561391' rel='author' title='author profile'>
2292<span itemprop='name'>Carlos Lopez</span>
2293</a>
2294</span>
2295</span>
2296<span class='post-timestamp'>
2297en
2298<meta content='http://www.muppity.net/2023/06/configure-your-local-sandbox-database.html' itemprop='url'/>
2299<a class='timestamp-link' href='https://www.muppity.net/2023/06/configure-your-local-sandbox-database.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2023-06-03T19:46:00-07:00'>19:46</abbr></a>
2300</span>
2301<span class='reaction-buttons'>
2302</span>
2303<span class='post-comment-link'>
2304<a class='comment-link' href='https://www.muppity.net/2023/06/configure-your-local-sandbox-database.html#comment-form' onclick=''>
2305No hay comentarios:
2306  </a>
2307</span>
2308<span class='post-icons'>
2309<span class='item-control blog-admin pid-235982407'>
2310<a href='https://www.blogger.com/post-edit.g?blogID=9088164836799777632&postID=5559786616689234088&from=pencil' title='Editar entrada'>
2311<img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/>
2312</a>
2313</span>
2314</span>
2315<div class='post-share-buttons goog-inline-block'>
2316<a class='goog-inline-block share-button sb-email' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5559786616689234088&target=email' target='_blank' title='Enviar por correo electrónico'><span class='share-button-link-text'>Enviar por correo electrónico</span></a><a class='goog-inline-block share-button sb-blog' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5559786616689234088&target=blog' onclick='window.open(this.href, "_blank", "height=270,width=475"); return false;' target='_blank' title='Escribe un blog'><span class='share-button-link-text'>Escribe un blog</span></a><a class='goog-inline-block share-button sb-twitter' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5559786616689234088&target=twitter' target='_blank' title='Compartir en X'><span class='share-button-link-text'>Compartir en X</span></a><a class='goog-inline-block share-button sb-facebook' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5559786616689234088&target=facebook' onclick='window.open(this.href, "_blank", "height=430,width=640"); return false;' target='_blank' title='Compartir con Facebook'><span class='share-button-link-text'>Compartir con Facebook</span></a><a class='goog-inline-block share-button sb-pinterest' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5559786616689234088&target=pinterest' target='_blank' title='Compartir en Pinterest'><span class='share-button-link-text'>Compartir en Pinterest</span></a>
2317</div>
2318</div>
2319<div class='post-footer-line post-footer-line-2'>
2320<span class='post-labels'>
2321</span>
2322</div>
2323<div class='post-footer-line post-footer-line-3'>
2324<span class='post-location'>
2325</span>
2326</div>
2327</div>
2328</div>
2329</div>
2330
2331          </div></div>
2332        
2333
2334          <div class="date-outer">
2335        
2336<h2 class='date-header'><span>domingo, 18 de diciembre de 2022</span></h2>
2337
2338          <div class="date-posts">
2339        
2340<div class='post-outer'>
2341<div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
2342<meta content='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTax2MqEWNJSCzXn_CK_mrgOWdMOiMuawEV3yyP_OK5k2gSGVe6twu7_sMbsakfDBlg8u1ArFy71N9iOBvfDMc_Bx4o94qU4KjGc_ACdXI6CY4F7ehrHCf65FulanacFH-bDnXbLssVHjBt6MzMw-0Md0aMd0OsaU2deJ9VQiuig7UuJNAzzHk-PZ5MQ/s1600/Ignite_Small.png' itemprop='image_url'/>
2343<meta content='9088164836799777632' itemprop='blogId'/>
2344<meta content='1870522642264132539' itemprop='postId'/>
2345<a name='1870522642264132539'></a>
2346<h3 class='post-title entry-title' itemprop='name'>
2347<a href='https://www.muppity.net/2022/12/outstanding-recap-news-for-azure-sql.html'>Outstanding Recap news for Azure Data Platform releases in IGNITE 2022</a>
2348</h3>
2349<div class='post-header'>
2350<div class='post-header-line-1'></div>
2351</div>
2352<div class='post-body entry-content' id='post-body-1870522642264132539' itemprop='articleBody'>
2353<div class="separator" style="clear: both;"></div><!--doctype html-->
2354<html>
2355<head>
2356<title>## Noticias sobre Ignite 2022.md</title>
2357<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
2358
2359<style>
2360/* https://github.com/microsoft/vscode/blob/master/extensions/markdown-language-features/media/markdown.css */
2361/*---------------------------------------------------------------------------------------------
2362 *  Copyright (c) Microsoft Corporation. All rights reserved.
2363 *  Licensed under the MIT License. See License.txt in the project root for license information.
2364 *--------------------------------------------------------------------------------------------*/
2365
2366body {
2367	font-family: var(--vscode-markdown-font-family, -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "Ubuntu", "Droid Sans", sans-serif);
2368	font-size: var(--vscode-markdown-font-size, 14px);
2369	padding: 0 26px;
2370	line-height: var(--vscode-markdown-line-height, 22px);
2371	word-wrap: break-word;
2372}
2373
2374#code-csp-warning {
2375	position: fixed;
2376	top: 0;
2377	right: 0;
2378	color: white;
2379	margin: 16px;
2380	text-align: center;
2381	font-size: 12px;
2382	font-family: sans-serif;
2383	background-color:#444444;
2384	cursor: pointer;
2385	padding: 6px;
2386	box-shadow: 1px 1px 1px rgba(0,0,0,.25);
2387}
2388
2389#code-csp-warning:hover {
2390	text-decoration: none;
2391	background-color:#007acc;
2392	box-shadow: 2px 2px 2px rgba(0,0,0,.25);
2393}
2394
2395body.scrollBeyondLastLine {
2396	margin-bottom: calc(100vh - 22px);
2397}
2398
2399body.showEditorSelection .code-line {
2400	position: relative;
2401}
2402
2403body.showEditorSelection .code-active-line:before,
2404body.showEditorSelection .code-line:hover:before {
2405	content: "";
2406	display: block;
2407	position: absolute;
2408	top: 0;
2409	left: -12px;
2410	height: 100%;
2411}
2412
2413body.showEditorSelection li.code-active-line:before,
2414body.showEditorSelection li.code-line:hover:before {
2415	left: -30px;
2416}
2417
2418.vscode-light.showEditorSelection .code-active-line:before {
2419	border-left: 3px solid rgba(0, 0, 0, 0.15);
2420}
2421
2422.vscode-light.showEditorSelection .code-line:hover:before {
2423	border-left: 3px solid rgba(0, 0, 0, 0.40);
2424}
2425
2426.vscode-light.showEditorSelection .code-line .code-line:hover:before {
2427	border-left: none;
2428}
2429
2430.vscode-dark.showEditorSelection .code-active-line:before {
2431	border-left: 3px solid rgba(255, 255, 255, 0.4);
2432}
2433
2434.vscode-dark.showEditorSelection .code-line:hover:before {
2435	border-left: 3px solid rgba(255, 255, 255, 0.60);
2436}
2437
2438.vscode-dark.showEditorSelection .code-line .code-line:hover:before {
2439	border-left: none;
2440}
2441
2442.vscode-high-contrast.showEditorSelection .code-active-line:before {
2443	border-left: 3px solid rgba(255, 160, 0, 0.7);
2444}
2445
2446.vscode-high-contrast.showEditorSelection .code-line:hover:before {
2447	border-left: 3px solid rgba(255, 160, 0, 1);
2448}
2449
2450.vscode-high-contrast.showEditorSelection .code-line .code-line:hover:before {
2451	border-left: none;
2452}
2453
2454img {
2455	max-width: 100%;
2456	max-height: 100%;
2457}
2458
2459a {
2460	text-decoration: none;
2461}
2462
2463a:hover {
2464	text-decoration: underline;
2465}
2466
2467a:focus,
2468input:focus,
2469select:focus,
2470textarea:focus {
2471	outline: 1px solid -webkit-focus-ring-color;
2472	outline-offset: -1px;
2473}
2474
2475hr {
2476	border: 0;
2477	height: 2px;
2478	border-bottom: 2px solid;
2479}
2480
2481h1 {
2482	padding-bottom: 0.3em;
2483	line-height: 1.2;
2484	border-bottom-width: 1px;
2485	border-bottom-style: solid;
2486}
2487
2488h1, h2, h3 {
2489	font-weight: normal;
2490}
2491
2492table {
2493	border-collapse: collapse;
2494}
2495
2496table > thead > tr > th {
2497	text-align: left;
2498	border-bottom: 1px solid;
2499}
2500
2501table > thead > tr > th,
2502table > thead > tr > td,
2503table > tbody > tr > th,
2504table > tbody > tr > td {
2505	padding: 5px 10px;
2506}
2507
2508table > tbody > tr + tr > td {
2509	border-top: 1px solid;
2510}
2511
2512blockquote {
2513	margin: 0 7px 0 5px;
2514	padding: 0 16px 0 10px;
2515	border-left-width: 5px;
2516	border-left-style: solid;
2517}
2518
2519code {
2520	font-family: Menlo, Monaco, Consolas, "Droid Sans Mono", "Courier New", monospace, "Droid Sans Fallback";
2521	font-size: 1em;
2522	line-height: 1.357em;
2523}
2524
2525body.wordWrap pre {
2526	white-space: pre-wrap;
2527}
2528
2529pre:not(.hljs),
2530pre.hljs code > div {
2531	padding: 16px;
2532	border-radius: 3px;
2533	overflow: auto;
2534}
2535
2536pre code {
2537	color: var(--vscode-editor-foreground);
2538	tab-size: 4;
2539}
2540
2541/** Theming */
2542
2543.vscode-light pre {
2544	background-color: rgba(220, 220, 220, 0.4);
2545}
2546
2547.vscode-dark pre {
2548	background-color: rgba(10, 10, 10, 0.4);
2549}
2550
2551.vscode-high-contrast pre {
2552	background-color: rgb(0, 0, 0);
2553}
2554
2555.vscode-high-contrast h1 {
2556	border-color: rgb(0, 0, 0);
2557}
2558
2559.vscode-light table > thead > tr > th {
2560	border-color: rgba(0, 0, 0, 0.69);
2561}
2562
2563.vscode-dark table > thead > tr > th {
2564	border-color: rgba(255, 255, 255, 0.69);
2565}
2566
2567.vscode-light h1,
2568.vscode-light hr,
2569.vscode-light table > tbody > tr + tr > td {
2570	border-color: rgba(0, 0, 0, 0.18);
2571}
2572
2573.vscode-dark h1,
2574.vscode-dark hr,
2575.vscode-dark table > tbody > tr + tr > td {
2576	border-color: rgba(255, 255, 255, 0.18);
2577}
2578
2579</style>
2580
2581<style>
2582/* Tomorrow Theme */
2583/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */
2584/* Original theme - https://github.com/chriskempson/tomorrow-theme */
2585
2586/* Tomorrow Comment */
2587.hljs-comment,
2588.hljs-quote {
2589	color: #8e908c;
2590}
2591
2592/* Tomorrow Red */
2593.hljs-variable,
2594.hljs-template-variable,
2595.hljs-tag,
2596.hljs-name,
2597.hljs-selector-id,
2598.hljs-selector-class,
2599.hljs-regexp,
2600.hljs-deletion {
2601	color: #c82829;
2602}
2603
2604/* Tomorrow Orange */
2605.hljs-number,
2606.hljs-built_in,
2607.hljs-builtin-name,
2608.hljs-literal,
2609.hljs-type,
2610.hljs-params,
2611.hljs-meta,
2612.hljs-link {
2613	color: #f5871f;
2614}
2615
2616/* Tomorrow Yellow */
2617.hljs-attribute {
2618	color: #eab700;
2619}
2620
2621/* Tomorrow Green */
2622.hljs-string,
2623.hljs-symbol,
2624.hljs-bullet,
2625.hljs-addition {
2626	color: #718c00;
2627}
2628
2629/* Tomorrow Blue */
2630.hljs-title,
2631.hljs-section {
2632	color: #4271ae;
2633}
2634
2635/* Tomorrow Purple */
2636.hljs-keyword,
2637.hljs-selector-tag {
2638	color: #8959a8;
2639}
2640
2641.hljs {
2642	display: block;
2643	overflow-x: auto;
2644	color: #4d4d4c;
2645	padding: 0.5em;
2646}
2647
2648.hljs-emphasis {
2649	font-style: italic;
2650}
2651
2652.hljs-strong {
2653	font-weight: bold;
2654}
2655</style>
2656
2657<style>
2658/*
2659 * Markdown PDF CSS
2660 */
2661
2662 body {
2663	font-family: -apple-system, BlinkMacSystemFont, "Segoe WPC", "Segoe UI", "Ubuntu", "Droid Sans", sans-serif, "Meiryo";
2664	padding: 0 12px;
2665}
2666
2667pre {
2668	background-color: #f8f8f8;
2669	border: 1px solid #cccccc;
2670	border-radius: 3px;
2671	overflow-x: auto;
2672	white-space: pre-wrap;
2673	overflow-wrap: break-word;
2674}
2675
2676pre:not(.hljs) {
2677	padding: 23px;
2678	line-height: 19px;
2679}
2680
2681blockquote {
2682	background: rgba(127, 127, 127, 0.1);
2683	border-color: rgba(0, 122, 204, 0.5);
2684}
2685
2686.emoji {
2687	height: 1.4em;
2688}
2689
2690code {
2691	font-size: 14px;
2692	line-height: 19px;
2693}
2694
2695/* for inline code */
2696:not(pre):not(.hljs) > code {
2697	color: #C9AE75; /* Change the old color so it seems less like an error */
2698	font-size: inherit;
2699}
2700
2701/* Page Break : use <div class="page"/> to insert page break
2702-------------------------------------------------------- */
2703.page {
2704	page-break-after: always;
2705}
2706
2707</style>
2708
2709<script src="https://unpkg.com/mermaid/dist/mermaid.min.js"></script>
2709
2710</head>
2711<body>
2712  
2712<script>
2713    mermaid.initialize({
2714      startOnLoad: true,
2715      theme: document.body.classList.contains('vscode-dark') || document.body.classList.contains('vscode-high-contrast')
2716          ? 'dark'
2717          : 'default'
2718    });
2719  </script>
2719
2720<h2 id="noticias-sobre-ignite-2022">Noticias sobre Ignite 2022</h2>
2721<p>
2722<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTax2MqEWNJSCzXn_CK_mrgOWdMOiMuawEV3yyP_OK5k2gSGVe6twu7_sMbsakfDBlg8u1ArFy71N9iOBvfDMc_Bx4o94qU4KjGc_ACdXI6CY4F7ehrHCf65FulanacFH-bDnXbLssVHjBt6MzMw-0Md0aMd0OsaU2deJ9VQiuig7UuJNAzzHk-PZ5MQ/s1600/Ignite_Small.png" style="display: block; padding: 1em 0; text-align: center; "><img alt="" border="0" data-original-height="540" data-original-width="1900" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTax2MqEWNJSCzXn_CK_mrgOWdMOiMuawEV3yyP_OK5k2gSGVe6twu7_sMbsakfDBlg8u1ArFy71N9iOBvfDMc_Bx4o94qU4KjGc_ACdXI6CY4F7ehrHCf65FulanacFH-bDnXbLssVHjBt6MzMw-0Md0aMd0OsaU2deJ9VQiuig7UuJNAzzHk-PZ5MQ/s1600/Ignite_Small.png"></a>  
2723  
2724  
2725  </p>
2726<p>El MS Ignite 2022 nos ha dejado muchas sorpresas para todas las categorias de producto, sinembargo la idea es enforcarme
2727en las noticias relevantes para la plataforma de datos con mucho que hablar sobre Azure SQL y las herramientas.
2728Vale la pena mencionar de ellas las que mas destacan y sobre todo... en español!.</p>
2729<p>Aqui vamos...</p>
2730<h1 id="sobre-la-plataforma-de-datos-azure-%F0%9F%98%80">Sobre la plataforma de datos Azure  😀</h1>
2731<h2 id="azure-cosmos-db-para-posgres">Azure Cosmos DB para Posgres</h2>
2732<p>Lo mas esperado es el hecho que ahora Azure Cosmos DB introduce a PostgreSQL con soporte en Hyperscale agregando extensión de desarrollo Citus a Microsoft. Para desarrollo como Cloud Native.</p>
2733<p><strong>Funcionalidades</strong></p>
2734<ul>
2735<li>Integración a Azure RBAC.</li>
2736<li>Archivos de 16 MB.</li>
2737<li>Integración con Azure Key Vault.</li>
2738<li>Escalabilidad multi-región y distribucion a cualquier Azure Region.</li>
2739<li>Escalabilidad elastica de almacenamiento en Azure Region.</li>
2740<li>Integación a multiples APIS dentro de Cosmos como: MongoDB, Apache Cassandra, Apache Gremlin, y Table.</li>
2741<li>Indexación automatica de los datos sin importar el modelo de datos en un ambito sin esquema.</li>
2742<li>Integración nativa con Azure Synapse Link, permitiendo reducir la complejidad sin trabajos ETL.</li>
2743</ul>
2744</body></html></!doctype>
2745<div style='clear: both;'></div>
2746</div>
2747<div class='jump-link'>
2748<a href='https://www.muppity.net/2022/12/outstanding-recap-news-for-azure-sql.html#more' title='Outstanding Recap news for Azure Data Platform releases in IGNITE 2022'>Continue Reading</a>
2749</div>
2750<div class='post-footer'>
2751<div class='post-footer-line post-footer-line-1'>
2752<span class='post-author vcard'>
2753Publicado por
2754<span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
2755<meta content='https://www.blogger.com/profile/16222409298408561391' itemprop='url'/>
2756<a class='g-profile' href='https://www.blogger.com/profile/16222409298408561391' rel='author' title='author profile'>
2757<span itemprop='name'>Carlos Lopez</span>
2758</a>
2759</span>
2760</span>
2761<span class='post-timestamp'>
2762en
2763<meta content='http://www.muppity.net/2022/12/outstanding-recap-news-for-azure-sql.html' itemprop='url'/>
2764<a class='timestamp-link' href='https://www.muppity.net/2022/12/outstanding-recap-news-for-azure-sql.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2022-12-18T14:47:00-08:00'>14:47</abbr></a>
2765</span>
2766<span class='reaction-buttons'>
2767</span>
2768<span class='post-comment-link'>
2769<a class='comment-link' href='https://www.muppity.net/2022/12/outstanding-recap-news-for-azure-sql.html#comment-form' onclick=''>
2770No hay comentarios:
2771  </a>
2772</span>
2773<span class='post-icons'>
2774<span class='item-control blog-admin pid-235982407'>
2775<a href='https://www.blogger.com/post-edit.g?blogID=9088164836799777632&postID=1870522642264132539&from=pencil' title='Editar entrada'>
2776<img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/>
2777</a>
2778</span>
2779</span>
2780<div class='post-share-buttons goog-inline-block'>
2781<a class='goog-inline-block share-button sb-email' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=1870522642264132539&target=email' target='_blank' title='Enviar por correo electrónico'><span class='share-button-link-text'>Enviar por correo electrónico</span></a><a class='goog-inline-block share-button sb-blog' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=1870522642264132539&target=blog' onclick='window.open(this.href, "_blank", "height=270,width=475"); return false;' target='_blank' title='Escribe un blog'><span class='share-button-link-text'>Escribe un blog</span></a><a class='goog-inline-block share-button sb-twitter' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=1870522642264132539&target=twitter' target='_blank' title='Compartir en X'><span class='share-button-link-text'>Compartir en X</span></a><a class='goog-inline-block share-button sb-facebook' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=1870522642264132539&target=facebook' onclick='window.open(this.href, "_blank", "height=430,width=640"); return false;' target='_blank' title='Compartir con Facebook'><span class='share-button-link-text'>Compartir con Facebook</span></a><a class='goog-inline-block share-button sb-pinterest' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=1870522642264132539&target=pinterest' target='_blank' title='Compartir en Pinterest'><span class='share-button-link-text'>Compartir en Pinterest</span></a>
2782</div>
2783</div>
2784<div class='post-footer-line post-footer-line-2'>
2785<span class='post-labels'>
2786Etiquetas:
2787<a href='https://www.muppity.net/search/label/MSBuild%202022' rel='tag'>MSBuild 2022</a>
2788</span>
2789</div>
2790<div class='post-footer-line post-footer-line-3'>
2791<span class='post-location'>
2792</span>
2793</div>
2794</div>
2795</div>
2796</div>
2797
2798          </div></div>
2799        
2800
2801          <div class="date-outer">
2802        
2803<h2 class='date-header'><span>viernes, 26 de marzo de 2021</span></h2>
2804
2805          <div class="date-posts">
2806        
2807<div class='post-outer'>
2808<div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
2809<meta content='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9Rhko9KspFKc3ATwRvLIizrhOt0ximO0spkmI0J0-83Hv7S4vHrAKX4FsWSDDrTBCp8FawzSsesLNyk4i4BrSHrWQWXQe5xm3F3cLFsnBbehpApbK8EySBsCxXnCGyNKB0OhW51nlVHo4/s200/wsl.jpg' itemprop='image_url'/>
2810<meta content='9088164836799777632' itemprop='blogId'/>
2811<meta content='5597550720172959957' itemprop='postId'/>
2812<a name='5597550720172959957'></a>
2813<h3 class='post-title entry-title' itemprop='name'>
2814<a href='https://www.muppity.net/2021/03/how-to-create-sql-server-in-containers.html'>How to Create a SQL Server in Containers with WSL2</a>
2815</h3>
2816<div class='post-header'>
2817<div class='post-header-line-1'></div>
2818</div>
2819<div class='post-body entry-content' id='post-body-5597550720172959957' itemprop='articleBody'>
2820<!--doctype html-->
2821<html>
2822
2823<head>
2824  <meta charset="utf-8">
2825  <meta name="viewport" content="width=device-width, initial-scale=1.0">
2826  <title>Welcome file</title>
2827  <link rel="stylesheet" href="https://stackedit.io/style.css">
2828</head>
2829
2830<body class="stackedit">
2831  <div class="stackedit__html"><h1 id="how-to-configure-wsl-for-containers">
2831How to Configure WSL for Containers</h1>
2832    
2833 <img data-original-height="640" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9Rhko9KspFKc3ATwRvLIizrhOt0ximO0spkmI0J0-83Hv7S4vHrAKX4FsWSDDrTBCp8FawzSsesLNyk4i4BrSHrWQWXQe5xm3F3cLFsnBbehpApbK8EySBsCxXnCGyNKB0OhW51nlVHo4/s200/wsl.jpg" width="200">
2834  
2835<p>The Windows Subsystem Linux version 2 feature allows the integration of different Linux distributions to be managed in Windows through the hyper-v hypervisor. The WSL2 difference than just being merely virtual machines, this feature allows a <em><strong>real integration</strong></em> with Windows host O.S. by accesing the resources, accessing Windows API&#8217;s, allowing executing bash shells, and having full compatilibity with Windows O.S. kernel.</p>
2836<h2 id="requirements-for-wsl">Requirements for WSL</h2>
2837<ul>
2838<li>
2839<p>64 Bit Windows 10.04 O.S.</p>
2840</li>
2841<li>
2842<p>VT-X Bios Enabled</p>
2843</li>
2844<li>
2845<p>Virtual Machine Platform feature enabled</p>
2846</li>
2847<li>
2848<p>(Additionally) Docker Requirements:</p>
2849</li>
2850<li>
2851<p>SLT or Second Level Adress Translation</p>
2852</li>
2853</ul>
2854    
2855</div></body></html></!doctype>
2856<div style='clear: both;'></div>
2857</div>
2858<div class='jump-link'>
2859<a href='https://www.muppity.net/2021/03/how-to-create-sql-server-in-containers.html#more' title='How to Create a SQL Server in Containers with WSL2'>Continue Reading</a>
2860</div>
2861<div class='post-footer'>
2862<div class='post-footer-line post-footer-line-1'>
2863<span class='post-author vcard'>
2864Publicado por
2865<span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
2866<meta content='https://www.blogger.com/profile/16222409298408561391' itemprop='url'/>
2867<a class='g-profile' href='https://www.blogger.com/profile/16222409298408561391' rel='author' title='author profile'>
2868<span itemprop='name'>Carlos Lopez</span>
2869</a>
2870</span>
2871</span>
2872<span class='post-timestamp'>
2873en
2874<meta content='http://www.muppity.net/2021/03/how-to-create-sql-server-in-containers.html' itemprop='url'/>
2875<a class='timestamp-link' href='https://www.muppity.net/2021/03/how-to-create-sql-server-in-containers.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2021-03-26T10:43:00-07:00'>10:43</abbr></a>
2876</span>
2877<span class='reaction-buttons'>
2878</span>
2879<span class='post-comment-link'>
2880<a class='comment-link' href='https://www.muppity.net/2021/03/how-to-create-sql-server-in-containers.html#comment-form' onclick=''>
2881No hay comentarios:
2882  </a>
2883</span>
2884<span class='post-icons'>
2885<span class='item-control blog-admin pid-235982407'>
2886<a href='https://www.blogger.com/post-edit.g?blogID=9088164836799777632&postID=5597550720172959957&from=pencil' title='Editar entrada'>
2887<img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/>
2888</a>
2889</span>
2890</span>
2891<div class='post-share-buttons goog-inline-block'>
2892<a class='goog-inline-block share-button sb-email' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5597550720172959957&target=email' target='_blank' title='Enviar por correo electrónico'><span class='share-button-link-text'>Enviar por correo electrónico</span></a><a class='goog-inline-block share-button sb-blog' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5597550720172959957&target=blog' onclick='window.open(this.href, "_blank", "height=270,width=475"); return false;' target='_blank' title='Escribe un blog'><span class='share-button-link-text'>Escribe un blog</span></a><a class='goog-inline-block share-button sb-twitter' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5597550720172959957&target=twitter' target='_blank' title='Compartir en X'><span class='share-button-link-text'>Compartir en X</span></a><a class='goog-inline-block share-button sb-facebook' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5597550720172959957&target=facebook' onclick='window.open(this.href, "_blank", "height=430,width=640"); return false;' target='_blank' title='Compartir con Facebook'><span class='share-button-link-text'>Compartir con Facebook</span></a><a class='goog-inline-block share-button sb-pinterest' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5597550720172959957&target=pinterest' target='_blank' title='Compartir en Pinterest'><span class='share-button-link-text'>Compartir en Pinterest</span></a>
2893</div>
2894</div>
2895<div class='post-footer-line post-footer-line-2'>
2896<span class='post-labels'>
2897</span>
2898</div>
2899<div class='post-footer-line post-footer-line-3'>
2900<span class='post-location'>
2901</span>
2902</div>
2903</div>
2904</div>
2905</div>
2906
2907          </div></div>
2908        
2909
2910          <div class="date-outer">
2911        
2912<h2 class='date-header'><span>viernes, 5 de marzo de 2021</span></h2>
2913
2914          <div class="date-posts">
2915        
2916<div class='post-outer'>
2917<div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
2918<meta content='https://developer.nvidia.com/sites/all/themes/devzone_new/nvidia-logo.svg' itemprop='image_url'/>
2919<meta content='9088164836799777632' itemprop='blogId'/>
2920<meta content='3763191364872089320' itemprop='postId'/>
2921<a name='3763191364872089320'></a>
2922<h3 class='post-title entry-title' itemprop='name'>
2923<a href='https://www.muppity.net/2021/03/configure-nvidia-cuda-with-wsl2-for-sql.html'>Configure Nvidia CUDA with WSL2 for SQL Server in Containers</a>
2924</h3>
2925<div class='post-header'>
2926<div class='post-header-line-1'></div>
2927</div>
2928<div class='post-body entry-content' id='post-body-3763191364872089320' itemprop='articleBody'>
2929<!--doctype html-->
2930<html>
2931
2932<head>
2933  <meta charset="utf-8">
2934  <meta name="viewport" content="width=device-width, initial-scale=1.0">
2935  <title>Welcome file</title>
2936  <link rel="stylesheet" href="https://stackedit.io/style.css">
2937</head>
2938
2939<body class="stackedit">
2940  <div class="stackedit__html"><h1 id="using-nvidia-cuda-toolkit-for-sql-server-in-containers-in-wsl2.">Using NVidia CUDA Toolkit for SQL Server in Containers in WSL2.</h1>
2941   
2942    
2943    <img src="https://developer.nvidia.com/sites/all/themes/devzone_new/nvidia-logo.svg">
2944    
2945     <img data-original-height="640" data-original-width="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9Rhko9KspFKc3ATwRvLIizrhOt0ximO0spkmI0J0-83Hv7S4vHrAKX4FsWSDDrTBCp8FawzSsesLNyk4i4BrSHrWQWXQe5xm3F3cLFsnBbehpApbK8EySBsCxXnCGyNKB0OhW51nlVHo4/s200/wsl.jpg" width="200">
2946
2947    
2948    
2949<p>NVidia has developed the CUDA Toolkit library designed for developers, aimed to efficiently use the hardware resources. The CUDA Toolkit provides a different set of tools as well as programming guidelines for the different programming languages for the interoperability with the hardware.</p>
2950<p>Now NVida has released in the <strong>v11.2.1</strong> a surprise that is a <strong>CUDA on WSL</strong>.</p>
2951 
2952<p>This feature is designed for the <strong>WSL Images</strong> to use of the <strong>GPU&#8217;s</strong> resource.</p>
2953<p>This is a great impowering for <strong>NVIDIA users</strong> to utilize their resources in their <strong>Windows Subsystem Linux</strong> boxes.</p>
2954<h2 id="setting-up-the-cuda-toolkit">Setting up the CUDA Toolkit</h2>
2955<p><strong>First</strong> we will Open the Windows Terminal and get inside the WSL default box that we require to configure.</p>
2956<p><strong>NOTE: This example is configured for distributions based on Apt.</strong></p>
2957<p>Because the purpose for this excersise is to configure SQL Server in Containers using WSL2, then the distro to use here is Ubuntu, so that the Apt will work here.</p>
2958 
2959<p><strong>Secondly</strong> will configure the CUDA repository keys and update the list to re</p>
2960 </div></body></html></!doctype>
2961<div style='clear: both;'></div>
2962</div>
2963<div class='jump-link'>
2964<a href='https://www.muppity.net/2021/03/configure-nvidia-cuda-with-wsl2-for-sql.html#more' title='Configure Nvidia CUDA with WSL2 for SQL Server in Containers'>Continue Reading</a>
2965</div>
2966<div class='post-footer'>
2967<div class='post-footer-line post-footer-line-1'>
2968<span class='post-author vcard'>
2969Publicado por
2970<span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
2971<meta content='https://www.blogger.com/profile/16222409298408561391' itemprop='url'/>
2972<a class='g-profile' href='https://www.blogger.com/profile/16222409298408561391' rel='author' title='author profile'>
2973<span itemprop='name'>Carlos Lopez</span>
2974</a>
2975</span>
2976</span>
2977<span class='post-timestamp'>
2978en
2979<meta content='http://www.muppity.net/2021/03/configure-nvidia-cuda-with-wsl2-for-sql.html' itemprop='url'/>
2980<a class='timestamp-link' href='https://www.muppity.net/2021/03/configure-nvidia-cuda-with-wsl2-for-sql.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2021-03-05T20:02:00-08:00'>20:02</abbr></a>
2981</span>
2982<span class='reaction-buttons'>
2983</span>
2984<span class='post-comment-link'>
2985<a class='comment-link' href='https://www.muppity.net/2021/03/configure-nvidia-cuda-with-wsl2-for-sql.html#comment-form' onclick=''>
2986No hay comentarios:
2987  </a>
2988</span>
2989<span class='post-icons'>
2990<span class='item-control blog-admin pid-235982407'>
2991<a href='https://www.blogger.com/post-edit.g?blogID=9088164836799777632&postID=3763191364872089320&from=pencil' title='Editar entrada'>
2992<img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/>
2993</a>
2994</span>
2995</span>
2996<div class='post-share-buttons goog-inline-block'>
2997<a class='goog-inline-block share-button sb-email' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3763191364872089320&target=email' target='_blank' title='Enviar por correo electrónico'><span class='share-button-link-text'>Enviar por correo electrónico</span></a><a class='goog-inline-block share-button sb-blog' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3763191364872089320&target=blog' onclick='window.open(this.href, "_blank", "height=270,width=475"); return false;' target='_blank' title='Escribe un blog'><span class='share-button-link-text'>Escribe un blog</span></a><a class='goog-inline-block share-button sb-twitter' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3763191364872089320&target=twitter' target='_blank' title='Compartir en X'><span class='share-button-link-text'>Compartir en X</span></a><a class='goog-inline-block share-button sb-facebook' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3763191364872089320&target=facebook' onclick='window.open(this.href, "_blank", "height=430,width=640"); return false;' target='_blank' title='Compartir con Facebook'><span class='share-button-link-text'>Compartir con Facebook</span></a><a class='goog-inline-block share-button sb-pinterest' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3763191364872089320&target=pinterest' target='_blank' title='Compartir en Pinterest'><span class='share-button-link-text'>Compartir en Pinterest</span></a>
2998</div>
2999</div>
3000<div class='post-footer-line post-footer-line-2'>
3001<span class='post-labels'>
3002</span>
3003</div>
3004<div class='post-footer-line post-footer-line-3'>
3005<span class='post-location'>
3006</span>
3007</div>
3008</div>
3009</div>
3010</div>
3011
3012          </div></div>
3013        
3014
3015          <div class="date-outer">
3016        
3017<h2 class='date-header'><span>jueves, 26 de noviembre de 2020</span></h2>
3018
3019          <div class="date-posts">
3020        
3021<div class='post-outer'>
3022<div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
3023<meta content='https://i.ytimg.com/vi/ZWSvTQm8Jcw/hqdefault.jpg' itemprop='image_url'/>
3024<meta content='9088164836799777632' itemprop='blogId'/>
3025<meta content='5177837276837323977' itemprop='postId'/>
3026<a name='5177837276837323977'></a>
3027<h3 class='post-title entry-title' itemprop='name'>
3028<a href='https://www.muppity.net/2020/11/speaking-in-vgs-about-wsl2-for-database.html'>Speaking in VGs about WSL2 for Database Development Environment</a>
3029</h3>
3030<div class='post-header'>
3031<div class='post-header-line-1'></div>
3032</div>
3033<div class='post-body entry-content' id='post-body-5177837276837323977' itemprop='articleBody'>
3034<p><span style="font-family: verdana; font-size: medium;">
3035In this 2020 I&#39;ve had the oportunity to talk about WSL2 and its uses for
3036databases (Specially for SQL Server). It is always a good chance to contribute
3037to the community, and in that search you always want to explain as many tools
3038and technics as you possibly can. I&#39;ve encounter myself in this dilema, while
3039trying to explain step by step the use of Containers for SQL server and the
3040visual tools around it.
3041
3042</span></p>
3043<a name="more"></a>
3044<p><span style="font-family: verdana; font-size: medium;">
3045In this effort trying to show the use of Visual Studio Code and Azure Data
3046Studio as primary tools around the use of Containers for SQL Server for some
3047time now. This year I&#39;ve tried to incorporate the use of Windows Subsystem Linux
3048(WSL2) as a real interface to use Containers instead of the traditional Docker
3049Distros (Boot2Docker and MobyLinux).
3050Using WSL2 interacting in both worlds Linux and windows as a host OS, creating scenarios for data use in stateful solutions to have data persistance for containerized pactices in your coding.</span></p>  
3051
3052<div style='clear: both;'></div>
3053</div>
3054<div class='jump-link'>
3055<a href='https://www.muppity.net/2020/11/speaking-in-vgs-about-wsl2-for-database.html#more' title='Speaking in VGs about WSL2 for Database Development Environment'>Continue Reading</a>
3056</div>
3057<div class='post-footer'>
3058<div class='post-footer-line post-footer-line-1'>
3059<span class='post-author vcard'>
3060Publicado por
3061<span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
3062<meta content='https://www.blogger.com/profile/16222409298408561391' itemprop='url'/>
3063<a class='g-profile' href='https://www.blogger.com/profile/16222409298408561391' rel='author' title='author profile'>
3064<span itemprop='name'>Carlos Lopez</span>
3065</a>
3066</span>
3067</span>
3068<span class='post-timestamp'>
3069en
3070<meta content='http://www.muppity.net/2020/11/speaking-in-vgs-about-wsl2-for-database.html' itemprop='url'/>
3071<a class='timestamp-link' href='https://www.muppity.net/2020/11/speaking-in-vgs-about-wsl2-for-database.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2020-11-26T18:24:00-08:00'>18:24</abbr></a>
3072</span>
3073<span class='reaction-buttons'>
3074</span>
3075<span class='post-comment-link'>
3076<a class='comment-link' href='https://www.muppity.net/2020/11/speaking-in-vgs-about-wsl2-for-database.html#comment-form' onclick=''>
30773 comentarios:
3078  </a>
3079</span>
3080<span class='post-icons'>
3081<span class='item-control blog-admin pid-235982407'>
3082<a href='https://www.blogger.com/post-edit.g?blogID=9088164836799777632&postID=5177837276837323977&from=pencil' title='Editar entrada'>
3083<img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/>
3084</a>
3085</span>
3086</span>
3087<div class='post-share-buttons goog-inline-block'>
3088<a class='goog-inline-block share-button sb-email' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5177837276837323977&target=email' target='_blank' title='Enviar por correo electrónico'><span class='share-button-link-text'>Enviar por correo electrónico</span></a><a class='goog-inline-block share-button sb-blog' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5177837276837323977&target=blog' onclick='window.open(this.href, "_blank", "height=270,width=475"); return false;' target='_blank' title='Escribe un blog'><span class='share-button-link-text'>Escribe un blog</span></a><a class='goog-inline-block share-button sb-twitter' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5177837276837323977&target=twitter' target='_blank' title='Compartir en X'><span class='share-button-link-text'>Compartir en X</span></a><a class='goog-inline-block share-button sb-facebook' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5177837276837323977&target=facebook' onclick='window.open(this.href, "_blank", "height=430,width=640"); return false;' target='_blank' title='Compartir con Facebook'><span class='share-button-link-text'>Compartir con Facebook</span></a><a class='goog-inline-block share-button sb-pinterest' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=5177837276837323977&target=pinterest' target='_blank' title='Compartir en Pinterest'><span class='share-button-link-text'>Compartir en Pinterest</span></a>
3089</div>
3090</div>
3091<div class='post-footer-line post-footer-line-2'>
3092<span class='post-labels'>
3093</span>
3094</div>
3095<div class='post-footer-line post-footer-line-3'>
3096<span class='post-location'>
3097</span>
3098</div>
3099</div>
3100</div>
3101</div>
3102
3103          </div></div>
3104        
3105
3106          <div class="date-outer">
3107        
3108<h2 class='date-header'><span>sábado, 26 de septiembre de 2020</span></h2>
3109
3110          <div class="date-posts">
3111        
3112<div class='post-outer'>
3113<div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
3114<meta content='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPpmQ_VcPhVpRuU_2z9Yladsrx8Lj2ZoTPSfK8y0f4LIB8gyOSZwYMaYkvSIqL537RlyNd5-XkO4I9SMXlZ2jSTzhTJnlKqvD2eLj1z8aV_DN-WgT84Izd8eO__SX9lj0YGkmq6qR3uCH7/s320/Screen+Shot+2020-09-24+at+5.05.44+PM.png' itemprop='image_url'/>
3115<meta content='9088164836799777632' itemprop='blogId'/>
3116<meta content='264458512844854077' itemprop='postId'/>
3117<a name='264458512844854077'></a>
3118<h3 class='post-title entry-title' itemprop='name'>
3119<a href='https://www.muppity.net/2020/09/participando-para-coecys-2020.html'>Participando para COECYS 2020</a>
3120</h3>
3121<div class='post-header'>
3122<div class='post-header-line-1'></div>
3123</div>
3124<div class='post-body entry-content' id='post-body-264458512844854077' itemprop='articleBody'>
3125<div class="separator" style="clear: both;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPpmQ_VcPhVpRuU_2z9Yladsrx8Lj2ZoTPSfK8y0f4LIB8gyOSZwYMaYkvSIqL537RlyNd5-XkO4I9SMXlZ2jSTzhTJnlKqvD2eLj1z8aV_DN-WgT84Izd8eO__SX9lj0YGkmq6qR3uCH7/s366/Screen+Shot+2020-09-24+at+5.05.44+PM.png" style="display: block; padding: 1em 0px; text-align: left;"><img alt="" border="0" data-original-height="192" data-original-width="366" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPpmQ_VcPhVpRuU_2z9Yladsrx8Lj2ZoTPSfK8y0f4LIB8gyOSZwYMaYkvSIqL537RlyNd5-XkO4I9SMXlZ2jSTzhTJnlKqvD2eLj1z8aV_DN-WgT84Izd8eO__SX9lj0YGkmq6qR3uCH7/s320/Screen+Shot+2020-09-24+at+5.05.44+PM.png" width="320"></a></div><span style="font-family: verdana; font-size: medium;">
3126Participando por segunda vez para el Congreso de Ciencias y Sistemas (COECYS), participar para mi Alma-mater es muy especial.
3127Realmente apoyar en la medida de lo posible a las nuevas generaciones de estudiantes en las mismas aulas que uno habito es muy bueno.
3128
3129En este tiempo tan complejo, es interesante ver como COECYS ha cambiado, tambien es importante ver que es una oportunidad para ampliar
3130la gama de expositores hacia espacios internacionales, pero mas importante que sea en pro de un alto nivel academico.
3131
3132</span><blockquote class="embedly-card"><h4><a href="http://coecys.org.gt/">COECYS XX</a></h4><p>COECYS XX - 2020 | Congreso de Estudiantes de Ciencias y Sistemas&#160;</p></blockquote>
3133<script async="" charset="UTF-8" src="//cdn.embedly.com/widgets/platform.js"></script>
3133
3134
3135<div style='clear: both;'></div>
3136</div>
3137<div class='jump-link'>
3138<a href='https://www.muppity.net/2020/09/participando-para-coecys-2020.html#more' title='Participando para COECYS 2020'>Continue Reading</a>
3139</div>
3140<div class='post-footer'>
3141<div class='post-footer-line post-footer-line-1'>
3142<span class='post-author vcard'>
3143Publicado por
3144<span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
3145<meta content='https://www.blogger.com/profile/16222409298408561391' itemprop='url'/>
3146<a class='g-profile' href='https://www.blogger.com/profile/16222409298408561391' rel='author' title='author profile'>
3147<span itemprop='name'>Carlos Lopez</span>
3148</a>
3149</span>
3150</span>
3151<span class='post-timestamp'>
3152en
3153<meta content='http://www.muppity.net/2020/09/participando-para-coecys-2020.html' itemprop='url'/>
3154<a class='timestamp-link' href='https://www.muppity.net/2020/09/participando-para-coecys-2020.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2020-09-26T11:21:00-07:00'>11:21</abbr></a>
3155</span>
3156<span class='reaction-buttons'>
3157</span>
3158<span class='post-comment-link'>
3159<a class='comment-link' href='https://www.muppity.net/2020/09/participando-para-coecys-2020.html#comment-form' onclick=''>
3160No hay comentarios:
3161  </a>
3162</span>
3163<span class='post-icons'>
3164<span class='item-control blog-admin pid-235982407'>
3165<a href='https://www.blogger.com/post-edit.g?blogID=9088164836799777632&postID=264458512844854077&from=pencil' title='Editar entrada'>
3166<img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/>
3167</a>
3168</span>
3169</span>
3170<div class='post-share-buttons goog-inline-block'>
3171<a class='goog-inline-block share-button sb-email' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=264458512844854077&target=email' target='_blank' title='Enviar por correo electrónico'><span class='share-button-link-text'>Enviar por correo electrónico</span></a><a class='goog-inline-block share-button sb-blog' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=264458512844854077&target=blog' onclick='window.open(this.href, "_blank", "height=270,width=475"); return false;' target='_blank' title='Escribe un blog'><span class='share-button-link-text'>Escribe un blog</span></a><a class='goog-inline-block share-button sb-twitter' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=264458512844854077&target=twitter' target='_blank' title='Compartir en X'><span class='share-button-link-text'>Compartir en X</span></a><a class='goog-inline-block share-button sb-facebook' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=264458512844854077&target=facebook' onclick='window.open(this.href, "_blank", "height=430,width=640"); return false;' target='_blank' title='Compartir con Facebook'><span class='share-button-link-text'>Compartir con Facebook</span></a><a class='goog-inline-block share-button sb-pinterest' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=264458512844854077&target=pinterest' target='_blank' title='Compartir en Pinterest'><span class='share-button-link-text'>Compartir en Pinterest</span></a>
3172</div>
3173</div>
3174<div class='post-footer-line post-footer-line-2'>
3175<span class='post-labels'>
3176</span>
3177</div>
3178<div class='post-footer-line post-footer-line-3'>
3179<span class='post-location'>
3180</span>
3181</div>
3182</div>
3183</div>
3184</div>
3185
3186          </div></div>
3187        
3188
3189          <div class="date-outer">
3190        
3191<h2 class='date-header'><span>jueves, 24 de septiembre de 2020</span></h2>
3192
3193          <div class="date-posts">
3194        
3195<div class='post-outer'>
3196<div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
3197<meta content='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkNfFlFSHSOPjWu0_D5j8o4vQoD4lyfrLPr5Cl_4J0mIdRrqQi-06fU0vXHNxGOCmCECll_9640ydPa7thqAgZHImAX9fqE9uNYi1pJ0iFgZkeyL7PTBjXVzHUPZ0GuX0AcVaahL-RtG_K/s320/Capture-780x259.png' itemprop='image_url'/>
3198<meta content='9088164836799777632' itemprop='blogId'/>
3199<meta content='3985357334123884361' itemprop='postId'/>
3200<a name='3985357334123884361'></a>
3201<h3 class='post-title entry-title' itemprop='name'>
3202<a href='https://www.muppity.net/2020/09/im-speaking-at-sql-saturday-1016-sao.html'>I'm Speaking at SQL Saturday 1016 - Sao Paulo</a>
3203</h3>
3204<div class='post-header'>
3205<div class='post-header-line-1'></div>
3206</div>
3207<div class='post-body entry-content' id='post-body-3985357334123884361' itemprop='articleBody'>
3208<div class="separator" style="clear: both; text-align: left;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg
3208kNfFlFSHSOPjWu0_D5j8o4vQoD4lyfrLPr5Cl_4J0mIdRrqQi-06fU0vXHNxGOCmCECll_9640ydPa7thqAgZHImAX9fqE9uNYi1pJ0iFgZkeyL7PTBjXVzHUPZ0GuX0AcVaahL-RtG_K/s780/Capture-780x259.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="259" data-original-width="780" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkNfFlFSHSOPjWu0_D5j8o4vQoD4lyfrLPr5Cl_4J0mIdRrqQi-06fU0vXHNxGOCmCECll_9640ydPa7thqAgZHImAX9fqE9uNYi1pJ0iFgZkeyL7PTBjXVzHUPZ0GuX0AcVaahL-RtG_K/s320/Capture-780x259.png" width="320"></a></div><div><br></div><span style="font-family: arial;">With all that had happened this year, it is good to see that SQL Saturday still goes on for the region, it is&#160;great to be at this event!. It&#39;s&#160;applaudable the effort made by the local team to make this event happen.</span><div><span style="font-family: arial;">&#160; 
3209</span></div>
3210<div style='clear: both;'></div>
3211</div>
3212<div class='jump-link'>
3213<a href='https://www.muppity.net/2020/09/im-speaking-at-sql-saturday-1016-sao.html#more' title='I&#39;m Speaking at SQL Saturday 1016 - Sao Paulo'>Continue Reading</a>
3214</div>
3215<div class='post-footer'>
3216<div class='post-footer-line post-footer-line-1'>
3217<span class='post-author vcard'>
3218Publicado por
3219<span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
3220<meta content='https://www.blogger.com/profile/16222409298408561391' itemprop='url'/>
3221<a class='g-profile' href='https://www.blogger.com/profile/16222409298408561391' rel='author' title='author profile'>
3222<span itemprop='name'>Carlos Lopez</span>
3223</a>
3224</span>
3225</span>
3226<span class='post-timestamp'>
3227en
3228<meta content='http://www.muppity.net/2020/09/im-speaking-at-sql-saturday-1016-sao.html' itemprop='url'/>
3229<a class='timestamp-link' href='https://www.muppity.net/2020/09/im-speaking-at-sql-saturday-1016-sao.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2020-09-24T13:28:00-07:00'>13:28</abbr></a>
3230</span>
3231<span class='reaction-buttons'>
3232</span>
3233<span class='post-comment-link'>
3234<a class='comment-link' href='https://www.muppity.net/2020/09/im-speaking-at-sql-saturday-1016-sao.html#comment-form' onclick=''>
3235No hay comentarios:
3236  </a>
3237</span>
3238<span class='post-icons'>
3239<span class='item-control blog-admin pid-235982407'>
3240<a href='https://www.blogger.com/post-edit.g?blogID=9088164836799777632&postID=3985357334123884361&from=pencil' title='Editar entrada'>
3241<img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/>
3242</a>
3243</span>
3244</span>
3245<div class='post-share-buttons goog-inline-block'>
3246<a class='goog-inline-block share-button sb-email' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3985357334123884361&target=email' target='_blank' title='Enviar por correo electrónico'><span class='share-button-link-text'>Enviar por correo electrónico</span></a><a class='goog-inline-block share-button sb-blog' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3985357334123884361&target=blog' onclick='window.open(this.href, "_blank", "height=270,width=475"); return false;' target='_blank' title='Escribe un blog'><span class='share-button-link-text'>Escribe un blog</span></a><a class='goog-inline-block share-button sb-twitter' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3985357334123884361&target=twitter' target='_blank' title='Compartir en X'><span class='share-button-link-text'>Compartir en X</span></a><a class='goog-inline-block share-button sb-facebook' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3985357334123884361&target=facebook' onclick='window.open(this.href, "_blank", "height=430,width=640"); return false;' target='_blank' title='Compartir con Facebook'><span class='share-button-link-text'>Compartir con Facebook</span></a><a class='goog-inline-block share-button sb-pinterest' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=3985357334123884361&target=pinterest' target='_blank' title='Compartir en Pinterest'><span class='share-button-link-text'>Compartir en Pinterest</span></a>
3247</div>
3248</div>
3249<div class='post-footer-line post-footer-line-2'>
3250<span class='post-labels'>
3251</span>
3252</div>
3253<div class='post-footer-line post-footer-line-3'>
3254<span class='post-location'>
3255</span>
3256</div>
3257</div>
3258</div>
3259</div>
3260
3261          </div></div>
3262        
3263
3264          <div class="date-outer">
3265        
3266<h2 class='date-header'><span>lunes, 24 de agosto de 2020</span></h2>
3267
3268          <div class="date-posts">
3269        
3270<div class='post-outer'>
3271<div class='post hentry uncustomized-post-template' itemprop='blogPost' itemscope='itemscope' itemtype='http://schema.org/BlogPosting'>
3272<meta content='https://i.ytimg.com/vi/zWuUGvMAcwk/hqdefault.jpg' itemprop='image_url'/>
3273<meta content='9088164836799777632' itemprop='blogId'/>
3274<meta content='6021178088664801273' itemprop='postId'/>
3275<a name='6021178088664801273'></a>
3276<h3 class='post-title entry-title' itemprop='name'>
3277<a href='https://www.muppity.net/2020/08/being-at-canonical-wsl-conf-2020.html'>Being at the Canonical - WSL Conf 2020</a>
3278</h3>
3279<div class='post-header'>
3280<div class='post-header-line-1'></div>
3281</div>
3282<div class='post-body entry-content' id='post-body-6021178088664801273' itemprop='articleBody'>
3283
3284<p>
3285	 I&#39;m honored and happy to participate at the WSL2 Conf!. A few months ago Microsoft has launched the WSL2 and Canonical has embraced it with effort and j
3285oy, in the second edition of WSL Conf Canonical has invited a pool of guest speakers of different nationalities and specialties to share collective knowledge on the subject for the comunity in which Im happy and thrilled to be part of. 
3286</p>
3287<p>
3288	Windows Subsystem Linux has a lot of potential to offer to the Windows world, by bringing the Open Source world to the Windows system as guest, infinity of possiblities are opened, as a part of that inclusion SQL Server is in those posibilities.
3289</p>
3290<div style='clear: both;'></div>
3291</div>
3292<div class='jump-link'>
3293<a href='https://www.muppity.net/2020/08/being-at-canonical-wsl-conf-2020.html#more' title='Being at the Canonical - WSL Conf 2020'>Continue Reading</a>
3294</div>
3295<div class='post-footer'>
3296<div class='post-footer-line post-footer-line-1'>
3297<span class='post-author vcard'>
3298Publicado por
3299<span class='fn' itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'>
3300<meta content='https://www.blogger.com/profile/16222409298408561391' itemprop='url'/>
3301<a class='g-profile' href='https://www.blogger.com/profile/16222409298408561391' rel='author' title='author profile'>
3302<span itemprop='name'>Carlos Lopez</span>
3303</a>
3304</span>
3305</span>
3306<span class='post-timestamp'>
3307en
3308<meta content='http://www.muppity.net/2020/08/being-at-canonical-wsl-conf-2020.html' itemprop='url'/>
3309<a class='timestamp-link' href='https://www.muppity.net/2020/08/being-at-canonical-wsl-conf-2020.html' rel='bookmark' title='permanent link'><abbr class='published' itemprop='datePublished' title='2020-08-24T11:55:00-07:00'>11:55</abbr></a>
3310</span>
3311<span class='reaction-buttons'>
3312</span>
3313<span class='post-comment-link'>
3314<a class='comment-link' href='https://www.muppity.net/2020/08/being-at-canonical-wsl-conf-2020.html#comment-form' onclick=''>
3315No hay comentarios:
3316  </a>
3317</span>
3318<span class='post-icons'>
3319<span class='item-control blog-admin pid-235982407'>
3320<a href='https://www.blogger.com/post-edit.g?blogID=9088164836799777632&postID=6021178088664801273&from=pencil' title='Editar entrada'>
3321<img alt='' class='icon-action' height='18' src='https://resources.blogblog.com/img/icon18_edit_allbkg.gif' width='18'/>
3322</a>
3323</span>
3324</span>
3325<div class='post-share-buttons goog-inline-block'>
3326<a class='goog-inline-block share-button sb-email' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=6021178088664801273&target=email' target='_blank' title='Enviar por correo electrónico'><span class='share-button-link-text'>Enviar por correo electrónico</span></a><a class='goog-inline-block share-button sb-blog' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=6021178088664801273&target=blog' onclick='window.open(this.href, "_blank", "height=270,width=475"); return false;' target='_blank' title='Escribe un blog'><span class='share-button-link-text'>Escribe un blog</span></a><a class='goog-inline-block share-button sb-twitter' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=6021178088664801273&target=twitter' target='_blank' title='Compartir en X'><span class='share-button-link-text'>Compartir en X</span></a><a class='goog-inline-block share-button sb-facebook' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=6021178088664801273&target=facebook' onclick='window.open(this.href, "_blank", "height=430,width=640"); return false;' target='_blank' title='Compartir con Facebook'><span class='share-button-link-text'>Compartir con Facebook</span></a><a class='goog-inline-block share-button sb-pinterest' href='https://www.blogger.com/share-post.g?blogID=9088164836799777632&postID=6021178088664801273&target=pinterest' target='_blank' title='Compartir en Pinterest'><span class='share-button-link-text'>Compartir en Pinterest</span></a>
3327</div>
3328</div>
3329<div class='post-footer-line post-footer-line-2'>
3330<span class='post-labels'>
3331</span>
3332</div>
3333<div class='post-footer-line post-footer-line-3'>
3334<span class='post-location'>
3335</span>
3336</div>
3337</div>
3338</div>
3339</div>
3340
3341        </div></div>
3342      
3343</div>
3344<div class='blog-pager' id='blog-pager'>
3345<span id='blog-pager-older-link'>
3346<a class='blog-pager-older-link' href='https://www.muppity.net/search?updated-max=2020-08-24T11:55:00-07:00&max-results=9' id='Blog1_blog-pager-older-link' title='Entradas antiguas'>Entradas antiguas</a>
3347</span>
3348<a class='home-link' href='https://www.muppity.net/'>Inicio</a>
3349</div>
3350<div class='clear'></div>
3351<div class='blog-feeds'>
3352<div class='feed-links'>
3353Suscribirse a:
3354<a class='feed-link' href='https://www.muppity.net/feeds/posts/default' target='_blank' type='application/atom+xml'>Entradas (Atom)</a>
3355</div>
3356</div>
3357</div></div>
3358</div>
3359</div>
3360<div class='column-left-outer'>
3361<div class='column-left-inner'>
3362<aside>
3363</aside>
3364</div>
3365</div>
3366<div class='column-right-outer'>
3367<div class='column-right-inner'>
3368<aside>
3369<div class='sidebar section' id='sidebar-right-1'><div class='widget HTML' data-version='1' id='HTML7'>
3370<div class='widget-content'>
3371<section class="hero-muppity">
3372  <h2>Cloud Data Architecture, Microsoft Fabric, Azure SQL & AI</h2>
3373  <p>
3374    Technical notes, architecture patterns, demos and lessons learned from the field.
3375  </p>
3376  <div class="hero-tags">
3377    <span>Microsoft Fabric</span>
3378    <span>Azure SQL</span>
3379    <span>SQL Server</span>
3380    <span>AI</span>
3381    <span>Containers</span>
3382  </div>
3383</section>
3384
3385<style>
3386.hero-muppity {
3387  background: linear-gradient(135deg, #0f172a, #1e40af);
3388  color: white;
3389  padding: 42px;
3390  border-radius: 26px;
3391  margin: 28px 0;
3392  box-shadow: 0 18px 40px rgba(15, 23, 42, .18);
3393}
3394
3395.hero-muppity h2 {
3396  font-size: 36px;
3397  line-height: 1.15;
3398  margin: 0 0 12px;
3399}
3400
3401.hero-muppity p {
3402  font-size: 18px;
3403  color: #dbeafe;
3404  max-width: 760px;
3405}
3406
3407.hero-tags span {
3408  display: inline-block;
3409  background: rgba(255,255,255,.14);
3410  border: 1px solid rgba(255,255,255,.22);
3411  padding: 8px 12px;
3412  border-radius: 999px;
3413  margin: 6px 6px 0 0;
3414  font-size: 14px;
3415  font-weight: 600;
3416}
3417</style>
3418</div>
3419<div class='clear'></div>
3420</div><div class='widget HTML' data-version='1' id='HTML8'>
3421<div class='widget-content'>
3422<div data-iframe-width="150" data-iframe-height="270" data-share-badge-id="a5ac60d2-e6ef-4355-bc49-a83e1c0740e7" data-share-badge-host="https://www.credly.com"></div>
3422<script type="text/javascript" async src="//cdn.credly.com/assets/utilities/embed.js"></script>
3422
3423</div>
3424<div class='clear'></div>
3425</div><div class='widget HTML' data-version='1' id='HTML3'>
3426<h2 class='title'>Follow me</h2>
3427<div class='widget-content'>
3428<div class="separator" style="clear: both; text-align: center;">
3429<ul>
3430<li>
3431<a href="https://twitter.com/CarlosLopezSQL">
3432<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTkHzmfzochX4WC0Hya8xtTTP25q5C8pCzuIfgW9DBDq43aVtX3rw" style="width:50px;height:50px;"/>
3433</a>
3434
3435<a href="https://github.com/Muppity">
3436<img src="https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png" style="width:50px; height:50px; /" />
3437</a>
3438
3439
3440<a href="https://www.linkedin.com/in/carlos-lopez-taks">
3441<img src="https://images.vexels.com/media/users/3/137382/isolated/lists/c59b2807ea44f0d70f41ca73c61d281d-icono-de-linkedin-logo.png" style="width:50px; height:50px;"/>
3442</a>
3443</li>
3444<li>
3445<a href="https://www.twitch.tv/the_muppity" ><img  alt="" border="0" width="40" data-original-height="40" data-original-width="40" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYUejmfuJK8QxgdwVM54OKYq_RgF6YiBCGAfRffcfIxppLmUb24SVkp4cxDTd4xPupDHxTknJzMW2SSrWgeW_5lUG4OYfhjYIVKjX-7u5CsWfgEW7hPj6pe2ogjoN4-tOAAdXuT1ojcsdpWNXuRLJcS61TSEywjKu9qVazjxXlvJIQZXXAZWUCnoDqtg/s320/twitch-purple.png"/></a>
3446
3447<a href="https://www.youtube.com/c/CarlosArturoLopezTaks" ><img alt="" border="0" width="55" data-original-height="55" data-original-width="55" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjELQTUApXHI9Sa7_kEmbNUQ7OrKICks19og8o2G0GSI6n4BlqFWnfs7JcuKwZY3v_aP93fIRORaY5WUb-eI4hKlhvO_rMoCG9icGNIiuPxsJKuNIZHmYFjZw7ZraCmwXF7ltXDYo8amcX1YH8eJP8LAJySDjJH43wOKXWn64sCvhll0Rv0Y_skNz4h6g/s320/vecteezy_youtube-logo-on-transparent-background_6057994.jpg"/></a>
3448
3449</li>
3450</ul>
3451</div>
3452</div>
3453<div class='clear'></div>
3454</div><div class='widget HTML' data-version='1' id='HTML4'>
3455<div class='widget-content'>
3456<a href=https://passdatacommunitysummit.com/speakers/all-speakers" imageanchor="1" style="margin-left: 0em; margin-right: 0em;"><img border="0" height="125" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRhUMtrh_40Pz4Me5Vb7UPhA6ZNAgaP4UtEuJc8S5ToXJSAwFySg28we_ylOXn-NKcJOfoN8nOZ6aSm2GQxoULAa8BGXr2-5W4UZdhk3ywPyfHUB0-TvDQDDyt5K0MAyeUBiq64TtDHcKrGcbnBaUVOjoA_HxEJn-o5qyWtTqGdJtTlHlWUTogmDmXV2Yd/s320/PASS%202025%20-%20X(Twitter)%20header%20-%20A.png" width="250" /></a>
3457</div>
3458<div class='clear'></div>
3459</div><div class='widget HTML' data-version='1' id='HTML2'>
3460<div class='widget-content'>
3461<a href=https://credentials.databricks.com/aaa1d941-8435-4e99-a5d5-4a69c4696f22#acc.dhutyer8" imageanchor="1" style="margin-left: 0em; margin-right: 0em;"><img border="0" height="125" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeWzwaHxxSxCBsYYpts4djIhHPCmZeNudFGNmpsRXzuPIdfl8pupWVbuRTM0kc5L-i-xvNEf2q9lICvR1rE2xSOGTxTRZ0xvZCeQNL0udV0PUZYVrXTfJeZvRDAiga9FNq2pU-hxuX4XiO2LVT5BzK43tr_Onlq4Qy1V1lj-Ydn8faa4I2JE2ZpyTtQDgp/s1600/lp-headerhero-image-tr-databricks-fundamentals-2x.png" /></a>
3462</div>
3463<div class='clear'></div>
3464</div><div class='widget HTML' data-version='1' id='HTML10'>
3465<div class='widget-content'>
3466<a href=https://docs.microsoft.com/en-gb/learn/tv/?source=learn" imageanchor="1" style="margin-left: 0em; margin-right: 0em;"><img border="0" height="125" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmKXESKhj71-ViVoIKk_Fednf_1YhEnIUczgRf1C0KbSvWsh56-2mira3zQzzLSF-iaMIfx-tg8LwFXRpdg4OPMO-n-D-x8j8uqxibQF-5HBsZ35xwkOhHP1mFtqO1CURay7aiqyBp3bn3/s266/BannerMsft.png" width="250" /></a>
3467</div>
3468<div class='clear'></div>
3469</div><div class='widget FeaturedPost' data-version='1' id='FeaturedPost1'>
3470<h2 class='title'>Featured Entry</h2>
3471<div class='post-summary'>
3472<h3><a href='https://www.muppity.net/2021/03/configure-nvidia-cuda-with-wsl2-for-sql.html'>Configure Nvidia CUDA with WSL2 for SQL Server in Containers</a></h3>
3473<p>
3474            Welcome file          Using NVidia CUDA Toolkit for SQL Server in Containers in WSL2.                                      NVidi...
3475</p>
3476<img class='image' src='https://developer.nvidia.com/sites/all/themes/devzone_new/nvidia-logo.svg'/>
3477</div>
3478<style type='text/css'>
3479    .image {
3480      width: 100%;
3481    }
3482  </style>
3483<div class='clear'></div>
3484</div><div class='widget Label' data-version='1' id='Label1'>
3485<h2>Tags</h2>
3486<div class='widget-content cloud-label-widget-content'>
3487<span class='label-size label-size-2'>
3488<a dir='ltr' href='https://www.muppity.net/search/label/MSBuild%202022'>MSBuild 2022</a>
3489</span>
3490<span class='label-size label-size-2'>
3491<a dir='ltr' href='https://www.muppity.net/search/label/containers'>containers</a>
3492</span>
3493<span class='label-size label-size-2'>
3494<a dir='ltr' href='https://www.muppity.net/search/label/sqlbits2019'>sqlbits2019</a>
3495</span>
3496<div class='clear'></div>
3497</div>
3498</div><div class='widget HTML' data-version='1' id='HTML1'>
3499<div class='widget-content'>
3500<div class="separator" style="clear: both;"><a href="https://www.facebook.com/groups/techcommun" style="display: block; padding: 1em 0; text-align: center; clear: left; float: left;"><img alt="" border="0" width="270" data-original-height="140" data-original-width="960" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjskbqex-G3mjPkezI5Ox1Uy7z5kvVTkOBYUMAhFlugJy80qklcr3dMLbpfpqxpf3fRTsOpr1TGHeWXun6noQarYfsMF7TEx8CQhJv5ZFYrmEZhVSmBdsLRNDhPwR1tfArhdR2yLfKWL8jLla20GcbNSEJB_AwX9nbXAErOFOphzq9KnAwlBEX-RXkTlg/s200/165208929_10159597597372044_7406159323024560761_n-2.jpg"/></a></div>
3501</div>
3502<div class='clear'></div>
3503</div><div class='widget BlogArchive' data-version='1' id='BlogArchive1'>
3504<h2>Archive</h2>
3505<div class='widget-content'>
3506<div id='ArchiveList'>
3507<div id='BlogArchive1_ArchiveList'>
3508<ul class='hierarchy'>
3509<li class='archivedate expanded'>
3510<a class='toggle' href='javascript:void(0)'>
3511<span class='zippy toggle-open'>
3512
3513        &#9660;&#160;
3514      
3515</span>
3516</a>
3517<a class='post-count-link' href='https://www.muppity.net/2026/'>
35182026
3519</a>
3520<span class='post-count' dir='ltr'>(1)</span>
3521<ul class='hierarchy'>
3522<li class='archivedate expanded'>
3523<a class='toggle' href='javascript:void(0)'>
3524<span class='zippy toggle-open'>
3525
3526        &#9660;&#160;
3527      
3528</span>
3529</a>
3530<a class='post-count-link' href='https://www.muppity.net/2026/08/'>
3531agosto
3532</a>
3533<span class='post-count' dir='ltr'>(1)</span>
3534<ul class='posts'>
3535<li><a href='https://www.muppity.net/2026/08/use-azure-dev-ops-mcp-in-vs-code.html'>Use Azure Dev Ops MCP in VS Code</a></li>
3536</ul>
3537</li>
3538</ul>
3539</li>
3540</ul>
3541<ul class='hierarchy'>
3542<li class='archivedate collapsed'>
3543<a class='toggle' href='javascript:void(0)'>
3544<span class='zippy'>
3545
3546        &#9658;&#160;
3547      
3548</span>
3549</a>
3550<a class='post-count-link' href='https://www.muppity.net/2023/'>
35512023
3552</a>
3553<span class='post-count' dir='ltr'>(1)</span>
3554<ul class='hierarchy'>
3555<li class='archivedate collapsed'>
3556<a class='toggle' href='javascript:void(0)'>
3557<span class='zippy'>
3558
3559        &#9658;&#160;
3560      
3561</span>
3562</a>
3563<a class='post-count-link' href='https://www.muppity.net/2023/06/'>
3564junio
3565</a>
3566<span class='post-count' dir='ltr'>(1)</span>
3567</li>
3568</ul>
3569</li>
3570</ul>
3571<ul class='hierarchy'>
3572<li class='archivedate collapsed'>
3573<a class='toggle' href='javascript:void(0)'>
3574<span class='zippy'>
3575
3576        &#9658;&#160;
3577      
3578</span>
3579</a>
3580<a class='post-count-link' href='https://www.muppity.net/2022/'>
35812022
3582</a>
3583<span class='post-count' dir='ltr'>(1)</span>
3584<ul class='hierarchy'>
3585<li class='archivedate collapsed'>
3586<a class='toggle' href='javascript:void(0)'>
3587<span class='zippy'>
3588
3589        &#9658;&#160;
3590      
3591</span>
3592</a>
3593<a class='post-count-link' href='https://www.muppity.net/2022/12/'>
3594diciembre
3595</a>
3596<span class='post-count' dir='ltr'>(1)</span>
3597</li>
3598</ul>
3599</li>
3600</ul>
3601<ul class='hierarchy'>
3602<li class='archivedate collapsed'>
3603<a class='toggle' href='javascript:void(0)'>
3604<span class='zippy'>
3605
3606        &#9658;&#160;
3607      
3608</span>
3609</a>
3610<a class='post-count-link' href='https://www.muppity.net/2021/'>
36112021
3612</a>
3613<span class='post-count' dir='ltr'>(2)</span>
3614<ul class='hierarchy'>
3615<li class='archivedate collapsed'>
3616<a class='toggle' href='javascript:void(0)'>
3617<span class='zippy'>
3618
3619        &#9658;&#160;
3620      
3621</span>
3622</a>
3623<a class='post-count-link' href='https://www.muppity.net/2021/03/'>
3624marzo
3625</a>
3626<span class='post-count' dir='ltr'>(2)</span>
3627</li>
3628</ul>
3629</li>
3630</ul>
3631<ul class='hierarchy'>
3632<li class='archivedate collapsed'>
3633<a class='toggle' href='javascript:void(0)'>
3634<span class='zippy'>
3635
3636        &#9658;&#160;
3637      
3638</span>
3639</a>
3640<a class='post-count-link' href='https://www.muppity.net/2020/'>
36412020
3642</a>
3643<span class='post-count' dir='ltr'>(6)</span>
3644<ul class='hierarchy'>
3645<li class='archivedate collapsed'>
3646<a class='toggle' href='javascript:void(0)'>
3647<span class='zippy'>
3648
3649        &#9658;&#160;
3650      
3651</span>
3652</a>
3653<a class='post-count-link' href='https://www.muppity.net/2020/11/'>
3654noviembre
3655</a>
3656<span class='post-count' dir='ltr'>(1)</span>
3657</li>
3658</ul>
3659<ul class='hierarchy'>
3660<li class='archivedate collapsed'>
3661<a class='toggle' href='javascript:void(0)'>
3662<span class='zippy'>
3663
3664        &#9658;&#160;
3665      
3666</span>
3667</a>
3668<a class='post-count-link' href='https://www.muppity.net/2020/09/'>
3669septiembre
3670</a>
3671<span class='post-count' dir='ltr'>(2)</span>
3672</li>
3673</ul>
3674<ul class='hierarchy'>
3675<li class='archivedate collapsed'>
3676<a class='toggle' href='javascript:void(0)'>
3677<span class='zippy'>
3678
3679        &#9658;&#160;
3680      
3681</span>
3682</a>
3683<a class='post-count-link' href='https://www.muppity.net/2020/08/'>
3684agosto
3685</a>
3686<span class='post-count' dir='ltr'>(1)</span>
3687</li>
3688</ul>
3689<ul class='hierarchy'>
3690<li class='archivedate collapsed'>
3691<a class='toggle' href='javascript:void(0)'>
3692<span class='zippy'>
3693
3694        &#9658;&#160;
3695      
3696</span>
3697</a>
3698<a class='post-count-link' href='https://www.muppity.net/2020/06/'>
3699junio
3700</a>
3701<span class='post-count' dir='ltr'>(1)</span>
3702</li>
3703</ul>
3704<ul class='hierarchy'>
3705<li class='archivedate collapsed'>
3706<a class='toggle' href='javascript:void(0)'>
3707<span class='zippy'>
3708
3709        &#9658;&#160;
3710      
3711</span>
3712</a>
3713<a class='post-count-link' href='https://www.muppity.net/2020/01/'>
3714enero
3715</a>
3716<span class='post-count' dir='ltr'>(1)</span>
3717</li>
3718</ul>
3719</li>
3720</ul>
3721<ul class='hierarchy'>
3722<li class='archivedate collapsed'>
3723<a class='toggle' href='javascript:void(0)'>
3724<span class='zippy'>
3725
3726        &#9658;&#160;
3727      
3728</span>
3729</a>
3730<a class='post-count-link' href='https://www.muppity.net/2019/'>
37312019
3732</a>
3733<span class='post-count' dir='ltr'>(3)</span>
3734<ul class='hierarchy'>
3735<li class='archivedate collapsed'>
3736<a class='toggle' href='javascript:void(0)'>
3737<span class='zippy'>
3738
3739        &#9658;&#160;
3740      
3741</span>
3742</a>
3743<a class='post-count-link' href='https://www.muppity.net/2019/09/'>
3744septiembre
3745</a>
3746<span class='post-count' dir='ltr'>(1)</span>
3747</li>
3748</ul>
3749<ul class='hierarchy'>
3750<li class='archivedate collapsed'>
3751<a class='toggle' href='javascript:void(0)'>
3752<span class='zippy'>
3753
3754        &#9658;&#160;
3755      
3756</span>
3757</a>
3758<a class='post-count-link' href='https://www.muppity.net/2019/06/'>
3759junio
3760</a>
3761<span class='post-count' dir='ltr'>(1)</span>
3762</li>
3763</ul>
3764<ul class='hierarchy'>
3765<li class='archivedate collapsed'>
3766<a class='toggle' href='javascript:void(0)'>
3767<span class='zippy'>
3768
3769        &#9658;&#160;
3770      
3771</span>
3772</a>
3773<a class='post-count-link' href='https://www.muppity.net/2019/03/'>
3774marzo
3775</a>
3776<span class='post-count' dir='ltr'>(1)</span>
3777</li>
3778</ul>
3779</li>
3780</ul>
3781<ul class='hierarchy'>
3782<li class='archivedate collapsed'>
3783<a class='toggle' href='javascript:void(0)'>
3784<span class='zippy'>
3785
3786        &#9658;&#160;
3787      
3788</span>
3789</a>
3790<a class='post-count-link' href='https://www.muppity.net/2018/'>
37912018
3792</a>
3793<span class='post-count' dir='ltr'>(3)</span>
3794<ul class='hierarchy'>
3795<li class='archivedate collapsed'>
3796<a class='toggle' href='javascript:void(0)'>
3797<span class='zippy'>
3798
3799        &#9658;&#160;
3800      
3801</span>
3802</a>
3803<a class='post-count-link' href='https://www.muppity.net/2018/10/'>
3804octubre
3805</a>
3806<span class='post-count' dir='ltr'>(1)</span>
3807</li>
3808</ul>
3809<ul class='hierarchy'>
3810<li class='archivedate collapsed'>
3811<a class='toggle' href='javascript:void(0)'>
3812<span class='zippy'>
3813
3814        &#9658;&#160;
3815      
3816</span>
3817</a>
3818<a class='post-count-link' href='https://www.muppity.net/2018/09/'>
3819septiembre
3820</a>
3821<span class='post-count' dir='ltr'>(2)</span>
3822</li>
3823</ul>
3824</li>
3825</ul>
3826</div>
3827</div>
3828<div class='clear'></div>
3829</div>
3830</div><div class='widget ContactForm' data-version='1' id='ContactForm1'>
3831<h2 class='title'>Formulario de contacto</h2>
3832<div class='contact-form-widget'>
3833<div class='form'>
3834<form name='contact-form'>
3835<p></p>
3836Nombre
3837<br/>
3838<input class='contact-form-name' id='ContactForm1_contact-form-name' name='name' size='30' type='text' value=''/>
3839<p></p>
3840Correo electrónico
3841<span style='font-weight: bolder;'>*</span>
3842<br/>
3843<input class='contact-form-email' id='ContactForm1_contact-form-email' name='email' size='30' type='text' value=''/>
3844<p></p>
3845Mensaje
3846<span style='font-weight: bolder;'>*</span>
3847<br/>
3848<textarea class='contact-form-email-message' cols='25' id='ContactForm1_contact-form-email-message' name='email-message' rows='5'></textarea>
3849<p></p>
3850<input class='contact-form-button contact-form-button-submit' id='ContactForm1_contact-form-submit' t
3850ype='button' value='Enviar'/>
3851<p></p>
3852<div style='text-align: center; max-width: 222px; width: 100%'>
3853<p class='contact-form-error-message' id='ContactForm1_contact-form-error-message'></p>
3854<p class='contact-form-success-message' id='ContactForm1_contact-form-success-message'></p>
3855</div>
3856</form>
3857</div>
3858</div>
3859<div class='clear'></div>
3860</div></div>
3861</aside>
3862</div>
3863</div>
3864</div>
3865<div style='clear: both'></div>
3866<!-- columns -->
3867</div>
3868<!-- main -->
3869</div>
3870</div>
3871<div class='main-cap-bottom cap-bottom'>
3872<div class='cap-left'></div>
3873<div class='cap-right'></div>
3874</div>
3875</div>
3876<footer>
3877<div class='footer-outer'>
3878<div class='footer-cap-top cap-top'>
3879<div class='cap-left'></div>
3880<div class='cap-right'></div>
3881</div>
3882<div class='fauxborder-left footer-fauxborder-left'>
3883<div class='fauxborder-right footer-fauxborder-right'></div>
3884<div class='region-inner footer-inner'>
3885<div class='foot no-items section' id='footer-1'></div>
3886<table border='0' cellpadding='0' cellspacing='0' class='section-columns columns-2'>
3887<tbody>
3888<tr>
3889<td class='first columns-cell'>
3890<div class='foot no-items section' id='footer-2-1'></div>
3891</td>
3892<td class='columns-cell'>
3893<div class='foot no-items section' id='footer-2-2'></div>
3894</td>
3895</tr>
3896</tbody>
3897</table>
3898<!-- outside of the include in order to lock Attribution widget -->
3899<div class='foot no-items section' id='footer-3' name='Pie de página'></div>
3900</div>
3901</div>
3902<div class='footer-cap-bottom cap-bottom'>
3903<div class='cap-left'></div>
3904<div class='cap-right'></div>
3905</div>
3906</div>
3907</footer>
3908<!-- content -->
3909</div>
3910</div>
3911<div class='content-cap-bottom cap-bottom'>
3912<div class='cap-left'></div>
3913<div class='cap-right'></div>
3914</div>
3915</div>
3916</div>
3917<script type='text/javascript'>
3918    window.setTimeout(function() {
3919        document.body.className = document.body.className.replace('loading', '');
3920      }, 10);
3921  </script>
vendor: 1 bytes, line 3921
3921
3922<script type='text/javascript'>
3923//<![CDATA[
3924(function () {
3925  'use strict';
3926
3927  var storageKey = 'muppity-theme';
3928  var root = document.documentElement;
3929
3930  function getSystemTheme() {
3931    if (
3932      window.matchMedia &&
3933      window.matchMedia('(prefers-color-scheme: dark)').matches
3934    ) {
3935      return 'dark';
3936    }
3937
3938    return 'light';
3939  }
3940
3941  function getSavedTheme() {
3942    try {
3943      return localStorage.getItem(storageKey);
3944    } catch (error) {
3945      return null;
3946    }
3947  }
3948
3949  function saveTheme(theme) {
3950    try {
3951      localStorage.setItem(storageKey, theme);
3952    } catch (error) {
3953      // Continue without persistent storage.
3954    }
3955  }
3956
3957  function applyTheme(theme) {
3958    root.setAttribute('data-theme', theme);
3959
3960    var button = document.getElementById('theme-toggle');
3961
3962    if (!button) {
3963      return;
3964    }
3965
3966    var icon = button.querySelector('.theme-toggle-icon');
3967    var label = button.querySelector('.theme-toggle-label');
3968    var isDark = theme === 'dark';
3969
3970    button.setAttribute(
3971      'aria-label',
3972      isDark ? 'Switch to light mode' : 'Switch to dark mode'
3973    );
3974
3975    button.setAttribute('aria-pressed', isDark ? 'true' : 'false');
3976
3977    if (icon) {
3978      icon.textContent = isDark ? '☀️' : '🌙';
3979    }
3980
3981    if (label) {
3982      label.textContent = isDark ? 'Light mode' : 'Dark mode';
3983    }
3984  }
3985
3986  var initialTheme = getSavedTheme() || getSystemTheme();
3987
3988  // Apply immediately.
3989  applyTheme(initialTheme);
3990
3991  function initializeToggle() {
3992    var button = document.getElementById('theme-toggle');
3993
3994    if (!button || button.getAttribute('data-ready') === 'true') {
3995      return;
3996    }
3997
3998    button.setAttribute('data-ready', 'true');
3999
4000    button.addEventListener('click', function () {
4001      var currentTheme =
4002        root.getAttribute('data-theme') || getSystemTheme();
4003
4004      var newTheme = currentTheme === 'dark' ? 'light' : 'dark';
4005
4006      applyTheme(newTheme);
4007      saveTheme(newTheme);
4008    });
4009  }
4010
4011  if (document.readyState === 'loading') {
4012    document.addEventListener('DOMContentLoaded', initializeToggle);
4013  } else {
4014    initializeToggle();
4015  }
4016
4017  // Follow operating-system changes only when the user has not selected
4018  // and saved a preference manually.
4019  if (window.matchMedia) {
4020    var systemPreference =
4021      window.matchMedia('(prefers-color-scheme: dark)');
4022
4023    var handleSystemChange = function (event) {
4024      if (!getSavedTheme()) {
4025        applyTheme(event.matches ? 'dark' : 'light');
4026      }
4027    };
4028
4029    if (systemPreference.addEventListener) {
4030      systemPreference.addEventListener('change', handleSystemChange);
4031    } else if (systemPreference.addListener) {
4032      systemPreference.addListener(handleSystemChange);
4033    }
4034  }
4035}());
4036//]]>
4037</script>
4037
4038
4039<script type="text/javascript" src="https://www.blogger.com/static/v1/widgets/851759228-widgets.js"></script>
vendor: 1 bytes, line 4039
4039
4040<script type='text/javascript'>
4041window['__wavt'] = 'AAPvtVk4djUvXOLfv_2FMhe-3KGC:1790861684488';_WidgetManager._Init('//www.blogger.com/rearrange?blogID\x3d9088164836799777632','//www.muppity.net/','9088164836799777632');
4042_WidgetManager._SetDataContext([{'name': 'blog', 'data': {'blogId': '9088164836799777632', 'title': 'Muppity -  Cloud Data Architecture ', 'url': 'https://www.muppity.net/', 'canonicalUrl': 'http://www.muppity.net/', 'homepageUrl': 'https://www.muppity.net/', 'searchUrl': 'https://www.muppity.net/search', 'canonicalHomepageUrl': 'http://www.muppity.net/', 'blogspotFaviconUrl': 'https://www.muppity.net/favicon.ico', 'bloggerUrl': 'https://www.blogger.com', 'hasCustomDomain': true, 'httpsEnabled': true, 'enabledCommentProfileImages': true, 'gPlusViewType': 'FILTERED_POSTMOD', 'adultContent': false, 'analyticsAccountNumber': '', 'encoding': 'UTF-8', 'locale': 'es', 'localeUnderscoreDelimited': 'es', 'languageDirection': 'ltr', 'isPrivate': false, 'isMobile': false, 'isMobileRequest': false, 'mobileClass': '', 'isPrivateBlog': false, 'isDynamicViewsAvailable': true, 'feedLinks': '\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22Muppity -  Cloud Data Architecture  - Atom\x22 href\x3d\x22https://www.muppity.net/feeds/posts/default\x22 /\x3e\n\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/rss+xml\x22 title\x3d\x22Muppity -  Cloud Data Architecture  - RSS\x22 href\x3d\x22https://www.muppity.net/feeds/posts/default?alt\x3drss\x22 /\x3e\n\x3clink rel\x3d\x22service.post\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22Muppity -  Cloud Data Architecture  - Atom\x22 href\x3d\x22https://www.blogger.com/feeds/9088164836799777632/posts/default\x22 /\x3e\n', 'meTag': '\x3clink rel\x3d\x22me\x22 href\x3d\x22https://www.blogger.com/profile/16222409298408561391\x22 /\x3e\n', 'adsenseHostId': 'ca-host-pub-1556223355139109', 'adsenseHasAds': false, 'adsenseAutoAds': false, 'boqCommentIframeForm': true, 'loginRedirectParam': '', 'isGoogleEverywhereLinkTooltipEnabled': true, 'view': '', 'dynamicViewsCommentsSrc': '//www.blogblog.com/dynamicviews/4224c15c4e7c9321/js/comments.js', 'dynamicViewsScriptSrc': '//www.blogblog.com/dynamicviews/7ce469edaf870342', 'plusOneApiSrc': 'https://apis.google.com/js/platform.js', 'disableGComments': true, 'interstitialAccepted': false, 'sharing': {'platforms': [{'name': 'Obtener enlace', 'key': 'link', 'shareMessage': 'Obtener enlace', 'target': ''}, {'name': 'Facebook', 'key': 'facebook', 'shareMessage': 'Compartir en Facebook', 'target': 'facebook'}, {'name': 'Escribe un blog', 'key': 'blogThis', 'shareMessage': 'Escribe un blog', 'target': 'blog'}, {'name': 'X', 'key': 'twitter', 'shareMessage': 'Compartir en X', 'target': 'twitter'}, {'name': 'Pinterest', 'key': 'pinterest', 'shareMessage': 'Compartir en Pinterest', 'target': 'pinterest'}, {'name': 'Correo electr\xf3nico', 'key': 'email', 'shareMessage': 'Correo electr\xf3nico', 'target': 'email'}], 'disableGooglePlus': true, 'googlePlusShareButtonWidth': 0, 'googlePlusBootstrap': '\x3cscript type\x3d\x22text/javascript\x22\x3ewindow.___gcfg \x3d {\x27lang\x27: \x27es\x27};\x3c/script\x3e'}
4042, 'hasCustomJumpLinkMessage': true, 'jumpLinkMessage': 'Continue Reading \xbb', 'pageType': 'index', 'pageName': '', 'pageTitle': 'Muppity -  Cloud Data Architecture ', 'metaDescription': 'SQL Server'}}, {'name': 'features', 'data': {}}, {'name': 'messages', 'data': {'edit': 'Editar', 'linkCopiedToClipboard': 'El enlace se ha copiado en el Portapapeles.', 'ok': 'Aceptar', 'postLink': 'Enlace de la entrada'}}, {'name': 'template', 'data': {'name': 'custom', 'localizedName': 'Personalizado', 'isResponsive': false, 'isAlternateRendering': false, 'isCustom': true}}, {'name': 'view', 'data': {'classic': {'name': 'classic', 'url': '?view\x3dclassic'}, 'flipcard': {'name': 'flipcard', 'url': '?view\x3dflipcard'}, 'magazine': {'name': 'magazine', 'url': '?view\x3dmagazine'}, 'mosaic': {'name': 'mosaic', 'url': '?view\x3dmosaic'}, 'sidebar': {'name': 'sidebar', 'url': '?view\x3dsidebar'}, 'snapshot': {'name': 'snapshot', 'url': '?view\x3dsnapshot'}, 'timeslide': {'name': 'timeslide', 'url': '?view\x3dtimeslide'}, 'isMobile': false, 'title': 'Muppity -  Cloud Data Architecture ', 'description': 'SQL Server', 'url': 'https://www.muppity.net/', 'type': 'feed', 'isSingleItem': false, 'isMultipleItems': true, 'isError': false, 'isPage': false, 'isPost': false, 'isHomepage': true, 'isArchive': false, 'isLabelSearch': false}}]);
4043_WidgetManager._RegisterWidget('_HeaderView', new _WidgetInfo('Header1', 'header', document.getElementById('Header1'), {}, 'displayModeFull'));
4044_WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML5', 'crosscol', document.getElementById('HTML5'), {}, 'displayModeFull'));
4045_WidgetManager._RegisterWidget('_BlogView', new _WidgetInfo('Blog1', 'main', document.getElementById('Blog1'), {'cmtInteractionsEnabled': false, 'lightboxEnabled': true, 'lightboxModuleUrl': 'https://www.blogger.com/static/v1/jsbin/1549083331-lbx__es.js', 'lightboxCssUrl': 'https://www.blogger.com/static/v1/v-css/828616780-lightbox_bundle.css'}, 'displayModeFull'));
4046_WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML7', 'sidebar-right-1', document.getElementById('HTML7'), {}, 'displayModeFull'));
4047_WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML8', 'sidebar-right-1', document.getElementById('HTML8'), {}, 'displayModeFull'));
4048_WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML3', 'sidebar-right-1', document.getElementById('HTML3'), {}, 'displayModeFull'));
4049_WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML4', 'sidebar-right-1', document.getElementById('HTML4'), {}, 'displayModeFull'));
4050_WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML2', 'sidebar-right-1', document.getElementById('HTML2'), {}, 'displayModeFull'));
4051_WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML10', 'sidebar-right-1', document.getElementById('HTML10'), {}, 'displayModeFull'));
4052_WidgetManager._RegisterWidget('_FeaturedPostView', new _WidgetInfo('FeaturedPost1', 'sidebar-right-1', document.getElementById('FeaturedPost1'), {}, 'displayModeFull'));
4053_WidgetManager._RegisterWidget('_LabelView', new _WidgetInfo('Label1', 'sidebar-right-1', document.getElementById('Label1'), {}, 'displayModeFull'));
4054_WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML1', 'sidebar-right-1', document.getElementById('HTML1'), {}, 'displayModeFull'));
4055_WidgetManager._RegisterWidget('_BlogArchiveView', new _WidgetInfo('BlogArchive1', 'sidebar-right-1', document.getElementById('BlogArchive1'), {'languageDirection': 'ltr', 'loadingMessage': 'Cargando\x26hellip;'}, 'displayModeFull'));
4056_WidgetManager._RegisterWidget('_ContactFormView', new _WidgetInfo('ContactForm1', 'sidebar-right-1', document.getElementById('ContactForm1'), {'contactFormMessageSendingMsg': 'Enviando...', 'contactFormMessageSentMsg': 'Se ha enviado tu mensaje.', 'contactFormMessageNotSentMsg': 'No se ha podido enviar el mensaje. Vuelve a intentarlo dentro de un rato.', 'contactFormInvalidEmailMsg': 'Tienes que escribir una direcci\xf3n de correo electr\xf3nico v\xe1lida.', 'contactFormEmptyMessageMsg': 'No puedes dejar en blanco el cuerpo del mensaje.', 'title': 'Formulario de contacto', 'blogId': '9088164836799777632', 'contactFormNameMsg': 'Nombre', 'contactFormEmailMsg': 'Correo electr\xf3nico', 'contactFormMessageMsg': 'Mensaje', 'contactFormSendMsg': 'Enviar', 'contactFormToken': 'AAPvtVkEBKaw7RUQNIYhpQWX8qJt:1790918562837', 'submitUrl': 'https://www.blogger.com/contact-form'}
4056, 'displayModeFull'));
4057</script>
4057
4058</body>
4059</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.