Pull to refresh

All streams

Show first
Period
Level of difficulty

Breaking down the fundamentals of C #: allocating memory for a reference type on the stack

Reading time6 min
Views7K
This article will show you the basics of types internals, as of course an example in which the memory for the reference type will be allocated completely on the stack (this is because I am a full-stack programmer).



Disclaimer


This article does not contain material that should be used in real projects. It is simply an extension of the boundaries in which a programming language is perceived.

Before proceeding with the story, I strongly recommend you to read the first post about StructLayout, because there is an example that will be used in this article (However, as always).
Read more →
Total votes 7: ↑6 and ↓1+5
Comments0

Extending Azure security capabilities

Reading time6 min
Views1.3K

As more organizations are delivering innovation faster by moving their businesses to the cloud, increased security is critically important for every industry. Azure has built-in security controls across data, applications, compute, networking, identity, threat protection, and security management so you can customize protection and integrate partner solutions. 


We keep investing in security and we are excited to share exciting updates this week at Hannover Messe 2019. We are excited to announce that Dedicated Hardware Security Module Service (HMS) in UK, Canada, and Australia, Azure disk encryption support for Virtual Machine Scale Sets (VMSS) are generally available. Also Advanced Threat Protection for Azure Storage, the Regulatory Compliance Dashboard, and support for virtual machine sets are now generally available as part of Azure Security Center.



Read more →
Total votes 5: ↑5 and ↓0+5
Comments0

New feature in Git 3: closures

Reading time3 min
Views19K

Git is a popular version control system. In Git, an atomic change of one or several files is called a commit, and several consecutive commits are combined into a branch. Branches are used to implement new ideas (features).



It happens that the idea is a dead end and the developer has turned the wrong way, so he needs to roll back to the original version. He should forget about the new branch, switch to the main dev or master branch and continue working. In this case, the "scion" will hang forever, as well as the desire to remove it. But how to remove the part of the history? This branch shows the efforts of the hard-working programmer, even if in vain. So it will be easier to report to the boss, because an unsuccessful result is also a result!


I hasten to rejoice that Git developers are going to introduce a new command to close such "homeless" branches in the third version. The current version is 2.21.0.


How to use this command, what benefits does it give and what do IT companies think? The article answers these and other questions.

Read more →
Total votes 13: ↑9 and ↓4+5
Comments1

Congratulations Imagine Cup EMEA Regional Final Champions: Team Finderr from the United Kingdom! Russian team is third

Reading time3 min
Views568

Imagine EMEA group photo blog.jpg


The Imagine Cup 2019 competition is well underway with our second Regional Final wrapping up in Amsterdam, the Netherlands this week. Team Finderr from the United Kingdom took home the first-place title and a spot in the World Championship for their app solution to find lost objects with a smartphone. Congratulations!

Read more →
Total votes 7: ↑6 and ↓1+5
Comments0

Indexes in PostgreSQL — 4 (Btree)

Reading time17 min
Views21K
We've already discussed PostgreSQL indexing engine and interface of access methods, as well as hash index, one of access methods. We will now consider B-tree, the most traditional and widely used index. This article is large, so be patient.

Btree


Structure


B-tree index type, implemented as «btree» access method, is suitable for data that can be sorted. In other words, «greater», «greater or equal», «less», «less or equal», and «equal» operators must be defined for the data type. Note that the same data can sometimes be sorted differently, which takes us back to the concept of operator family.
Read more →
Total votes 7: ↑6 and ↓1+5
Comments5

.NET Core Container Images now Published to Microsoft Container Registry

Reading time7 min
Views2.3K

We are now publishing .NET Core container images to Microsoft Container Registry (MCR). We have also made other changes to the images we publish, described in this post.


Important: You will need to change FROM statements in Dockerfile files and docker pull commands as a result of these changes. 3.0 references need to be changed now. Most 1.x and 2.x usages can be changed over time. The new tag scheme is decribed in this post and are provided at the microsoft-dotnet-core repo, our new home on Docker Hub.


Summary of changes:


  • .NET Core images are now published to Microsoft Container Registry.
  • Updates will continue to be published to Docker Hub, for .NET Core 1.x and 2.x.
  • .NET Core 3.0 will only be published to MCR.
  • Nano Server 2016 images are no longer supported or published.

image
Read more →
Total votes 7: ↑6 and ↓1+5
Comments0

Info desk: global Internet initiatives

Reading time6 min
Views1.3K


Fiber-optic cables are a great way to bring high-speed Internet right to your home or office. But even in large cities not everyone can enjoy the benefits of it, since apartments far away from everyone, or low-population districts far from downtown, are very reluctantly served by ISPs.

And then there’s small towns and villages, far away from the main Internet “highways”. In poorer countries, Internet is often slow and expensive even in large population centers, while villages are often left without a connection for years. To connect them to the World Wide Web takes the resources of not just normal ISPs, but telecom giants. Solar-powered drones with networking equipment, weather balloons, satellites and other similar projects are not just science fiction, but a reality today (or in the near future). But who’s closer to launch and who’s lagging behind? Let’s find out.
Read more →
Total votes 7: ↑6 and ↓1+5
Comments1

React Code Splitting in 2019

Reading time6 min
Views4.1K

It's 2019! Everybody thinks they know code splitting. So - let's double check!



What does code splitting stand for?


In short – code splitting is just about not loading a whole thing. Then you are reading this page you don't have to load a whole site. When you are selecting a single row from a database – you don't have to take all.
Obvious? Code splitting is also quite obvious, just not about your data, but your code.

Read more →
Total votes 7: ↑6 and ↓1+5
Comments6

Developing A Basic Darts Scoreboard App

Reading time5 min
Views2.5K
Darts is one of the most popular games in the world. It’s a good way to challenge your friends and family members, putting your accuracy to the test. However, keeping score can be a challenge. People often needed to rely on pen and paper, tallying up the score by hand. Thankfully, modern technology can help solve this challenge. An app makes calculating the winner easy, giving you more time to focus on the game.

If you’re planning on designing one of these apps, there are a few steps that you’ll need to follow.

Set-Up Players


The first thing that you need to decide is who will be playing the game. This will require the player to enter the input. If more than one person is playing, they will need to enter their names. This will allow the app to keep the scores separate.
Read more →
Total votes 11: ↑8 and ↓3+5
Comments3

Top 10 Google Sheets Features to Enhance Your Productivity

Level of difficultyEasy
Reading time3 min
Views840

It's been a while since my last appearance, but I'm excited to be back and to share something truly special with you. In this article, we'll explore my top 10 Google Sheets features that are guaranteed to boost your productivity, speed up your workflow, and make your data handling more efficient. So, without further ado, let's dive into these game-changing tools!

Read more
Total votes 3: ↑3 and ↓0+4
Comments1

Simple complex programming

Level of difficultyMedium
Reading time5 min
Views710


I always pay attention to assessing the complexity of programming in a particular language. Programming is indeed not an easy task and this is perceived as a fact and usually does not require any confirmation.


But the concept of “complexity” is akin to the term “heap”. For some, five coconuts is not so much, but for someone who ate one and “didn’t want any more,” this means that even one coconut will be too much for him.


The same goes for the complexity of programs. It seems that the constant increase in the complexity of programs is obvious to everyone and is observed in all areas of application of IT technologies, and programming languages themselves become more and more complex as they develop, but assessing “complexity” using numerical metrics is a problem. obviously a thankless task, but also “You can’t manage what you can’t measure...”


Typically, talk of “complexity” only implies value judgments without any numerical evaluation. And since I am personally interested in the issue of the complexity of programming languages, I decided to calculate the complexity of implementing the gcc compiler on some conditional “parrots”. What if we could see some patterns of difficulty changing over time?

Read more →
Total votes 3: ↑3 and ↓0+4
Comments0

VERBAL CALCULATION (VC) IN EVIDENCE-BASED DSS AND NLP

Level of difficultyMedium
Reading time14 min
Views190

S.B. Pshenichnikov

The article outlines a new mathematical apparatus for verbal calculations in NLP (natural language processing). Words are embedded not in a real vector space, but in an algebra of extremely sparse matrix units. Calculations become evidence-based and transparent. The example shows forks in calculations that go unnoticed when using traditional approaches, and the result may be unexpected.

 

The use of IT in Natural Language Processing (NLP) requires standardization of texts, for example, tokenization or lemmatization.

After this, you can try to use mathematics, since it is the highest form of standardization and turns the objects under study into ideal ones, for example, data tables into matrices of elements. Only in the language of matrices can one search for general patterns in data (numbers and texts).

If text is turned into numbers, then in NLP these are first natural numbers for numbering words, which are then embedded into real vectors is irreversible ed in a real vector space.

Perhaps we should not rush to do this but come up with a new type of numbers that is more suitable for NLP than numbers for studying physical phenomena. These are matrix hyperbinary numbers. Hyperbinary numbers are one of the types of hypercomplex numbers.

Hyperbinary numbers have their  own  arithmetic,  and  if  you get used to  it,  it  will  seem  more  familiar  and  simpler  than  Pythagorean arithmetic.

In Decision Support Systems (DSS), the texts are value judgments and a numbered verbal rating scale. Next (as in NLP), the numbers are turned into vectors of real numbers and used as sets of weighted arithmetic average coefficients.

Read more
Total votes 3: ↑3 and ↓0+4
Comments0

Experiment: How to disguise the use of Tor to bypass blocking

Level of difficultyMedium
Reading time4 min
Views754

Internet censorship is becoming an increasingly important issue worldwide. This leads to increasing of the "race of armaments" – in different countries government agencies and private corporations try to block various content and fight against the ways of circumventing of such restrictions. At the same time developers and researchers strive to create effective tools to combat censorship.

Scientists from Carnegie Mellon University, Stanford University, and SRI International conducted an experiment in which they developed a special service for masking the use of Tor – one of the most popular tools for bypassing blocking. Here is the story about the work done by the researchers.

Read more
Total votes 3: ↑3 and ↓0+4
Comments0

Stopwatch implementation on FPGA board

Reading time5 min
Views325

In this report we describe our implementation experience of a stopwatch system executing on an FPGA board. We programmed this device in the Quartus Prime II software environment by using Verilog hardware description language. The program is tailored to the Altera MAX 10 FPGA board, as well as uses a set of other peripheral devices for progress visualization purposes.

Read more
Total votes 3: ↑3 and ↓0+4
Comments0

How Closures Work and Why It Matters

Level of difficultyMedium
Reading time8 min
Views1.1K

They might sound complicated, but they are actually a fundamental part of the language. In this article, we’ll explore closures in a straightforward and practical way. Let’s clear up common misunderstandings. Walk through real-world examples. Nail those tricky interview questions about closures. By the end, you’ll see closures not as a hurdle, but as a valuable part of your JavaScript toolkit.

Continue Closure Journey
Total votes 4: ↑4 and ↓0+4
Comments0