﻿<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Velin Georgiev blogging about SharePoint and ASP.NET</title><meta name="description" content="Useful SharePoint and ASP.NET answers, trial and error SharePoint experience blogged. SharePoint Patterns and Practices (PnP) guidance."><meta property="og:title" content="Velin Georgiev blogging about SharePoint and ASP.NET"><meta property="og:description" content="Useful SharePoint and ASP.NET answers, trial and error SharePoint experience blogged. SharePoint Patterns and Practices (PnP) guidance."><meta property="og:url" content="https://www.newbiereview.com"><meta property="og:image" content="https://www.newbiereview.com/static/images/Velin_Georgiev_Blog.png"><meta property="og:image:width" content="490"><meta property="og:image:height" content="490"><meta name="twitter:card" content="summary"><meta name="twitter:title" content="Velin Georgiev blogging about SharePoint and ASP.NET"><meta name="twitter:description" content="Useful SharePoint and ASP.NET answers, trial and error SharePoint experience blogged. SharePoint Patterns and Practices (PnP) guidance."><meta name="twitter:url" content="https://www.newbiereview.com/static/images/Velin_Georgiev_Blog.png"><meta name="twitter:image" content="https://www.newbiereview.com"><script type="application/ld+json">
        {
            "@context": "https://schema.org",
            "@type": "Website",
            "publisher": {
                "@type": "Organization",
                "name": "Velin Georgiev",
                "logo": "https://www.newbiereview.com/static/images/Velin_Georgiev_Blog.png"
            },
            "url": "https://www.newbiereview.com",
            "image": {
                "@type": "ImageObject",
                "url": "https://www.newbiereview.com/static/images/Velin_Georgiev_Blog.png",
                "width": 490,
                "height": 490
            },
            "mainEntityOfPage": {
                "@type": "WebPage",
                "@id": "https://www.newbiereview.com"
            },
            "description": "Useful SharePoint and ASP.NET answers, trial and error SharePoint experience blogged. SharePoint Patterns and Practices (PnP) guidance."
        }
    </script><link rel="canonical" href="https://www.newbiereview.com"><link rel="manifest" href="/static/icons/manifest.json"><meta name="msapplication-config" content="/static/icons/browserconfig.xml"><link rel="shortcut icon" href="/static/icons/favicon.ico"><meta http-equiv="Content-Language" content="en"><meta property="og:type" content="blog"><meta property="og:locale" content="en_US"><meta property="og:site_name" content="Velin Georgiev blog"><meta name="twitter:site" content="@VelinGeorgiev"><meta name="twitter:creator" content="@VelinGeorgiev"><meta name="twitter:account_id" content="73333635"><meta name="msvalidate.01" content="98EBA4BBF1E6E762E046D91593C7C4CD"><meta name="google-site-verification" content="mtO3NJxGRwhIE1rYKeVie_hUTZR7bUDiKCinhAcJA00"><link rel="alternate" type="application/rss+xml" title="Blog RSS Feed about SharePoint and ASP.NET " href="https://www.newbiereview.com/rss/"><link rel="alternate" type="application/atom+xml" title="Blog Atom Feed about SharePoint and ASP.NET " href="https://www.newbiereview.com/atom/"><meta name="author" content="Velin Georgiev"><link rel="me" type="text/html" href="https://github.com/VelinGeorgiev"><link rel="me" type="text/html" href="https://www.linkedin.com/in/velingeorgiev"><link rel="me" type="text/html" href="https://twitter.com/velingeorgiev"><link rel="author" href="https://plus.google.com/+VelinGeorgiev"><link rel="apple-touch-icon" href="/static/icons/apple-icon.png"><link rel="apple-touch-icon" sizes="57x57" href="/static/icons/apple-icon-57x57.png"><link rel="apple-touch-icon" sizes="60x60" href="/static/icons/apple-icon-60x60.png"><link rel="apple-touch-icon" sizes="72x72" href="/static/icons/apple-icon-72x72.png"><link rel="apple-touch-icon" sizes="76x76" href="/static/icons/apple-icon-76x76.png"><link rel="apple-touch-icon" sizes="114x114" href="/static/icons/apple-icon-114x114.png"><link rel="apple-touch-icon" sizes="120x120" href="/static/icons/apple-icon-120x120.png"><link rel="apple-touch-icon" sizes="144x144" href="/static/icons/apple-icon-144x144.png"><link rel="apple-touch-icon" sizes="152x152" href="/static/icons/apple-icon-152x152.png"><link rel="apple-touch-icon" sizes="180x180" href="/static/icons/apple-icon-180x180.png"><link rel="icon" type="image/png" sizes="192x192"  href="/static/icons/android-icon-192x192.png"><link rel="icon" type="image/png" sizes="32x32" href="/static/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="96x96" href="/static/icons/favicon-96x96.png"><link rel="icon" type="image/png" sizes="16x16" href="/static/icons/favicon-16x16.png"><meta name="msapplication-TileColor" content="#ffffff"><meta name="msapplication-TileImage" content="/static/icons/ms-icon-144x144.png"><meta name="theme-color" content="#ffffff"><style type="text/css">/*!
 * Milligram v1.3.0
 * https://milligram.github.io
 *
 * Copyright (c) 2017 CJ Patoilo
 * Licensed under the MIT license
 */*,*:after,*:before{box-sizing:inherit}html{box-sizing:border-box;font-size:62.5%}body{color:#212121;font-family:'Roboto','Helvetica Neue','Helvetica','Arial',sans-serif;font-size:1.6em;font-weight:300;letter-spacing:.01em;line-height:1.6}blockquote{border-left:0.3rem solid #d1d1d1;margin-left:0;margin-right:0;padding:1rem 1.5rem}blockquote *:last-child{margin-bottom:0}.button,button,input[type='button'],input[type='reset'],input[type='submit']{background-color:#0D47A1;border:0.1rem solid #0D47A1;border-radius:.4rem;color:#fff;cursor:pointer;display:inline-block;font-size:1.6rem;font-weight:700;height:3.8rem;letter-spacing:.1rem;line-height:3.8rem;padding:0 3.0rem;text-align:center;text-decoration:none;text-transform:uppercase;white-space:nowrap}.button:focus,.button:hover,button:focus,button:hover,input[type='button']:focus,input[type='button']:hover,input[type='reset']:focus,input[type='reset']:hover,input[type='submit']:focus,input[type='submit']:hover{background-color:#606c76;border-color:#606c76;color:#fff;outline:0}.button[disabled],button[disabled],input[type='button'][disabled],input[type='reset'][disabled],input[type='submit'][disabled]{cursor:default;opacity:.5}.button[disabled]:focus,.button[disabled]:hover,button[disabled]:focus,button[disabled]:hover,input[type='button'][disabled]:focus,input[type='button'][disabled]:hover,input[type='reset'][disabled]:focus,input[type='reset'][disabled]:hover,input[type='submit'][disabled]:focus,input[type='submit'][disabled]:hover{background-color:#0D47A1;border-color:#0D47A1}.button.button-outline,button.button-outline,input[type='button'].button-outline,input[type='reset'].button-outline,input[type='submit'].button-outline{background-color:transparent;color:#0D47A1}.button.button-outline:focus,.button.button-outline:hover,button.button-outline:focus,button.button-outline:hover,input[type='button'].button-outline:focus,input[type='button'].button-outline:hover,input[type='reset'].button-outline:focus,input[type='reset'].button-outline:hover,input[type='submit'].button-outline:focus,input[type='submit'].button-outline:hover{background-color:transparent;border-color:#606c76;color:#606c76}.button.button-outline[disabled]:focus,.button.button-outline[disabled]:hover,button.button-outline[disabled]:focus,button.button-outline[disabled]:hover,input[type='button'].button-outline[disabled]:focus,input[type='button'].button-outline[disabled]:hover,input[type='reset'].button-outline[disabled]:focus,input[type='reset'].button-outline[disabled]:hover,input[type='submit'].button-outline[disabled]:focus,input[type='submit'].button-outline[disabled]:hover{border-color:inherit;color:#0D47A1}.button.button-clear,button.button-clear,input[type='button'].button-clear,input[type='reset'].button-clear,input[type='submit'].button-clear{background-color:transparent;border-color:transparent;color:#0D47A1}.button.button-clear:focus,.button.button-clear:hover,button.button-clear:focus,button.button-clear:hover,input[type='button'].button-clear:focus,input[type='button'].button-clear:hover,input[type='reset'].button-clear:focus,input[type='reset'].button-clear:hover,input[type='submit'].button-clear:focus,input[type='submit'].button-clear:hover{background-color:transparent;border-color:transparent;color:#606c76}.button.button-clear[disabled]:focus,.button.button-clear[disabled]:hover,button.button-clear[disabled]:focus,button.button-clear[disabled]:hover,input[type='button'].button-clear[disabled]:focus,input[type='button'].button-clear[disabled]:hover,input[type='reset'].button-clear[disabled]:focus,input[type='reset'].button-clear[disabled]:hover,input[type='submit'].button-clear[disabled]:focus,input[type='submit'].button-clear[disabled]:hover{color:#0D47A1}code{background:#f4f5f6;border-radius:.4rem;font-size:86%;margin:0 .2rem;padding:.2rem .5rem;white-space:nowrap}pre{background:#f4f5f6;border-left:0.3rem solid #0D47A1;overflow-y:hidden}pre>code{border-radius:0;display:block;padding:1rem 1.5rem;white-space:pre}hr{border:0;border-top:0.1rem solid #f4f5f6;margin:3.0rem 0}input[type='email'],input[type='number'],input[type='password'],input[type='search'],input[type='tel'],input[type='text'],input[type='url'],textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0.1rem solid #d1d1d1;border-radius:.4rem;box-shadow:none;box-sizing:inherit;height:3.8rem;padding:.6rem 1.0rem;width:100%}input[type='email']:focus,input[type='number']:focus,input[type='password']:focus,input[type='search']:focus,input[type='tel']:focus,input[type='text']:focus,input[type='url']:focus,textarea:focus,select:focus{border-color:#0D47A1;outline:0}select{background:url('data:image/svg+xml;utf8,<svgxmlns="http://www.w3.org/2000/svg"height="14"viewBox="002914"width="29"><pathfill="#d1d1d1"d="M9.377273.625l5.081546.93523L19.540363.625"/></svg>') center right no-repeat;padding-right:3.0rem}select:focus{background-image:url('data:image/svg+xml;utf8,<svgxmlns="http://www.w3.org/2000/svg"height="14"viewBox="002914"width="29"><pathfill="#0D47A1"d="M9.377273.625l5.081546.93523L19.540363.625"/></svg>')}textarea{min-height:6.5rem}label,legend{display:block;font-size:1.6rem;font-weight:700;margin-bottom:.5rem}fieldset{border-width:0;padding:0}input[type='checkbox'],input[type='radio']{display:inline}.label-inline{display:inline-block;font-weight:normal;margin-left:.5rem}.container{margin:0 auto;max-width:112.0rem;padding:0 2.0rem;position:relative;width:100%}.row{display:flex;flex-direction:column;padding:0;width:100%}.row.row-no-padding{padding:0}.row.row-no-padding>.column{padding:0}.row.row-wrap{flex-wrap:wrap}.row.row-top{align-items:flex-start}.row.row-bottom{align-items:flex-end}.row.row-center{align-items:center}.row.row-stretch{align-items:stretch}.row.row-baseline{align-items:baseline}.row .column{display:block;flex:1 1 auto;margin-left:0;max-width:100%;width:100%}.row .column.column-offset-10{margin-left:10%}.row .column.column-offset-20{margin-left:20%}.row .column.column-offset-25{margin-left:25%}.row .column.column-offset-33,.row .column.column-offset-34{margin-left:33.3333%}.row .column.column-offset-50{margin-left:50%}.row .column.column-offset-66,.row .column.column-offset-67{margin-left:66.6666%}.row .column.column-offset-75{margin-left:75%}.row .column.column-offset-80{margin-left:80%}.row .column.column-offset-90{margin-left:90%}.row .column.column-10{flex:0 0 10%;max-width:10%}.row .column.column-20{flex:0 0 20%;max-width:20%}.row .column.column-25{flex:0 0 25%;max-width:25%}.row .column.column-33,.row .column.column-34{flex:0 0 33.3333%;max-width:33.3333%}.row .column.column-40{flex:0 0 40%;max-width:40%}.row .column.column-50{flex:0 0 50%;max-width:50%}.row .column.column-60{flex:0 0 60%;max-width:60%}.row .column.column-66,.row .column.column-67{flex:0 0 66.6666%;max-width:66.6666%}.row .column.column-75{flex:0 0 75%;max-width:75%}.row .column.column-80{flex:0 0 80%;max-width:80%}.row .column.column-90{flex:0 0 90%;max-width:90%}.row .column .column-top{align-self:flex-start}.row .column .column-bottom{align-self:flex-end}.row .column .column-center{-ms-grid-row-align:center;align-self:center}@media (min-width:40rem){.row{flex-direction:row;margin-left:-1.0rem;width:calc(100% + 2.0rem)}.row .column{margin-bottom:inherit;padding:0 1.0rem}}a{color:#0D47A1;text-decoration:none}a:focus,a:hover{color:#606c76}dl,ol,ul{list-style:none;margin-top:0;padding-left:0}dl dl,dl ol,dl ul,ol dl,ol ol,ol ul,ul dl,ul ol,ul ul{font-size:90%;margin:1.5rem 0 1.5rem 3.0rem}ol{list-style:decimal inside}ul{list-style:circle inside}.button,button,dd,dt,li{margin-bottom:1.0rem}fieldset,input,select,textarea{margin-bottom:1.5rem}blockquote,dl,figure,form,ol,p,pre,table,ul{margin-bottom:2.5rem}table{border-spacing:0;width:100%}td,th{border-bottom:0.1rem solid #e1e1e1;padding:1.2rem 1.5rem;text-align:left}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}b,strong{font-weight:bold}p{margin-top:0}h1,h2,h3,h4,h5,h6{font-weight:300;letter-spacing:-.1rem;margin-bottom:2.0rem;margin-top:0}h1{font-size:4.6rem;line-height:1.2}h2{font-size:3.6rem;line-height:1.25}h3{font-size:2.8rem;line-height:1.3}h4{font-size:2.2rem;letter-spacing:-.08rem;line-height:1.35}h5{font-size:1.8rem;letter-spacing:-.05rem;line-height:1.5}h6{font-size:1.6rem;letter-spacing:0;line-height:1.4}img{max-width:100%}.clearfix:after{clear:both;content:' ';display:table}.float-left{float:left}.float-right{float:right}body{font-family:'Trebuchet MS','Roboto','Helvetica Neue','Helvetica','Arial',sans-serif}h1{font-size:3.6rem}h2{padding-top:1rem;font-size:2.6rem}h3{padding-top:1rem;font-size:2.2rem}.navigation .title,.navigation-title{color:#f2f2f2}.navigation{background:#34373C;border-bottom:.1rem solid #1B1C1D}.header{background-color:#141518}pre{background:#141518}.prettyprint{color:#f2f2f2}.prettyprint.lang-md *{color:#f2f2f2!important}code{background:#141518;font-size:110%}.prettyprint .atv{color:rgba(73,158,223,1)}blockquote,dl,figure,form,ol,p,pre,table,ul{margin-bottom:1.5rem}.opaque{-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";filter:alpha(opacity=60);opacity:0.6}img{margin-bottom:1rem}.italic{font-style:italic}.social{width:64px;margin-right:3px}.mcsd-cert{max-height:100px}.scrum-cert{max-height:100px;max-width:200px}.menu-icon{max-width:32px}.comment{font-weight:600}.padding-top-1{padding-top:1rem}.post-thumb{max-width:200px}.github-icon{max-width:48px}.video-container{position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden;margin-bottom:1rem}.video-container iframe,.video-container object,.video-container embed{position:absolute;top:0;left:0;width:100%;height:100%}.grecaptcha-badge{visibility:hidden}</style></head><body><nav><div class="container"><div class="row"><div class="column"><a href="/" title="Velin Georgiev's Blog" ><h4>
                             Velin Georgiev's Blog
                         </h4></a></div><div class="column"><a class="button button-clear" href="/" title="Posts list"><svg class="i-home menu-icon" viewBox="0 0 32 32" width="64" height="64" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" role="img" aria-label="Velin Georgiev blog home"><path d="M12 20 L12 30 4 30 4 12 16 2 28 12 28 30 20 30 20 20 Z" /></svg></a><a class="button button-clear" href="/about" title="About Velin Georgiev"><svg class="i-user menu-icon" viewBox="0 0 32 32" width="64" height="64" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M22 11 C22 16 19 20 16 20 13 20 10 16 10 11 10 6 12 3 16 3 20 3 22 6 22 11 Z M4 30 L28 30 C28 21 22 20 16 20 10 20 4 21 4 30 Z" /></svg></a><a class="button button-clear" href="/search" title="Blog search" rel="nofollow" ><svg class="i-search menu-icon" viewBox="0 0 32 32" width="64" height="64" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" ><circle cx="14" cy="14" r="12" /><path d="M23 23 L30 30"  /></svg></a></div></div></div></nav><div class="container"><h1>Useful SharePoint answers, trial and error SharePoint experience blogged</h1><hr/><div class="row"><div class="column column-33"><a href="/column-test"><img src="/static/images/image-placeholder.png" alt="Column test" class="post-thumb lazy" data-src="/static/images/OFFICE365.png" /></a></div><div class="column"><a href="/column-test"><h2>Column test</h2></a><p class="padding-top-1">Column test</p><hr/></div></div><div class="row"><div class="column column-33"><a href="/how-set-datetime-managed-property-sharepoint-online"><img src="/static/images/image-placeholder.png" alt="How to set up DateTime Managed Property in SharePoint Online" class="post-thumb lazy" data-src="/static/images/OFFICE365.png" /></a></div><div class="column"><a href="/how-set-datetime-managed-property-sharepoint-online"><h2>How to set up DateTime Managed Property in SharePoint Online</h2></a><p class="padding-top-1">Assuming that your SharePoint custom list metadata is created as Site Columns and there is some content stored in those columns, SharePoint Search will automatically create Managed Properties for those columns and you will be able to use them in your solution without any manual effort. However all the automatically managed properties are added as of type text or boolean which is not always ideal you would like to take the advantage of KQL filtering by date or further refinement.</p><hr/></div></div><div class="row"><div class="column column-33"><a href="/use-sharepoint-site-contributors-group-communication-sites"><img src="/static/images/image-placeholder.png" alt="Create Contributors SharePoint Group for modern Communication sites" class="post-thumb lazy" data-src="/static/images/OFFICE365.png" /></a></div><div class="column"><a href="/use-sharepoint-site-contributors-group-communication-sites"><h2>Create Contributors SharePoint Group for modern Communication sites</h2></a><p class="padding-top-1">The default Members SharePoint Group that comes with newly created modern Communication site has been granted with &#39;Edit&#39; rights. This permissions role grants user with rights to create lists and modify the navigation and could be to much delegation for a content author for example. If we want to invite user that should just add or edit pages, list items or document in libraries then we could create Contributors SharePoint group and grant that group with just contributor rights.</p><hr/></div></div><div class="row"><div class="column column-33"><a href="/provision-custom-list-sharepoint-pnp-powershell"><img src="/static/images/image-placeholder.png" alt="Provision custom list with SharePoint PnP PowerShell" class="post-thumb lazy" data-src="/static/images/OFFICE365.png" /></a></div><div class="column"><a href="/provision-custom-list-sharepoint-pnp-powershell"><h2>Provision custom list with SharePoint PnP PowerShell</h2></a><p class="padding-top-1">Provisioning custom list with SharePoint PnP PowerShell done right</p><hr/></div></div><div class="row"><div class="column column-33"><a href="/Office-365-and-machine-learning-idea-won-espc17-hackathon"><img src="/static/images/image-placeholder.png" alt="Office 365 and Machine Learning idea won the ESPC17 Hackathon" class="post-thumb lazy" data-src="/media/CACHE/images/posts/ML-Yammer-Flow-ESPC17-Hackathon/568c104ab6ebe894f17048c298e23286.jpg" /></a></div><div class="column"><a href="/Office-365-and-machine-learning-idea-won-espc17-hackathon"><h2>Office 365 and Machine Learning idea won the ESPC17 Hackathon</h2></a><p class="padding-top-1">We won the European SharePoint Conference 2017 Hackathon with a fresh idea of using Machine Learning to identify groups of people in Office 365 that can collaborate through Yammer, SharePoint and the Office 365 stack.</p><hr/></div></div><div class="row"><div class="column column-33"><a href="/sharepoint-framework-debug-unit-tests-and-tdd"><img src="/static/images/image-placeholder.png" alt="SharePoint Framework debug unit tests and TDD" class="post-thumb lazy" data-src="/static/images/OFFICE365.png" /></a></div><div class="column"><a href="/sharepoint-framework-debug-unit-tests-and-tdd"><h2>SharePoint Framework debug unit tests and TDD</h2></a><p class="padding-top-1">The modern SharePoint client side development comes with loads of cool open source software development technologies and frameworks like React, Typescript, Gulp and Nodejs tooling, but also supports out of the box unit testing and we can take advantage of that and even do client side Test Driven Development (TDD).</p><hr/></div></div><div class="row"><div class="column column-33"><a href="/sharepoint-framework-unit-tests-react-setup"><img src="/static/images/image-placeholder.png" alt="SharePoint Framework unit tests React setup" class="post-thumb lazy" data-src="/static/images/OFFICE365.png" /></a></div><div class="column"><a href="/sharepoint-framework-unit-tests-react-setup"><h2>SharePoint Framework unit tests React setup</h2></a><p class="padding-top-1">Unit tests are part of the modern age development process and believe or not JavaScript has gone that far that we now create unit tests for our front end and SharePoint is no exception. With the modern SharePoint Framework, Microsoft introduced new page web parts model where we can craft apps based on TypeScript, Reactjs and create component unit tests. This post is about SPFx solution setup and prerequisites and it is part of a series about SPFx unit testing.</p><hr/></div></div><div class="row"><div class="column column-33"><a href="/vsts-personal-access-tokens-with-git-visual-studio-2017"><img src="/static/images/image-placeholder.png" alt="VSTS Personal access tokens with Git and Visual Studio 2017" class="post-thumb lazy" data-src="/static/images/ASPNET.png" /></a></div><div class="column"><a href="/vsts-personal-access-tokens-with-git-visual-studio-2017"><h2>VSTS Personal access tokens with Git and Visual Studio 2017</h2></a><p class="padding-top-1">How to use VSTS Personal access tokens with GIT for Windows and Visual Studio 2017?</p><hr/></div></div><div class="row"><div class="column column-33"><a href="/sharepoint-framework-publish-subscribe-event-messaging"><img src="/static/images/image-placeholder.png" alt="SharePoint Framework publish-subscribe event messaging" class="post-thumb lazy" data-src="/media/CACHE/images/posts/spfx-eventaggregator-broadcasting_h7PS5Fj/f1fda10f65c6c7dfe3d9893ff426a59b.jpg" /></a></div><div class="column"><a href="/sharepoint-framework-publish-subscribe-event-messaging"><h2>SharePoint Framework publish-subscribe event messaging</h2></a><p class="padding-top-1">Communication between SPFx web parts through broadcasting events using the SPFx eventAggregator service.</p><hr/></div></div><div class="row"><div class="column column-33"><a href="/sharepoint-framework-app-settings"><img src="/static/images/image-placeholder.png" alt="SharePoint Framework app settings" class="post-thumb lazy" data-src="/media/CACHE/images/posts/spfx-appSettings-json/b43d34fc6c8c8f71c96a1d76bdbb52be.jpg" /></a></div><div class="column"><a href="/sharepoint-framework-app-settings"><h2>SharePoint Framework app settings</h2></a><p class="padding-top-1">An appSettings.json file can be added and used within SharePoint Framework solution similar to the Web.config / App.config key value app settings in .NET Framework projects. It allows better DevOps and Continuous Integration automation cross different deployment tenants (environments).</p><hr/></div></div><div class="row"><div class="column column-25 column-offset-25"></div><div class="column column-25"><a href="?page=2" class="button">Next page</a></div></div><hr/></div><footer><div class="container"><div class="row"><a href="https://www.newbiereview.com/rss/" target="_blank" title="Velin Georgiev blog RSS Feed"><svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Velin Georgiev blog RSS Feed" class="social"><rect fill="#ffa500" height="512" rx="15%" width="512"/><circle cx="123" cy="389" fill="#fff" r="67"/><path d="m56 89c203 0 367 164 367 367m-133 0c0-128-105-234-234-234" fill="none" stroke="#fff" stroke-width="68"/></svg></a><a href="https://github.com/VelinGeorgiev" target="_blank" title="Velin Georgiev Github account" rel="nofollow noopener" ><svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Velin Georgiev Github account" class="social"><rect fill="#171515" height="512" rx="15%" width="512"/><path d="m119 255c17 30 49 48 102 53-8 6-17 17-18 30-10 6-29 8-44 3-21-7-29-48-61-42-7 1-6 6 0 10 10 6 21 16 26 30 12 31 37 39 77 33v45c0 14-20 18-20 25 0 3 7 3 12 3 10 0 32-9 32-23 0-12 0-52 1-59 0-15 8-20 8-20s1 82-2 92c-4 13-10 11-10 17 0 9 26 2 35-17 7-15 4-95 3-94h7s0 37 1 53c0 17-1 39 9 50 7 7 29 19 29 8 0-6-12-12-12-29v-79c10 0 8 26 8 26l1 48s-2 18 19 25c8 3 24 3 25-1s-20-11-20-25v-49c0-36-5-49-22-60 53-5 86-18 102-53 10-20 12-44 12-62 0-50-24-67-29-76 7-38-1-55-5-60-14-5-48 12-66 24-30-9-94-8-118 2-44-31-67-26-67-26s-15 27-4 66c-15 18-25 31-26 65 0 27 3 44 15 67z" fill="#fff"/></svg></a><a href="https://twitter.com/velingeorgiev" target="_blank" title="Velin Georgiev Twitter profile" rel="nofollow noopener" ><svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Velin Georgiev Twitter profile" class="social"><rect fill="#1da1f3" height="512" rx="15%" width="512"/><path d="m456 133c-14 7-31 11-47 13 17-10 30-27 37-46-15 10-34 16-52 20-61-62-157-7-141 75-68-3-129-35-169-85-22 37-11 86 26 109-13 0-26-4-37-9 0 39 28 72 65 80-12 3-25 4-37 2 10 33 41 57 77 57-42 30-77 38-122 34 170 111 378-32 359-208 16-11 30-25 41-42z" fill="#fff"/></svg></a><a href="https://www.linkedin.com/in/velingeorgiev" target="_blank" title="Velin Georgiev Linkedin profile" rel="nofollow noopener" ><svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" fill="#fff" role="img" aria-label="Velin Georgiev Linkedin profile" class="social"><rect width="512" height="512" rx="15%" fill="#0077b5"/><circle cx="104" cy="104" r="48"/><path d="m237 178v259m-133-259v259" stroke="#fff" stroke-width="86"/><path d="m279 293c0-26 18-53 48-53 31 0 43 24 43 59v138h86v-148c0-80-42-116-99-116-45 0-67 25-78 42"/></svg></a></div><div class="row">
                Velin Georgiev Blog © 2018 | Sharing is Caring
            </div><div class="row">
                This site is protected by reCAPTCHA and the Google&nbsp;
                <a href="https://policies.google.com/privacy" title="Google Privacy Policy" rel="nofollow noopener" target="_blank">Privacy Policy</a>&nbsp;and&nbsp;
                <a href="https://policies.google.com/terms" title="Google Terms of Servic" rel="nofollow noopener" target="_blank">Terms of Service</a>&nbsp;apply.
            </div></div></footer><script type="text/javascript" src="/static/CACHE/js/output.c6e095ec30ab.js"></script><!-- Google Analytics --><script>
        window.ga = window.ga || function () { (ga.q = ga.q || []).push(arguments) }; ga.l = +new Date;
        ga('create', 'UA-148407808-1', 'auto');
        ga('send', 'pageview');
    </script><script async src='https://www.google-analytics.com/analytics.js'></script><!-- End Google Analytics --></body></html>