Posted by: xSicKxBot - 05-05-2020, 08:39 PM - Forum: Windows
- No Replies
Forza Street now available on iOS and Android
Forza Street is now available globally to download on your iOS and Android devices!
This all-new Forza experience lets you jump into the game for quick, under-a-minute races where you compete to unlock new cars and upgrade parts to grow your car collection. We are excited for iOS and Android players to jump into this free to play mobile experience designed to be played anytime, anywhere, and excite anyone who loves cars.
Forza Street was also designed to be an evolving experience. The game is based in a street racing world with interesting characters, mystery, and intrigue, explored through a narrative driven campaign, weekly Spotlight Events, and limited time Themed Events, all of which provide players an opportunity to expand their car collections. For players looking for an additional challenge, weekly Rivals events let them take their collections against other players in the community in leaderboard based asynchronous challenges.
As a special gift to everyone who plays Forza Street between today and June 5 2020, players will receive a 2017 Ford GT and added in-game credits and gold to help you unlock new cars and grow your car collection! Don’t miss out on this chance to get this rare supercar added to your garage.
For gamers joining the fun via the Samsung Galaxy Store, we have two more gifts for you: anyone who downloads through the Galaxy Store on their Samsung devices will receive the 2015 Ford Mustang GT with a custom Galaxy themed paint. If players have the latest Galaxy S20 devices, they will also receive the 2015 Chevrolet Corvette Z06 with a Custom Galaxy, and in-game credits and gold.
Want to play Forza Street across multiple device? We got you covered – Forza Street supports Xbox Live. When you sign in with Xbox Live, players will be able to unlock Xbox Achievements and transfer game progress across your Windows, iOS, and Android devices.
We’re so excited to share this game with the world, and hope you enjoy! To stay up-to-date on the latest, be sure to “like” Forza Street on Facebook. Thank you for all your support, happy racing in Forza Street!
Apple: Apple and the Apple logo are trademarks of Apple Inc., registered in the U.S. and other countries. App Store is a service mark of Apple Inc.
Google: Android, Google Play and the Google Play logo are trademarks of Google Inc.
Shmup Collection Brings Three Old-School Style Shooters To Switch Next Week
Shmup fans will be delighted to hear that 3 old-school style shooters are headed to the Switch on 14th May. While they might not have the prestige of some of the best shmup games on the Switch, they come in at a low price of £13.49 for the trio on the eShop. In North America it will also be possible to buy Armed 7 DX, Satazius Next and Wolflame individually it seems.
These three shmup games are from the vaults of Astro Port studio and have been lovingly remastered for the Switch. Here’s a bit more info from the publisher, Storybird:
With ARMED SEVEN DX, discover 7 stages of pure mecha-shooting action with customisable weapons. Use all laser beams, space rockets and missiles to suit your needs. Gear up and fight!
Discover SATAZIUS NEXT the new classic shoot them up for your console. Completely redesigned and animated for more gaming pleasure, Satazius Next takes you in a galaxy far away. Lost on planet Agano, resist the attacks of space pirates and save the universe from destruction. Aim to kill to defeat your enemies.
With WOLFLAME, defend the living humanity of planet Sig Fildonia. Your mission is to destroy the invaders military base and turn Operation Wolflame into a successful resistance campaign.
Enter the futuristic resistance and use all your skills and weapons to defeat alien forces from eradicating all life forms.
Features:
– 3 Shoot Them Up classics on 1 cartridge. – All games feature a wide range of customisable weapons. – Four levels of game difficulty: from easy to insane. – Various Shmup Styles to accommodate all players.
It sounds like quite a cool package for shmup fans and collectors will no doubt want to opt for the limited edition boxed copy, although this comes at a bit of a price…
Please note that some links on this page are affiliate links, which means if you click them and make a purchase we may receive a small percentage of the sale. Please read our FTC Disclosure for more information.
Let us know if you plan to pick up the Shmup Collection when it flies on to Switch next week with a comment below.
PS5, Xbox Series X Support Added In Unreal Engine Update
Epic Games has released Unreal Engine version 4.25, with one big marquee feature to prepare it for the next generation of consoles. This release marks the initial support for the PlayStation 5 and Xbox Series X, with more support promised for subsequent updates coming this year.
The company made the announcement on the Unreal Engine blog, saying that the 4.25 branch of updates will include more optimizations and fixes for devs working on next-gen games. Some specific planned features named by the company are new audio advancements, support for online subsystems, and certain certification requirements.
This comes alongside a host of other changes and updates to the Unreal Engine as a whole regardless of platform. Epic mentions that it has been testing some features like Niagara VFX and Chaos physics in its flagship game Fortnite, which has helped shape this UE update. It also supports Microsoft's HoloLens 2 and real-time ray tracing.
How to Remove Duplicates From a Python List of Lists?
What’s the best way to remove duplicates from a Python list of lists? This is a popular coding interview question at Google, Facebook, and Amazon. In this article, I’ll show you how (and why) it works—so keep reading!
How to remove all duplicates of a given value in the list?
Method 1: Naive Method
Algorithm: Go over each element and check whether this element already exists in the list. If so, remove it. The problem is that this method has quadratic time complexity because you need to check for each element if it exists in the list (which is n * O(n) for n elements).
lst = [[1, 1], [0, 1], [0, 1], [1, 1]] dup_free = []
for x in lst: if x not in dup_free: dup_free.append(x) print(dup_free)
# [[1, 1], [0, 1]]
Method 2: Temporary Dictionary Conversion
Algorithm: A more efficient way in terms of time complexity is to create a dictionary out of the elements in the list to remove all duplicates and convert the dictionary back to a list. This preserves the order of the original list elements.
lst = [[1, 1], [0, 1], [0, 1], [1, 1]] # 1. Convert into list of tuples
tpls = [tuple(x) for x in lst] # 2. Create dictionary with empty values and
# 3. convert back to a list (dups removed)
dct = list(dict.fromkeys(tpls)) # 4. Convert list of tuples to list of lists
dup_free = [list(x) for x in lst] # Print everything
print(dup_free)
# [[1, 1], [0, 1], [0, 1], [1, 1]]
All of the following four sub methods are linear-runtime operations. Therefore, the algorithm has linear runtime complexity and is more efficient than the naive approach (method 1).
Convert into a list of tuples using list comprehension[tuple(x) for x in lst]. Tuples are hashable and can be used as dictionary keys—while lists can not!
Convert the list of tuples to a dictionary with dict.fromkeys(tpls) to map tuples to dummy values. Each dictionary key can exist only once so duplicates are removed at this point.
Convert the dictionary into a list of tuples with list(...).
Convert the list of tuples into a list of lists using list comprehension [list(x) for x in lst].
Each list element (= a list) becomes a tuple which becomes a new key to the dictionary. For example, the list [[1, 1], [0, 1], [0, 1]] becomes the list [(1, 1), (0, 1), (0, 1)] the dictionary {(1, 1):None, (0, 1):None}. All elements that occur multiple times will be assigned to the same key. Thus, the dictionary contains only unique keys—there cannot be multiple equal keys.
As dictionary values, you take dummy values (per default).
Then, you convert the dictionary back to a list of lists, throwing away the dummy values.
Do Python Dictionaries Preserve the Ordering of the Keys?
Surprisingly, the dictionary keys in Python preserve the order of the elements. So, yes, the order of the elements is preserved. (source)
This is surprising to many readers because countless online resources like this one argue that the order of dictionary keys is not preserved. They assume that the underlying implementation of the dictionary key iterables uses sets—and sets are well-known to be agnostic to the ordering of elements. But this assumption is wrong. The built-in Python dictionary implementation in cPython preserves the order.
Here’s an example, feel free to create your own examples and tests to check if the ordering is preserved.
You see that the order of elements is preserved so when converting it back, the original ordering of the list elements is still preserved:
print(list(dic))
# ['Alice', 'Bob', 1, 2, 3]
However, you cannot rely on it because any Python implementation could, theoretically, decide not to preserve the order (notice the “COULD” here is 100% theoretical and does not apply to the default cPython implementation).
If you need to be certain that the order is preserved, you can use the ordered dictionary library. In cPython, this is just a wrapper for the default dict implementation.
Method 3: Set Conversion
Given a list of lists, the goal is to remove all elements that exist more than once in the list.
Sets in Python allow only a single instance of an element. So by converting the list to a set, all duplicates are removed. In contrast to the naive approach (checking all pairs of elements if they are duplicates) that has quadratic time complexity, this method has linear runtime complexity. Why? Because the runtime complexity of creating a set is linear in the number of set elements. Now, you convert the set back to a list, and voilà, the duplicates are removed.
lst = list(range(10)) + list(range(10))
lst = list(set(lst))
print(lst)
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # Does this also work for tuples? Yes! lst = [(10,5), (10,5), (5,10), (3,2), (3, 4)]
lst = list(set(lst))
print(lst)
# [(3, 4), (10, 5), (5, 10), (3, 2)]
However, converting a list to a set doesn’t guarantee to preserve the order of the list elements. The set loses all ordering information. Also, you cannot create a set of lists because lists are non-hashable data types:
>>> set([[1,2], [1,1]])
Traceback (most recent call last): File "<pyshell#0>", line 1, in <module> set([[1,2], [1,1]])
TypeError: unhashable type: 'list'
But we can find a simple workaround to both problems as you’ll see in the following method.
Linear-Runtime Method with Set to Remove Duplicates From a List of Lists
This third approach uses a set to check if the element is already in the duplicate-free list. As checking membership on sets is much faster than checking membership on lists, this method has linear runtime complexity as well (membership has constant runtime complexity).
lst = [[1, 1], [0, 1], [0, 1], [1, 1]] dup_free = []
dup_free_set = set()
for x in lst: if tuple(x) not in dup_free_set: dup_free.append(x) dup_free_set.add(tuple(x)) print(dup_free)
# [[1, 1], [0, 1]]
This approach of removing duplicates from a list while maintaining the order of the elements has linear runtime complexity as well. And it works for all programming languages without you having to know implementation details about the dictionary in Python. But, on the other hand, it’s a bit more complicated.
Where to Go From Here?
Enough theory, let’s get some practice!
To become successful in coding, you need to get out there and solve real problems for real people. That’s how you can become a six-figure earner easily. And that’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?
Practice projects is how you sharpen your saw in coding!
Do you want to become a code master by focusing on practical code projects that actually earn you money and solve problems for people?
Then become a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.
S.S.S. Day 21: Store Top Picks & Fruitbat Factory Spring Sale
[www.indiegala.com] Be on the look-out for some huge discounts on your favorite games + a Scratch Card containing a BONUS secret Steam game for every store purchase. Here's this week top recommendations:
Random: Major UK Bank Creates Free Switch Game To Teach Kids About Money
Any readers of a certain age from the UK will no doubt remember NatWest’s promotional piggy banks; way before Pokémon was a thing, these were the ultimate collectables and are now worth a pretty penny.
But times have changed, and the National Westminster Bank has made the jump to releasing video games for the Switch in order to indoctrinate young ‘uns about the benefits of being a good saver.
Introducing Island Saver which lands on the Switch on 13th May. This free-to-play game will see the player going around various terrains, cleaning things up so you can save the living piggy banks. We have very little idea what’s going on, so here’s the official game bio to explain it a bit better:
Welcome to Savvy!
A group of amazing islands need your help! Horrid plastic waste has washed up and you need to sort it out with your trusty Trash Blaster! But look out for the Litterbugs. They love mess and they’re out to muck things up.
You need to wash away gloop, collect litter, earn coins and rescue the bankimals! These special animals are living piggy banks and with them you can help save the Savvy Islands and make things good again.
FEATURES
– Tropical jungles – the icy arctic – dusty deserts – volcanoes – explore them all as you clean up the islands. – 42 bankimals to save – can you rescue them all? – Find bankimals you can ride and use their powers to access new areas – Help Kiwi find his missing nest eggs! – Collect coins and discover spending, saving, and more!
Expectations should probably be kept quite low for this effort, but this free-to-play game might well offer a few hours of fun for younger gamers in your household and teach them a valuable lesson about being smart with their money and the environment.
Let us know what you make of Island Saver with a comment below.
Posted by: xSicKxBot - 05-05-2020, 08:21 AM - Forum: Python
- No Replies
How to Read a CSV File Into a Python List?
6 min read
How to read data from a .csv file and add its column or row to the list? There are three main ways:
Option 1 (the quickest): use the standard library
Option 2 (the most preferred): use pandas.read_csv()
Option 3 (optional): use csv.reader()
Short answer
The simplest option to read a .csv file into a list is to use it with open(“file”) as f: and apply the actions you need. You should also remember that such an approach has its limitations, as you’ll see in the tutorial.
Prerequisites
To read the .csv file, I used the following tools:
Sublime Text Editor for a manual check of the .csv file
By default, you can read CSV files using other tools or even default, pre-installed programs you have on your machine, so it is just a matter of choice what tools to use. The codebase can be executed anywhere with the same results.
What is the CSV Format?
Nowadays, three main data formats are used for passing data from one machine to another: CSV, XML, and JSON.
The abbreviation CSV stands for “comma-separated values”. As the name implies, it is just a list of elements separated by commas. It is the most straightforward format to transfer data and should be used if
you need the most compact file size, or
you have a flat data structure.
Keep in mind that CSV files do not give you such flexibility in presenting the data as the other two options.
This is a real-world task in a simplified form. The goal is to read data from CSV file (70 KB) and form a list of all series codes present in the second line of it.
The provided data is an open statistical data from the European Central Bank (ECB) in CSV format and present financial flows during the period. The file consist of three main fields:
series code
observed date (period, e.g., 2019Q4, 2020Q1, etc.)
To focus on the parsing option, I suggest you download and extract a file beforehand. In the examples, the file will be placed on the Desktop, but you can put it anywhere you like.
Script:
import os import wget link = "http://sdw.ecb.europa.eu/export.do? mergeFilter=&removeItem=L&REF_AREA.252=I8&COUNTERPART_AREA.252=W0 &rc=&ec=&legendPub=published&oc=&df=true&DATASET=0&dc=&ACCOUNTING _ENTRY.252=A&node=9689710&showHide=&removedItemList=&pb=&legendNo r=&activeTab=&STO.252=F&STO.252=K7&STO.252=KA&STO.252=LE&legendRe f=reference&REF_SECTOR.252=S1&exportType=csv&ajaxTab=true" path = f"C:{os.environ['HOMEPATH']}\\Desktop\\data.csv" wget.download(link, path)
Script breakdown:
import os import wget
Import statements are used to install code base which was written by someone else before and is ready to use just by referring to it. Some them (e.g. wget) should be additionally installed using similar command:
The following command will install the latest version of a module and its dependencies from the Python Packaging Index:
python -m pip install SomePackage
os package is used to perform basic operation with files and folders in your operating system.
wget package is used to download files from websites.
link = "http://sdw.ecb.europa.eu/export.do? mergeFilter=&removeItem=L&REF_AREA.252=I8&COUNTERPART_AREA.252=W0 &rc=&ec=&legendPub=published&oc=&df=true&DATASET=0&dc=&ACCOUNTING _ENTRY.252=A&node=9689710&showHide=&removedItemList=&pb=&legendNo r=&activeTab=&STO.252=F&STO.252=K7&STO.252=KA&STO.252=LE&legendRe f=reference&REF_SECTOR.252=S1&exportType=csv&ajaxTab=true"
The string variable link is created which represents a direct download link. This link can be easily tested in any web-browser.
string variable path is created which represents a path in your system where files will be downloaded later.
The prefix “f” before the string makes it an “f-string” which means that you can use other variables in the string by using {placeholders}. In this case, variable os.environ[‘HOMEPATH’] refers to system variable (declared in the Windows system by default, not in your python script) and puts it into a string we just created. By default, HOMEPATH refers to the current user by C:\Users\%user% (you).
wget.download(link, path)
The function call wget.download() triggers the file download from previously specified link and saves it by previously specified path.
The result of this step is a ready-to-use CSV file on your Desktop. Now we can parse data from CSV file and extract series codes to list.
Data Exploration
It is a good practice to explore data before you start parsing it. In this case, you can see that series codes are present in the second row of data.csv.
Option 1 (the Fastest): Use the Standard Library
This is the fastest option of reading a file using the standard library. Assuming the file is prepared and located on your Desktop, you can use the script below. This is the easiest way of getting data on the list. However, it has its drawbacks.
Input:
import os path = f"C:{os.environ['HOMEPATH']}\\Desktop\\data.csv" with open(path, "r") as f: print(list(f.readlines()[1].split(","))[1:])
with open(path, "r") as f: print(list(f.readlines()[1].split(","))[1:])
The import statement and variable assignment is skipped as it was described previously and the main attention is given to the last statements.
This is a combined statement of three parts:
The “with” statement, in the general meaning, allows us to define what code block (actions) we want to do with the object while it is “active”. In this case, we want to tell python that it has to do some actions while the file is open, and when all statements are completed, close it.
The “open” statement allows us to open a file and place it is into Python memory. In this case, we open the previously given file (“path” variable) in “r” mode, which stands for “read”-only mode.
The “print” statement allows you to see output on your screen. In this case we
take file object f with open(path, 'r') as f,
read second line with f.readlines()[1],
split the line by the , separator in f.readlines()[1].split(“,”),
convert the to list list(f.readlines()[1].split(“,”)),
return the list starting from second element as the first one is empty in list(f.readlines()[1].split(“,”))[1:], and
print the result in print(list(f.readlines()[1].split(“,”))[1:]).
There is no specific documentation as this code base uses standard library which is built-in in Python.
Pros/Cons: Such an approach allows the user to get an instant view of the CSV file and select the required data. You can use this for spot checks and simple transformations. It is important to remember that such an approach has the lowest amount of adjustable settings, and it requires lots of workarounds when transformations are complicated.
Option 2 (the Most Preferred): Use pandas.read_csv()
The most preferred option of reading .csv file is using the Pandas library (Pandascheat sheets here). Pandas is a fast, powerful, flexible, and easy to use open-source data analysis and manipulation tool, built on top of the Python programming language.
Pandas is usually used for more advanced data analysis where data is stored in a “DataFrame” which is basically like a table in excel. A DataFrame has a header row and an index column so that you can refer to table values by “column x row” intersection.
Script:
import os import pandas as pd path = f”C:{os.environ[‘HOMEPATH’]}\\Desktop\\data.csv” df = pd.read_csv(path, delimiter=”,”, skiprows=[0]) list = df.columns.to_list()[1:] print(list)
In this dataframe, variable df is created from the .csv file by executing pandas method read_csv. In this case the method requires several arguments: file, delimiter and skiprows.
The file is the same as used before. The delimiter is “,” which is a default option for .csv files, and it might be skipped. But it’s good to know that you can use any other delimiter.
list = df.columns.to_list()[1:] print(list)
This line selects the column headers and puts them into a list starting from the second element going forward. The result is printed.
Pros/Cons: Such an approach is relatively fast, visually appealing to the reader, and is fully adjustable using a consistent approach. Comparing to the first option when standard libraries are used, it requires additional packages to be installed. I personally believe that it is not a problem, and such a drawback can be neglected. But another point should not be skipped — the amount of data. This approach is inefficient when you need lots of “side” data, which is useless for your purpose.
Full documentation is available here with more guides and instructions on how to use it.
Option 3 (optional): use csv.reader()
There is also another way how to read .csv files, which might be useful in certain circumstances. The csv module implements classes to read and write tabular data in CSV format. It allows programmers to say, “write this data in the format preferred by Excel,” or “read data from this file which was generated by Excel,” without knowing the precise details of the CSV format used by Excel. Programmers can also describe the CSV formats understood by other applications or define their own special-purpose CSV formats.
Script:
import os import csv path = f"C:{os.environ['HOMEPATH']}\\Desktop\\data.csv" with open(path, 'r') as f: wines = list(csv.reader(f, delimiter=","))[1][1:]
with open(path, 'r') as f: wines = list(csv.reader(f, delimiter=","))[1][1:]
csv.reader() is a method which allows you to parse .csv file with specified delimiter.
After that, we select the second row using first brackets “[1]” and after that, select all elements from that list starting from second “[1:]” using slicing.
Pros/Cons: Such an approach is relatively simple and has just a few lines of code. On the other hand, it requires an additional package to be installed.
Summary
You should remember that there are different ways of reading data from CSV files. Select the one which suits your needs most or has the best performance and runtime.
Where to Go From Here?
Enough theory, let’s get some practice!
To become successful in coding, you need to get out there and solve real problems for real people. That’s how you can become a six-figure earner easily. And that’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?
Practice projects is how you sharpen your saw in coding!
Do you want to become a code master by focusing on practical code projects that actually earn you money and solve problems for people?
Then become a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.
Scratchy Spring Sale Day 19: CAPCOM Spring Sale, up to -80%
[www.indiegala.com] The Scratchy Sale brings the Capcom's finest. Be on the look-out for some huge discounts on your favorite games + a Scratch Card containing a BONUS secret Steam game for every store purchase.
Posted by: xSicKxBot - 05-05-2020, 08:21 AM - Forum: Windows
- No Replies
Next evolution of Azure VMware Solution announced
Today, I’m excited to announce the preview of the next generation of Azure VMware Solution, designed, built, and supported by Microsoft and endorsed by VMware.
With the current economic environment, many organizations face new challenges to find rapid and cost-effective solutions that enable business stability, continuity, and resiliency. The new Azure VMware Solution empowers customers to seamlessly extend or completely migrate their existing on-premises VMware applications to Azure without the cost, effort, or risk of re-architecting applications or retooling operations. This helps our customers gain cloud efficiency and enables them to innovate at their own pace with Azure services across security, data, and artificial intelligence, as well as unified management capabilities. Customers can also save money with Windows Server and SQL Server workloads running on Azure VMware by taking advantage of Azure Hybrid Benefits.
Microsoft first party service
The new Azure VMware Solution is a first party service from Microsoft. By launching a new service that is directly owned, operated, and supported by Microsoft, we can ensure greater quality, reliability, and direct access to Azure innovation for our customers while providing you with a single point of contact for all your needs. With today’s announcement and our continued collaboration with VMware, the new Azure VMware Solution lays the foundation for our customers’ success in the future.
Sanjay Poonen, Chief Operating Officer at VMware commented, “VMware and Microsoft have a long-standing partnership and a shared heritage in supporting our customers. Now more than ever it is important we come together and help them create stability and efficiency for their businesses. The new Azure VMware Solution gives customers the ability to use the same VMware foundation in Azure as they use in their private data centers. It provides a consistent operating model that can increase business agility and resiliency, reduces costs, and enable a native developer experience for all types of applications.”
These comments were echoed by Jason Zander, Executive Vice President at Microsoft, who said, “This is an amazing milestone for Microsoft and VMware to meet our customers where they are today on their cloud journey. Azure VMware Solution is a great example of how we design Azure services to support a broad range of customer workloads. Through close collaboration with the VMware team, I’m excited that customers running VMware on-premises will be able to benefit from Azure’s highly reliable infrastructure sooner.”
The new solution is built on Azure, delivering the speed, scale, and high availability of our global infrastructure. You can provision a full VMware Cloud Foundation environment on Azure and gain compute and storage elasticity as your business needs change. Azure VMware Solution is VMware Cloud Verified, giving customers confidence they’re using the complete set of VMware capabilities, with consistency, performance, and interoperability for their VMware workloads.
Access to VMware technology and experiences
Azure VMware Solution allows you to leverage your existing investments, in VMWare skills and tools. Customers can maintain operational consistency as they accelerate a move to the cloud with the use of familiar VMware technology including VMWare vSphere, HCX, NSX-T, and vSAN. Additionally, the new Azure VMware Solution has an option to add VMware HCX Enterprise, which will enable customers to further simplify their migration efforts to Azure including support for bulk live migrations. HCX also enables customers running older versions of vSphere on-premises to move to newer versions of vSphere seamlessly running on Azure VMware Solution.
Seamless Azure integration
Through integration with Azure management, security, and services, Azure VMware Solution provides the opportunity for customers to continue to build cloud competencies and modernize overtime. Customers maintain the choice to use the native VMware tools and management experiences they are familiar with, and incrementally leverage Azure capabilities as required.
As we look to meet customers where they are today, we are deeply investing in support for hybrid management scenarios, and automation that can streamline the journey. We are excited to announce more about future hybrid capabilities as they relate to Azure VMware Solution, soon.
Leverage Azure Hybrid Benefit pricing for Microsoft workloads
Take advantage of Azure as the best cloud for your Microsoft workloads running in Azure VMware Solution with unmatched pricing benefits for Windows Server and SQL Server. Azure Hybrid Benefit extends to Azure VMware Solution allowing customers with software assurance to maximize the value of existing on-premises Windows Server and SQL Server license investments when migrating or extending to Azure. In addition, Azure VMware Solution customers are also eligible for three years of free Extended Security Updates on 2008 versions of Windows Server and SQL Server. The combination of these unmatched pricing benefits on Azure ensures customers can simplify cloud adoption with cost efficiencies across their VMware environments.
In addition, at general availability Reserved Instances will also be available for Azure VMware Solution customers, with one-year and three-year options on dedicated hosts.
Global availability and expansion
The Azure VMware Solution preview is initially available in US East and West Europe Azure regions. We expect the new Azure VMware Solution to be generally available in the second half of 2020 and at that time, availability will be extended across more regions. Plans on regional availability for Azure VMware Solution will be made available here as they are disclosed.
To register your interest in taking part in the Azure VMware Solution preview, please contact your Microsoft Account Representative or contact our sales team.
Learn more about Azure VMware Solution on the Azure website.
Posted by: xSicKxBot - 05-05-2020, 08:20 AM - Forum: Lounge
- No Replies
Phil Spencer says COVID-19 could delay Xbox Series X launch titles
Microsoft gaming VP Phil Spencer dropped by CNBC’s “Squawk Alley” with a bit of good and bad news yesterday. The good news is that the Xbox Series X appears to be on track for its late 2020 release, despite COVID-19’s impact on the global supply chain.
The bad news is that some planned launch titles may not join the platform’s launch after all. Spencer didn’t confirm any specific delays, but explained to CNBC viewers that game production is “the bigger unknown” in how COVID-19 might impact the Xbox Series X’s launch.
“Game production is a large scale entertainment activity now, you have hundreds of people coming together, building assets, working through creative,” Spencer explained. He said that Microsoft is comitted to developers’ safety and security, and it won’t just “push when things aren’t ready.”
Spencer’s tone appeared to be optimistic, but it’s the first public acknowledgment we’ve heard from Sony or Microsoft that a once-in-a-century global pandemic could impact their planned product launches.
Developers everywhere are still trying to adapt to COVID-19’s impact on their process. Though many say the remote work isn’t the problem, the tiny changes in the game development process appear to be impacting some developers already.