by Contributed | Apr 21, 2021 | Technology
This article is contributed. See the original author and article here.
Earlier this year, Packt released a new book…

http://aka.ms/VS2019Book
But I should be honest. I was involved in this book. Let me find a version of the cover with my name on it…

There you go. I wrote the foreword! It was a great and wonderful thing! At least, I think it was. I really can’t remember what I wrote. I’ll go read it…
Oh, I like how I opened the foreword…
“By combining Visual Studio Code and Visual Studio (VS), the brand is over two times more commonly used by developers than any other environment (Stack Overflow, 2019). What that means is that this topic for 80% of all developers.”
Have you thought about that? In this day and age, when there are so many IDE options for developers to pick from, they simply are choosing Visual Studio. There are many reasons why developers want to use Visual Studio, including compatibility with languages and tools, as well as various feature sets.
And that’s really what this book is about. As I said/wrote in my foreword, the authors (Paul Schroeder and Aaron Cure) have cracked the code! If you apply the snippets, templates, git tips, and extension-based practices that you’ll find in this book, then not only will you become more efficient, but you’ll also become your team’s hero and thought leader!
Before I move on, did you notice how weird the subtitle was in the top version of the book cover? Let’s inspect it:
“A developer’s guide to mastering in core skills with the IDE and unlock advanced productivity secrets.”
You could probably read that sentence for 20 minutes before you decipher and interpret all its secrets. Moving on…
Let’s take a look at what the topics are…
- Flavors of Visual Studio
- Keyboard Shortcuts
- IDE Tips and Tricks
- Working with a Repository
- Working with Snippets
- Database Explorers
- Compiling, Debugging, and Versioning
- Introduction to Project and Item Templates
- Creating Your Own Templates
- Deploying Custom Templates
- Overviewing Visual Studio 2019 Extensions
- Overviewing VS Code Extensions
- CodeMaid is Your Friend
- Be Your Team’s Hero with CodeGenHero
- Secure Code with Puma Scan
- Appendix: Other Popular Productivity Extensions
I know what you’re thinking! You’re thinking, “Is overviewing a word?” Yes, yes it is a word! More specifically, it’s the present participle of a word.
Anyway, the reason why I wanted to write the foreword (and blog about it), is because I truly believe in the value. Developers don’t use templates, especially, to the degree that they could. Plus, you’ll peruse a plethora of other topics that you’d be wise to glean from.
Also, one interesting tidbit is that the author is partially at fault for the extension featured in chapter 14, CodeGenHero. So check that out!
Whilst perusing the Amazons, I saw the reviews for the book, and they’re pretty impressive. I want to give you just the titles of the reviews here, so you can see what I mean:
- “Useful Visual Studio shortcuts, Git-Jitsu, snippet and debugging knowledge here.” – Dan Hermes
- “Clear and concise with good examples to draw upon for furthering learning.” – Robert Frey
- “This one is a must have!” – Binit Datta
- “Learn everything about Visual Studio 2019.” – Yusuf
- “Excellent for those with some C# programming experience.” – Ben Miller
This book is great for noobs and still useful for ratchety, engineering curmudgeons. So check it out, and leave a review on the Amazons:
Remember to keep your mask on your face, your feet on the ground, and your head in the Cloud!
Ed
by Contributed | Apr 21, 2021 | Technology
This article is contributed. See the original author and article here.
Joao Couto VP, SAP Business Unit, Microsoft
This blog post has been co-authored by Prakash Pattaiyan, Principal Program Manager, SAP on Azure
Enterprises are rapidly adopting cloud, reducing their reliance on in-house managed infrastructure by turning to Microsoft Azure to benefit from hyperscale features, agility, and gain competitive advantage. Yet, for organizations running mission-critical instances such as SAP, the journey to cloud can appear to be complex with high risk and uncertainty.
Migrating SAP systems to the cloud comes with unique business and technical challenges as compared to other enterprise applications. Most organizations require an accelerated timeline, from discovery to go live, with zero to no downtime and implementation of best practices.
Transforming your SAP to cloud will require a fundamental examination of your infrastructure, data and business processes. To accelerate this phase, teams will need to quickly find inventory and ensure target architecture is properly sized to realize the full benefits of SAP on Azure. Post migration planning, IT organizations should look to avoid the high risk and uncertainty of the cloud migration by using repeatable processes and implementation of best practices from a Microsoft and SAP certified solution.
Customers need a solution that minimizes the risk and reduces cost by leveraging an automation factory that ensures repeatability and scalability all while achieving a technically and financially optimized SAP on Azure environment. To reduce the complexity, accelerate the timeline and ensure success, Microsoft has partnered with Protera, an SAP-certified, Microsoft Gold Cloud Partner as a Preferred Partner for SAP migrations to Azure.
Leveraging Automation to Accelerate Migration and Reduce Complexity
Based on the experience of over 500 migrations and management of over 2500 systems, Protera has developed a smarter way to migrate and manage SAP on Azure combining the most up-to-date knowledge of SAP and Azure with a powerful platform, Protera FlexBridge®. Customers choosing Microsoft Azure can take advantage of Protera services and Protera FlexBridge® to shorten their journey to Azure and modernize their SAP operations to quickly achieve their transformation objectives with the following:
SAP on Azure Transformation Assessment Customers currently running SAP use the Protera FlexBridge® platform to generate and validate their transformation plans to Azure, whether As-Is, Technical, SAP HANA or SAP S/4HANA.
The assessment includes:
- Current state analysis, migration methodology, project timeline, and migration readiness
- Collection of customer environment data including hypervisor, operating system, database, network, storage, and application metrics by utilizing Azure Migrate and FlexBridge ABAP Assessment App
- Possible Transformations options are provided for the customer’s SAP Applications
- Target architecture table and diagram showing type and version of operating system, database, SAP application Azure VM SKU, storage SKU, and network interfaces
- Cost for migration, Azure IaaS with PAYGO and Reserved terms, and managed services
Clarification of customer engagement (testing, etc.) defining roles & responsibilities for the migration project; Recommendations on backup and security
Intelligent Provisioning and Migration Quickly and securely migrate and optimize your SAP and related applications on Azure using powerful automations powered by Protera FlexBridge® which includes:
- Rapid provisioning of Azure infrastructure including: networking, security groups, VMs built from customer or Marketplace images and storage
- Migration automation to orchestrate the steps to migrate each server to Azure by using certified tools including Azure Migrate, SAP SWPM and SAP SUM and monitor migration health
Managed SAP on Azure Services Run SAP and related systems on Azure at a lower cost, increased performance, higher service levels and greater visibility, with continuous optimization using automations to operate consistently at scale. Services include:
- Dashboard of operational metrics including SLA, performance metrics for Azure as well as SAP application performance
- Service desk integration to customers’ service desk
- Azure spend analysis and optimization
- SAP Maintenance Automation
- Operating System, Database and SAP patching
- SAP System Copy
- Environment snoozing to reduce cost
Through the preferred partnership between Microsoft and Protera, multiple teams at both companies are committed to work together to simplify and accelerate SAP migrations to Azure for our customers using the powerful automation tool Protera FlexBridge®. Microsoft customers can leverage this expanded partnership to take advantage of the repeatable, automated, low risk migration methods that fit to the approved templates of SAP and Microsoft. We are very excited to have Protera as Microsoft’s Preferred Partner for SAP on Azure migrations.
Learn More
If you would like to learn more about Protera
eBook: A Smarter Cloud for Your SAP
Solution Brief: Protera Flexbridge® for SAP on Azure
To learn more about migrating SAP on Azure, visit:
SAP on Azure Migration – SAP Intelligent Enterprise | Microsoft Azure
by Contributed | Apr 21, 2021 | Technology
This article is contributed. See the original author and article here.
CU2 for BizTalk Server 2020 is now available for download.
For details on fixes and download link, please follow the master KB:
https://support.microsoft.com/help/5003151
You may want to bookmark this index page for updates related to BizTalk Server:
https://support.microsoft.com/help/2555976
As with CU1, the EN download is available by default. All other language packages will be made available on need basis. If a download is not available for the supported BizTalk language that you need, please contact us for the same.
As a quick reminder, for BizTalk Developer Tools please also update/install version 3.13.2.0 of the BizTalk Server Visual Studio extension in addition to installing the CU package. The extension can be installed from https://marketplace.visualstudio.com/items?itemName=ms-biztalk.BizTalk or from within Visual Studio – Manage Extensions. Please note that we have not updated the extension since CU1 so you can skip this step if you have already installed it previously.
by Contributed | Apr 21, 2021 | Technology
This article is contributed. See the original author and article here.
Fluent UI icons
Power Apps offers you a variety of icons – and recently, there were nice additions announced and rolled out. But if we want to create even more appealing apps, it makes sense to extend our pretty little icon library. Microsoft provides us with Fluent UI.
Fluent UI is a collection of UX frameworks for creating beautiful, cross-platform apps that share code, design, and interaction behavior
One part of Fluent UI is the iconography
How to get Fluent UI icons
You can browse through the icons in the Fluent UI icons tool, but there is right-click download option. As a developer, you can import Fluent UI iconography (and more) into your applications; for Power Apps, there a different way how to use them:
Use a community-driven tool to import icons to Power Apps
there are several tools available to get Fluent UI icons into Power Apps; find two of them here:
However, if you only want to use a few specific icons for an app or would like to try them out, you can head over to the Fluent UI repository on GitHub and right-click-download the icons. After that, you upload them to your Power App and can use them like any other image. Super cool: You get all icons as .svg files, which have three significant advantages:
.svg are transparent, which means you have no extra work to remove any background
.svg are lossless scalable, which means that you blow them up as you like it
.svg have are usually smaller than .jpg files of the same quality – this will have an excellent effect on the performance of your app
Pop-Ups
Screens in Power Apps are perfect for displaying information that should always be shown. But what if we only want to show some more content occasionally? Pop up to the rescue!
To create a pop up effect, create:

a rectangle that overlays the content that our user now should not focus on – good idea to have it filled grey and semi-transparent
a rectangle, smaller than the GreyOutRectangle, filled in in brighter background-color
a text label which shows the information
a cancel icon
Group these controls; it’s easier to work with them then.
Now create a textlabel (or a button, or an image… something that our user will click on to see the pop up).
Set the .onSelect property of this label to UpdateContext({isShowPopUp:true})
Set the .onSelect propert of the cancel icon to UpdateContext({isShowPopUp:false})
Set the .visible property of the whole PopUp Group tp isShowPopUp
This way, we set the isShowPopUp variable to true, if the user clicks the label, which will make the PopUp visible. As soon as the user clicks the cancel icon, the isShowPopUp variable is set to false, which means that the group will not be shown anymore!
Create an expand- and collapse able menu
As we need to deal with all screen estate carefully, it is a fantastic idea to have a menu that can expand and collapse. To create this, we need
a collection that holds the screens that we want our users to allow to navigate to
a gallery, which displays the items of our collection
a Hamburger Menu icon, which sets a variable to control the width of the gallery
- collection
To have icons (which will show while the menu is collapsed) and text (that will show up right next to our icons when the menu is expanded), we will first upload a few svgs (see above) and then refer to them in our collection:
ClearCollect(
NavigationMenu,
{
Row: 1,
Title: "About",
Image: ic_fluent_lightbulb_24_regular
},
{
Row: 2,
Title: "Flights",
Image: ic_fluent_airplane_take_off_24_regular
},
{
Row: 3,
Title: "Hotels",
Image: ic_fluent_bed_24_regular
},
{
Row: 4,
Title: "People",
Image: ic_fluent_people_32_regular
}
)
)
- Gallery
We create a gallery and set the .items property to our collection
We set the .width property to If(!IsExpand, 200, 50) or similar – first value is the expanded width, second is the non-expanded (collapsed) width.
As we want to pretty things up a little bit,
- Hamburger menu
we add a hamburger menu icon and set its .onSelect property to Set(IsExpand, !IsExpand)
- adjust all other controls on the screens
Now work on the .X property of all labels, buttons, images, etc. Set it to
If(!IsExpand, <original value>,<originalvalue>-150)
Our result should look something like this:
Feedback and what’s next?
What are your little tricks to make apps look more beautiful? I am curious to learn from you! Please comment below!
by Contributed | Apr 21, 2021 | Technology
This article is contributed. See the original author and article here.
Late last year, the Open-Source Databases on Azure Team announced the Preview release of Azure Database for MySQL Flexible Server to provide customers with greater control and manageability. Today, we’re pleased to let you know that the PowerShell module for MySQL Flexible Server is now available. Developers can use now use PowerShell to manage MySQL Flexible Servers and dependent resources. Detailed development documentation and examples are available in the topic Az.MySql.
Provision a server quickly and easily
To provision an instance of MySQL Flexible Server, developers can run the following command:
$server = New-AzMySqlFlexibleServer
Creating Resource Group group28382412...
Creating new vnet vnet-server2867384 in resource group group28382412...
Creating new subnet subnet- server2867384 in resource group group28382412 and delegating it to Microsoft.DBforMySQL/flexibleServers...
Creating MySQL server server2867384...
Your server is using sku Standard_D2ds_V4 (Paid Tier). Please refer to https://aka.ms/mysql-pricing for pricing details...
Creating database flexibleserverdb...

The example above shows that the module creates the associated resource group, default database, and network resource – the default network option is to create a server within a VNET and subnet.
Server properties (e.g., location, SKU, storage size etc.) are set to default values. To see all the properties in the $server object, run to following command:
Write-Host ($server | Format-List | Out-String)
For example, the generated password is saved as a SecureString in SecuredPassword.
Provision a server with private or public access
To set up an instance of MySQL Flexible Server more quickly, the w-AzMySqlFlexibleServer cmdlet provides options for private and public accessibility. As a result, you can create a server with a private network or a network open to public access. The detailed scenarios are below.
Private access
To set up a network with private access, use the following commands.
Scenario |
Command |
Existing VNET and Subnet (name or resource Id) |
New-AzMySqlFlexibleServer –Vnet <vnet name/Id> -Subnet <subnet name/Id> |
Existing VNET (name or resource Id) |
New-AzMySqlFlexibleServer -Vnet <vnet name/Id> |
New VNET and Subnet – provide name |
New-AzMySqlFlexibleServer -Vnet <vnet name> -Subnet <subnet name> -VnetPrefix 10.0.0.0/16 -SubnetPrefix 10.0.0.0/24 |
Public access
To set up a network with public access, use the following commands.
Scenario |
Command |
Allow all IPs from 0.0.0.0-255.255.255.255 |
New-AzMySqlFlexibleServer -PublicAccess All |
Allow access to your client IP only |
New-AzMySqlFlexibleServer -PublicAccess <Client IP> |
Allow all IPs within a range |
New-AzMySqlFlexibleServer -PublicAccess <Start IP>-<End IP> |
Allow access to all Azure Services |
New-AzMySqlFlexibleServer -PublicAccess 0.0.0.0 |
No public access, but add allowed IPs later* |
New-AzMySqlFlexibleServer -PublicAccess none |
*You need to add allowed IPs using the `New-AzMySqlFlexibleServerFirewallRule` command.
Connect to your server easily
After provisioning your instance of MySQL Flexible Server, you can easily test the connection and obtain the connection string in the programming language you are using.
To test the connection to your server and try out a simple query, use the Test-AzMySqlFlexibleServerConnect cmdlet
PS C:> Get-AzMySqlFlexibleServerConnect -ResourceGroupName PowershellMySqlTest
-Name mysql-test -AdministratorLoginPassword $password
The connection testing to mysql-test.database.azure.com was successful!
PS C:> Get-AzMySqlFlexibleServerConnect -ResourceGroupName PowershellMySqlTest
-Name mysql-test -AdministratorLoginPassword $password -Query "SELECT * FROM test"
col
-----
1
2
To obtain the connection string for programming language in which you are developing, use the Get-AzMySqlFlexibleServerConnectionString cmdlet.
PS C:> Get-AzMySqlFlexibleServerConnectionString -Client Python
-ResourceGroupName PowershellMySqlTest -Name mysql-test
cnx = mysql.connector.connect(user=mysql_user, password="{your_password}", host="mysql-test.mysql.database.azure.com", port=3306, database="{your_database}", ssl_ca="{ca-cert filename}", ssl_disabled=False)
PS C:> Get-AzMySqlFlexibleServer -ResourceGroupName PowershellMySqlTest
-ServerName mysql-test | Get-AzMySqlFlexibleServerConnectionString -Client PHP
$con=mysqli_init(); mysqli_real_connect($con, "mysql-test.mysql.database.azure.com", "mysql_test", {your_password}, {your_database}, 3306);
Additional resources
For more information, consult the following resources.
You can also manage MySQL Flexible Servers by using the Azure CLI or SDKs at your convenience. To develop on other platforms, check out the following resources.
Recent Comments