Pull to refresh

All streams

Show first
Period
Level of difficulty

Little great things about Visual Studio 2019

Reading time4 min
Views3.1K

A few days ago, we announced the general availability of Visual Studio 2019. But I’ve been using Visual Studio 2019 exclusively since the first internal build – long before the release of Preview 1 in December of 2018. During this time, there has been a lot of little features that have put a smile on my face and made me more productive.


I want to share a few of them with you since they are not all obvious and some require you to change some settings. Let’s dive in.


Read more →

SIMD Extension to C++ OpenMP in Visual Studio

Reading time5 min
Views5K

In the era of ubiquitous AI applications there is an emerging demand of the compiler accelerating computation-intensive machine-learning code for existing hardware. Such code usually does mathematical computation like matrix transformation and manipulation and it is usually in the form of loops. The SIMD extension of OpenMP provides users an effortless way to speed up loops by explicitly leveraging the vector unit of modern processors. We are proud to start offering C/C++ OpenMP SIMD vectorization in Visual Studio 2019.


The OpenMP C/C++ application program interface was originally designed to improve application performance by enabling code to be effectively executed in parallel on multiple processors in the 1990s. Over the years the OpenMP standard has been expanded to support additional concepts such as task-based parallelization, SIMD vectorization, and processor offloading. Since 2005, Visual Studio has supported the OpenMP 2.0 standard which focuses on multithreaded parallelization. As the world is moving into an AI era, we see a growing opportunity to improve code quality by expanding support of the OpenMP standard in Visual Studio. We continue our journey in Visual Studio 2019 by adding support for OpenMP SIMD.


Read more →

Happy Potter and the Order of CSS

Reading time5 min
Views4.3K


So, first of all — this is not a common battle. It's not about CSS versus CSS-in-JS, not atomic CSS versus BEM, not LESS vs SASS. This battle is about THE ORDER.


This battle is between ORDER and CHAOS. And between ORDER and,… another ORDER. In short — about a better way to sort CSS properties. No more, no less.


In short — there are 3 ways to do it:


  • don't do it. Write any CSS as you can. This is the most popular way
  • group properties by sense. Just put some stuff together. This is a quite popular way.
  • order all the properties alphabetically. The easiest, but less popular way.
Read more →

Flash-animation in Unity3D from scratch. Part one, lyrical

Reading time15 min
Views4K

In this article series, I will talk about how and why we decided to create our own solution for import of Flash animation to Unity, and about optimization techniques and internal workings of the plug-in. I also have lots of other fascinating stuff to tell about: internals of the SWF format, special features of the Unity editor extension and general matters of animation. You'll find all that inside!



Read more →

The History of SXSW: How It All Started

Reading time5 min
Views1.7K
SXSW is a festival of culture and technology held every spring in Austin, Texas. It’s a global phenomenon, with hundreds of thousands attending the event every year and millions more following the media coverage. Even if you’ve never heard of it, you’ve certainly felt its influence on our culture.

But it wasn’t always that way.

An update to C# versions and C# tooling

Reading time3 min
Views3.4K

Starting with Visual Studio 2019 Preview 4 and RC, we’ll be adjusting how C# versions are treated in .NET tooling. Read more below <cut>.


Summary of changes


Firstly, we’re adding two new Language Version (LangVersion) values: LatestMajor and Preview. Here’s how they stack up with the currently supported list of values:

Read more →

Announcing the Open Sourcing of Windows Calculator

Reading time2 min
Views1K

Today, we’re excited to announce that we are open sourcing Windows Calculator on GitHub under the MIT License. This includes the source code, build system, unit tests, and product roadmap. Our goal is to build an even better user experience in partnership with the community. We are encouraging your fresh perspectives and increased participation to help define the future of Calculator.


Image of Windows Calculator

Read more →

The Future of PostgreSQL: How a 64-bit Transaction Counter Solves Scaling Issues

Level of difficultyMedium
Reading time5 min
Views602

For many years, the PostgreSQL community was skeptical about using this database management system (DBMS) for high-transaction environments. While PostgreSQL worked well for lab tests, mid-tier web applications, and smaller backend systems, it was believed that for heavy transactional loads, you’d need an expensive DBMS designed specifically for such purposes. As a result, PostgreSQL wasn’t particularly developed in that direction, leaving a range of issues unanswered.

However, the reality has turned out differently. More and more of our clients are encountering problems that stem from this mindset. For example, in the global PostgreSQL community, it’s considered that 64 cores is the maximum size of a server where PostgreSQL can run effectively. But we’re now seeing that this is becoming a minimum typical configuration. One particular bottleneck that has emerged is the transaction counter, and this is a far more interesting issue. So, let’s dive into what the problem is, how we solved it, and what the international community thinks about it.

Read more

«Where, where have you gone», or searching for missing stations on public transport routes in OpenStreetMap

Level of difficultyMedium
Reading time6 min
Views1.1K

OpenStreetMap (OSM) is a global project formed around a geographic information database which is being filled by all comers — both enthusiasts and interested companies. Anybody can contribute, but the openness has its downside: incorrect edits often get into the database. Hence plenty of validators of OSM data have been written which allow to maintain the data quality at an acceptable level.

Since 2016 there exists an open source subway preprocessor that validates (generates error reports) rapid transit routes in OSM for completeness and logical/topological errors, and converts them into formats that are suitable for routing and rendering, e.g. GTFS. Besides OSM data it takes a list of public transport (PT) networks which contains the checking information about the number of lines, stations etc. per a PT network. The preprocessor has successfully proven itself in the preparation of PT data for applications such as Maps.me and Organic Maps.

In this article, I would like to share an approach to detecting one of the types of errors that occur quite often in OSM data and automatic detection of which is somewhat challenging. It's an accidental loss of a station from a route. The source code of the validator and the described algorithm are open source. But first, let's define the concepts used to represent PT data in OpenStreetMap.

Read more

XML parsing into plain Map in Golang

Level of difficultyEasy
Reading time4 min
Views4.1K

While in 2024 using XML looks a bit outdated, it still happens. And sometimes it happens we are to deal with XML having "free-structure", i.e. it couldn't be parsed into tree of user-defined structs. For JSON there still is a way to parse it with a single call into map[string]any and work with it using careful type assertions. Regretfully, there is no similar feature for XML (in Golang). Here I'll draft suitable function and demonstrate it - both for others and for myself if I ever need this again (recreating it from scratch may be somewhat painful).

Let's see implementation

Character Creation Assistance, a hobby ML project

Level of difficultyMedium
Reading time8 min
Views1.8K

For one of my projects I was exploring Reddit to understand how players create characters in video games, what is important to them in this process, and what their preferences are. It turns out that communities sharing their creations or seeking help with specific character designs remain active even for games released years ago. This realization sparked the idea for a hobby project that could assist these players in creating the characters they envision.

Read more

From Junior QA to Product Owner: My Growth Story at EXANTE

Level of difficultyEasy
Reading time7 min
Views763

Hi, I’m Nastya, the Product Owner of EXANTE’s desktop and web trading terminals. I began working at the company nearly five years ago as a Junior QA Engineer. Since then, I’ve advanced to QA Lead and ultimately to Product Owner. In this article, I’d like to share my growth journey within the company and the steps that helped me progress. I hope that my story will be helpful to those seeking to advance their careers but are unsure where to start.

Read more

A new platform for FPGA seminars based on Gowin Tang Nano 9K: adding sound, graphics and microarchitecture labs

Reading time3 min
Views2.1K

Gowin has clear advantages over Xilinx in the educational FPGA board market: Gowin boards are several times less expensive, the synthesis speed is several times faster, and the EDA package is two orders of magnitude smaller: we are talking about 1G versus 100G disk space. Of course, Xilinx is still the king of high-end prototyping boards that cost $10K-100K, but for the students such boards are irrelevant; such boards are for ASIC design companies. A beginning EE student needs a board for less than $100, and Gowin not only fits the bill but also covers all the needs, specifically:

Read more

How to build and run calculator from Windows XP using GCC x64?

Level of difficultyHard
Reading time63 min
Views1.2K

Hi Everyone!

In this article we a little bit will analyze of code of Windows XP and will compile the calculator application using GCC x64 in Windows 10 environment. We will look what kind of errors I faced during the build and the methods how to solve them. At the end we will launch the build of the calc.exe application.

Have a nice reading!

Read more

What is to see under the Black Sun of Giedi Prime?

Level of difficultyEasy
Reading time6 min
Views2.3K

The director Denis Villeneuve and cinematographer Greig Fraser in their Dune: Part Two movie made a curious decision to film the scenes on the surface of the Giedi Prime planet in the infrared spectrum. It turned out to have interesting aesthetics and there are some interesting related physics to discuss and speculate about how realistic the look of it is.

Read more