Редактирование существующего запроса доступно только для зарегистрированных пользователей. Но вы в любой момент можете отправить собственный запрос без всякой регистрации.
Новый запрос


Запрос
GET /en/feed/ HTTP/1.1
Host: habr.com
User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Accept: */*
Referer: https://habr.com/
Cookie: split_version=triger
Accept-Language: en-us
Cache-Control: no-cache
Connection: close
Заголовки ответа (затраченное время: 1.335 секунда)
HTTP/1.1 200 OK
Server: QRATOR
Date: Sat, 18 May 2024 15:20:04 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 260447
Connection: close
Vary: Accept-Encoding
Vary: Accept-Encoding
X-DNS-Prefetch-Control: off
X-Frame-Options: SAMEORIGIN
X-Download-Options: noopen
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
ETag: W/"3f95f-N32fVF4aGrAYfzhvvMWVfPSs0S0"
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Request-Id: 6089a3d04c1517d70f32d6432d67e019
X-Request-Geoip-Country-Code: US
X-Request-Detected-Device: desktop
Ответ (260 447 байт)
<!DOCTYPE html> <html lang="en"> <head> <title>Publications &#x2F; My feed &#x2F; Habr</title> <link rel="image_src" href="/img/habr_en.png" data-hid="2a79c45"> <link href="https://habr.com/en/feed/" rel="canonical" data-hid="e3fa780"> <meta itemprop="image" content="/img/habr_en.png"> <meta property="og:image" content="/img/habr_en.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="630"> <meta property="aiturec:image" content="/img/habr_en.png"> <meta name="twitter:image" content="/img/habr_en.png"> <meta property="vk:image" content="/img/habr_en.png?format=vk"> <meta property="fb:app_id" content="444736788986613"> <meta property="fb:pages" content="472597926099084"> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:site" content="@habr_eng"> <meta property="og:locale" content="en_US"> <meta property="og:type" content="website"> <meta property="og:site_name" content="Habr"> <meta property="og:title" content="Habr"> <meta property="og:url" content="https://habr.com/en/feed/"> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0,viewport-fit=cover,maximum-scale=1,user-scalable=0"> <meta name="referrer" content="unsafe-url"> <style> /* cyrillic-ext */ @font-face { font-family: 'Fira Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnZKveSxf6TF0.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; } /* cyrillic */ @font-face { font-family: 'Fira Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnZKveQhf6TF0.woff2) format('woff2'); unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; } /* latin-ext */ @font-face { font-family: 'Fira Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnZKveSBf6TF0.woff2) format('woff2'); unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; } /* latin */ @font-face { font-family: 'Fira Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url(https://fonts.gstatic.com/s/firasans/v11/va9B4kDNxMZdWfMOD5VnZKveRhf6.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } /* non-breaking hyphen */ @font-face { font-family: 'Fira Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url(https://fonts.gstatic.com/l/font?kit=KFOlCnqEu92Fr1MmEU9vBh0_IsHAlmrO6g&skey=ee881451c540fdec&v=v29) format('woff2'); unicode-range: U+02011; } </style> <link rel="preload" href="https://assets.habr.com/habr-web/css/theme/light-v1.css" as="style" media="(prefers-color-scheme: light)" /><link rel="preload" href="https://assets.habr.com/habr-web/css/theme/dark-v1.css" as="style" media="(prefers-color-scheme: dark)" /><link id="light-colors" rel="stylesheet" href="https://assets.habr.com/habr-web/css/theme/light-v1.css" media="(prefers-color-scheme: light)" /><link id="dark-colors" rel="stylesheet" href="https://assets.habr.com/habr-web/css/theme/dark-v1.css" media="(prefers-color-scheme: dark)" /> <script>window.i18nFetch = new Promise((res, rej) => { const xhr = new XMLHttpRequest(); xhr.open('GET', '/js/i18n/en-compiled.ebf17b4600e17a7fdbc06f4ca6f35c1e.json'); xhr.responseType = 'json'; xhr.onload = function(e) { if (this.status === 200) { res({en: xhr.response}); } else { rej(e); } }; xhr.send(); });</script> <style>.grecaptcha-badge{visibility: hidden;}</style> <meta name="habr-version" content="2.177.0"> <meta name="apple-mobile-web-app-status-bar-style" content="#303b44"> <meta name="msapplication-TileColor" content="#629FBC"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="mobile-web-app-capable" content="yes"> <link rel="shortcut icon" type="image/png" sizes="16x16" href="https://assets.habr.com/habr-web/img/favicons/favicon-16.png" > <link rel="shortcut icon" type="image/png" sizes="32x32" href="https://assets.habr.com/habr-web/img/favicons/favicon-32.png" > <link rel="apple-touch-icon" type="image/png" sizes="76x76" href="https://assets.habr.com/habr-web/img/favicons/apple-touch-icon-76.png" > <link rel="apple-touch-icon" type="image/png" sizes="120x120" href="https://assets.habr.com/habr-web/img/favicons/apple-touch-icon-120.png" > <link rel="apple-touch-icon" type="image/png" sizes="152x152" href="https://assets.habr.com/habr-web/img/favicons/apple-touch-icon-152.png" > <link rel="apple-touch-icon" type="image/png" sizes="180x180" href="https://assets.habr.com/habr-web/img/favicons/apple-touch-icon-180.png" > <link rel="apple-touch-icon" type="image/png" sizes="256x256" href="https://assets.habr.com/habr-web/img/favicons/apple-touch-icon-256.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_1136x640.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_2436x1125.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_1792x828.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_828x1792.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_1334x750.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_1242x2668.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_2208x1242.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_1125x2436.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 414px) and (device-height: 736px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_1242x2208.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_2732x2048.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_2688x1242.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_2224x1668.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_750x1334.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_2048x2732.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_2388x1668.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_1668x2224.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_640x1136.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_1668x2388.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: landscape)" href="https://assets.habr.com/habr-web/img/splashes/splash_2048x1536.png" > <link rel="apple-touch-startup-image" media="screen and (device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)" href="https://assets.habr.com/habr-web/img/splashes/splash_1536x2048.png" > <link rel="mask-icon" color="#77a2b6" href="https://assets.habr.com/habr-web/img/favicons/apple-touch-icon-120.svg" > <link crossorigin="use-credentials" href="/manifest.webmanifest" rel="manifest" > <script async src="https://unpkg.com/pwacompat" crossorigin="anonymous"></script> <script>window.yaContextCb = window.yaContextCb || []</script> <script src="https://yandex.ru/ads/system/context.js" async></script> <link rel="preload" href="https://assets.habr.com/habr-web/css/chunk-vendors.04465f7c.css" as="style"><link rel="preload" href="https://assets.habr.com/habr-web/js/chunk-vendors.4bae8a13.js" as="script"><link rel="preload" href="https://assets.habr.com/habr-web/css/app.b3eed48e.css" as="style"><link rel="preload" href="https://assets.habr.com/habr-web/js/app.fafaf35f.js" as="script"><link rel="preload" href="https://assets.habr.com/habr-web/css/page-my-feed.be029e88.css" as="style"><link rel="preload" href="https://assets.habr.com/habr-web/js/page-my-feed.bbd40759.js" as="script"><link rel="stylesheet" href="https://assets.habr.com/habr-web/css/chunk-vendors.04465f7c.css"><link rel="stylesheet" href="https://assets.habr.com/habr-web/css/app.b3eed48e.css"><link rel="stylesheet" href="https://assets.habr.com/habr-web/css/page-my-feed.be029e88.css"></head> <body> <div id="mount"><div id="app" data-async-called="true"><div class="tm-layout__wrapper"><!--[--><!----><div></div><!----><header class="tm-header" data-test-id="header"><div class="tm-page-width"><!--[--><div class="tm-header__container"><!----><span class="tm-header__logo-wrap"><a class="tm-header__logo tm-header__logo_hl-en tm-header__logo" href="/en/"><svg class="tm-svg-img tm-header__icon" height="16" width="16"><title>Habr</title><use xlink:href="/img/habr-logo-en.svg#logo"></use></svg></a><span style="display:none;" class="tm-header__beta-sign">β</span></span><!--[--><!----><a href="/en/sandbox/start/" class="tm-header__become-author-btn">How to become an author</a><!----><!----><!--]--><!----></div><!--]--></div></header><div class="tm-layout"><div class="tm-page-progress-bar"></div><div class="tm-base-layout__header_is-sticky tm-base-layout__header" data-menu-sticky="true"><div class="tm-page-width"><!--[--><div class="tm-base-layout__header-wrapper"><div class="tm-main-menu"><div class="tm-main-menu__section"><nav class="tm-main-menu__section-content"><!--[--><a class="tm-main-menu__item tm-main-menu__item_active" href="/en/feed/">My feed</a><!--]--><!--[--><a class="tm-main-menu__item" href="/en/articles/">All streams</a><!--]--><!--[--><!--[--><!--[--><a class="tm-main-menu__item" href="/en/flows/develop/">Development</a><!--]--><!--]--><!--[--><!--[--><a class="tm-main-menu__item" href="/en/flows/admin/">Admin</a><!--]--><!--]--><!--[--><!--[--><a class="tm-main-menu__item" href="/en/flows/design/">Design</a><!--]--><!--]--><!--[--><!--[--><a class="tm-main-menu__item" href="/en/flows/management/">Management</a><!--]--><!--]--><!--[--><!--[--><a class="tm-main-menu__item" href="/en/flows/marketing/">Marketing</a><!--]--><!--]--><!--[--><!--[--><a class="tm-main-menu__item" href="/en/flows/popsci/">PopSci</a><!--]--><!--]--><!--]--></nav></div></div><div class="tm-header-user-menu tm-base-layout__user-menu"><a href="/en/search/" class="tm-header-user-menu__item tm-header-user-menu__search" data-test-id="search-button"><svg class="tm-svg-img tm-header-user-menu__icon tm-header-user-menu__icon_search tm-header-user-menu__icon_dark" height="24" width="24"><title>Search</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#search"></use></svg></a><!----><!----><div class="tm-header-user-menu__item tm-header-user-menu__write"><div><svg class="tm-svg-img tm-header-user-menu__icon tm-header-user-menu__icon_write tm-header-user-menu__icon_dark" height="24" width="24"><title>Write a publication</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#write"></use></svg></div><!----></div><!--[--><div class="tm-header-user-menu__item"><button class="tm-header-user-menu__toggle" data-test-id="user-menu-settings"><svg class="tm-svg-img tm-header-user-menu__icon tm-header-user-menu__icon_dark" height="24" width="24"><title>Settings</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#page-settings"></use></svg></button></div><a href="https://habr.com/kek/v1/auth/habrahabr/?back=/en/feed/&amp;hl=en" rel="nofollow" class="tm-header-user-menu__item"><!--[--><button class="btn btn_solid btn_small tm-header-user-menu__login" type="button"><!--[-->Login<!--]--></button><!--]--></a><!--]--><!----><!--teleport start--><!--teleport end--><!----></div></div><!--]--></div></div><!----><div class="tm-page-width"><!--[--><!--]--></div><main class="tm-layout__container"><div class="tm-page my-feed-page" data-async-called="true"><div class="tm-page-width"><!--[--><!----><div class="tm-page__wrapper"><div class="tm-page__main_has-sidebar tm-page__main"><div class="pull-down"><!----><div class="pull-down__header" style="height:0px;"><div class="pull-down__content" style="bottom:10px;"><svg class="tm-svg-img pull-down__icon pull-down__arrow" height="24" width="24"><title>Pull to refresh</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#pull-arrow"></use></svg></div></div><!--[--><!--[--><div class="tm-adfox-banner__container"><div id="adfox_169815559787254866" class="tm-adfox-banner tm-adfox-banner_variant-narrow tm-adfox-banner"></div></div><div class="tm-page__top"><div class="my-feed-page__header-wrapper"><div class="tm-section-name"><h1 class="tm-section-name__text">My feed</h1><!--[--><!--]--></div><!----></div><div class="tm-navigation-filters-spoiler my-feed-filter"><div class="tm-navigation-filters-spoiler__wrapper"><button class="tm-navigation-filters-spoiler__button" data-test-id="nav-filters-button" type="button"><!--[-->Feed settings<!--]--><svg class="tm-svg-img icon_dropdown-arrow" height="16" width="16"><title>Dropdown</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#arrow-down"></use></svg></button><!--[--><!--]--></div><div class="tm-navigation-filters-spoiler__content" style=""><!--[--><form class="my-feed-filter__form"><fieldset class="my-feed-filter__section"><legend class="my-feed-filter__section-legend">Type</legend><div class="my-feed-filter__types"><!--[--><label class="selection-label"><!--[--><span class="tm-base-checkbox"><input class="tm-base-checkbox__input visually-hidden" indeterminate="false" name="types" tabindex="0" type="checkbox" value="articles" checked><span class="tm-base-checkbox__figure"></span></span><!--]--><span class="selection-label__text">Articles</span></label><label class="selection-label"><!--[--><span class="tm-base-checkbox"><input class="tm-base-checkbox__input visually-hidden" indeterminate="false" name="types" tabindex="0" type="checkbox" value="posts" checked><span class="tm-base-checkbox__figure"></span></span><!--]--><span class="selection-label__text">Posts</span></label><label class="selection-label"><!--[--><span class="tm-base-checkbox"><input class="tm-base-checkbox__input visually-hidden" indeterminate="false" name="types" tabindex="0" type="checkbox" value="news" checked><span class="tm-base-checkbox__figure"></span></span><!--]--><span class="selection-label__text">News</span></label><!--]--></div></fieldset><fieldset class="my-feed-filter__section"><legend class="my-feed-filter__section-legend">Rating limit</legend><div class="my-feed-filter__group"><!--[--><label class="radio-like-button"><input id="radio-score-all" checked class="radio-like-button__input visually-hidden" name="score" tabindex="0" type="radio" value="all"><span class="radio-like-button__button"><!--[-->All<!--]--></span></label><label class="radio-like-button"><input id="radio-score-0" class="radio-like-button__input visually-hidden" name="score" tabindex="0" type="radio" value="0"><span class="radio-like-button__button"><!--[-->≥0<!--]--></span></label><label class="radio-like-button"><input id="radio-score-10" class="radio-like-button__input visually-hidden" name="score" tabindex="0" type="radio" value="10"><span class="radio-like-button__button"><!--[-->≥10<!--]--></span></label><label class="radio-like-button"><input id="radio-score-25" class="radio-like-button__input visually-hidden" name="score" tabindex="0" type="radio" value="25"><span class="radio-like-button__button"><!--[-->≥25<!--]--></span></label><label class="radio-like-button"><input id="radio-score-50" class="radio-like-button__input visually-hidden" name="score" tabindex="0" type="radio" value="50"><span class="radio-like-button__button"><!--[-->≥50<!--]--></span></label><label class="radio-like-button"><input id="radio-score-100" class="radio-like-button__input visually-hidden" name="score" tabindex="0" type="radio" value="100"><span class="radio-like-button__button"><!--[-->≥100<!--]--></span></label><!--]--></div></fieldset><fieldset class="my-feed-filter__section"><legend class="my-feed-filter__section-legend">Level of difficulty</legend><div class="my-feed-filter__group"><!--[--><label class="radio-like-button"><input id="radio-complexity-all" checked class="radio-like-button__input visually-hidden" name="complexity" tabindex="0" type="radio" value="all"><span class="radio-like-button__button"><!--[-->All<!--]--></span></label><label class="radio-like-button"><input id="radio-complexity-easy" class="radio-like-button__input visually-hidden" name="complexity" tabindex="0" type="radio" value="easy"><span class="radio-like-button__button"><!--[-->Easy<!--]--></span></label><label class="radio-like-button"><input id="radio-complexity-medium" class="radio-like-button__input visually-hidden" name="complexity" tabindex="0" type="radio" value="medium"><span class="radio-like-button__button"><!--[-->Medium<!--]--></span></label><label class="radio-like-button"><input id="radio-complexity-hard" class="radio-like-button__input visually-hidden" name="complexity" tabindex="0" type="radio" value="hard"><span class="radio-like-button__button"><!--[-->Hard<!--]--></span></label><!--]--></div></fieldset><div class="my-feed-filter__banner"><div class="tm-user-notice tm-user-notice tm-user-notice_variant-warning tm-user-notice_bordered tm-user-notice_noMargins"><div class="tm-user-notice__icon-wrapper"><svg class="tm-svg-img tm-user-notice__icon" height="24" width="24"><title>Warning</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#user-notice-warning"></use></svg></div><div class="tm-user-notice__container"><!----><!----><!--[--><!--[-->To set up filters <!--[--><a href="https://habr.com/kek/v1/auth//habrahabr/?back=/en/feed/&amp;hl=en" rel="nofollow">sign in</a><!--]--> or <!--[--><a href="https://habr.com/kek/v1/auth//habrahabr-register/?back=/en/feed/&amp;hl=en" rel="nofollow">sign up</a><!--]--><!--]--><!--]--></div><!----></div></div><button class="btn btn_solid btn_small tm-button tm-button_color-christi" disabled type="button" data-test-id="nav-filters-apply"><!--[--><!--[-->Apply<!--]--><!--]--></button></form><!--]--></div></div></div><div><!--[--><div class="tm-articles-list" data-test-id="articles-list"><!--[--><!--[--><!----><article id="815145" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/profleaddev/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="profleaddev"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/c02/5ff/754/c025ff754a1341b66efae8f2f06bd085.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/profleaddev/" class="tm-user-info__username">profleaddev <!----></a><!--[--><a href="/en/articles/815145/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-17T12:52:09.000Z" title="2024-05-17, 15:52">yesterday at 15:52</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/815145/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>ChatGPT-4o: major highlights, new capabilities, free access</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-low"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-low"></use></svg></span><span class="tm-article-complexity__label">Easy</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">2 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">380</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/artificial_intelligence/" class="tm-publication-hub__link"><!--[--><span>Artificial Intelligence</span><!----><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-digest"><span>Digest</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/baa/9f2/4b1/baa9f24b1365f4e93ffa2706b1c161c1.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>Few days ago, Mira Murati, Chief Technology Officer at OpenAI, introduced the company's latest GPT model - GPT-4o. A new flagship model set to change how people interact with AI.</p><p></p></div></div><!----><!----></div><a href="/en/articles/815145/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 1: ↑1 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 1: ↑1 and ↓0">+3</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">1</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/815145/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="813699" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/ZhksB/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="ZhksB"><div class="tm-entity-image"><!--[--><img alt="" class="tm-entity-image__pic" height="24" src="https://assets.habr.com/habr-web/img/avatars/083.png" width="24"><!--]--></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/ZhksB/" class="tm-user-info__username">ZhksB <!----></a><!--[--><a href="/en/articles/813699/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-17T12:00:00.000Z" title="2024-05-17, 15:00">yesterday at 15:00</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/813699/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>How to increase capacity of drive from 32 to 256 GB for Asus E200H laptop</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-low"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-low"></use></svg></span><span class="tm-article-complexity__label">Easy</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">5 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">182</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/linux/" class="tm-publication-hub__link"><!--[--><span>Configuring Linux</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/gadgets/" class="tm-publication-hub__link"><!--[--><span>Gadgets</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/hardware/" class="tm-publication-hub__link"><!--[--><span>Computer hardware</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/DIY/" class="tm-publication-hub__link"><!--[--><span>DIY</span><!----><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-tutorial"><span>Tutorial</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w780/getpro/habr/upload_files/7ed/e8a/47a/7ede8a47af4f0968e49f2b20cb5b2a31.jpg" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>Hi Everyone.</p><p>Recently I got Asus E200H laptop, which I would like to use as a portable computer to work with a high-precision equipment.</p><p>Within the scope of the article we will perform the experiment about the upgrade of the default 32 GB eMMC capacitor to 256 GB and will test it. </p><p>Have a nice reading!</p><p></p></div></div><!----><!----></div><a href="/en/articles/813699/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 2: ↑2 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 2: ↑2 and ↓0">+4</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">1</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/813699/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="814577" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/ArcaneGamingcom/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="ArcaneGamingcom"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/bef/009/69d/bef00969db68a919adae3b19e7d45c55.png" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/ArcaneGamingcom/" class="tm-user-info__username">ArcaneGamingcom <!----></a><!--[--><a href="/en/articles/814577/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-15T13:48:11.000Z" title="2024-05-15, 16:48"> May 15 at 16:48</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/814577/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>How to practice user empathy in UX design and make product more accessible</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-low"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-low"></use></svg></span><span class="tm-article-complexity__label">Easy</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">6 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">125</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/web_design/" class="tm-publication-hub__link"><!--[--><span>Web design</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/data_visualization/" class="tm-publication-hub__link"><!--[--><span>Data visualization</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/edge/" class="tm-publication-hub__link"><!--[--><span>Microsoft Edge</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/office/" class="tm-publication-hub__link"><!--[--><span>Offices of IT companies</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/visual_programming/" class="tm-publication-hub__link"><!--[--><span>Visual programming</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-roadmap"><span>Roadmap</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w780/getpro/habr/upload_files/ec0/e9a/155/ec0e9a15564aa0901e3ffa301fcac284.jpeg" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>According to the Oxford Dictionary, empathy is “the ability to understand and share the feelings of another”. In UX, there is a special term “user empathy”. It refers to the ability of UX designers to fully understand what users need from a particular software product. Having user empathy and basing design solutions around users” comfort is one of the most true indicators of a designer”s professionalism. Without that, any product a designer works on has a high chance of turning out to be pointless. Apart from having empathy as a soft skill in general, there are several ways a designer can practice user empathy through different UX methods and techniques. In this article we would like to talk on how a UX designer can treat users with empathy and make the product more accessible for different groups of target audience. </p><p></p></div></div><!----><!----></div><a href="/en/articles/814577/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 1: ↑1 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 1: ↑1 and ↓0">+3</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">3</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/814577/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="813945" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/profleaddev/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="profleaddev"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/c02/5ff/754/c025ff754a1341b66efae8f2f06bd085.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/profleaddev/" class="tm-user-info__username">profleaddev <!----></a><!--[--><a href="/en/articles/813945/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-13T12:28:29.000Z" title="2024-05-13, 15:28"> May 13 at 15:28</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/813945/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>VS Code Extensions You Need in 2024: My Top Picks</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-low"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-low"></use></svg></span><span class="tm-article-complexity__label">Easy</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">2 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">803</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/webdev/" class="tm-publication-hub__link"><!--[--><span>Website development</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/programming/" class="tm-publication-hub__link"><!--[--><span>Programming</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/complete_code/" class="tm-publication-hub__link"><!--[--><span>Perfect code</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/vs/" class="tm-publication-hub__link"><!--[--><span>Visual Studio</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/learning_languages/" class="tm-publication-hub__link"><!--[--><span>Learning languages</span><!----><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-opinion"><span>Opinion</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/34f/d60/9ab/34fd609aba5c91e1af82a4a44d438a0a.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>Welcome to my latest article. If you haven't caught my previous ones, I highly recommend checking them out for some really useful content. Today, I'm excited to dive into something special: my top 10 favorite VS Code extensions. These tools are incredibly popular among developers globally, and I believe they're essential for anyone serious about coding.</p><p></p></div></div><!----><!----></div><a href="/en/articles/813945/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 2: ↑0 and ↓2</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_negative tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 2: ↑0 and ↓2">-2</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">4</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/813945/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">2</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><div class="tm-article-feed-blocks"><div id="stories_block_4" data-some-prop="test" data-test-id="stories_block" data-async-called="true"></div></div><!--]--></div><!--]--><!--[--><!----><article id="813903" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-news"><span class="publication-type-label__label publication-type-label__label_type-news">News</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/jstmeowme/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="jstmeowme"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/bfd/4da/cde/bfd4dacde3a999483906379cd0102a11.png" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/jstmeowme/" class="tm-user-info__username">jstmeowme <!----></a><!--[--><a href="/en/companies/bothub/news/813903/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-13T10:54:41.000Z" title="2024-05-13, 13:54"> May 13 at 13:54</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/companies/bothub/news/813903/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Machines are learning to lie: The Dark Side of Intelligent Systems</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><!----><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">1 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">235</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/machine_learning/" class="tm-publication-hub__link"><!--[--><span>Machine learning</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/research/" class="tm-publication-hub__link"><!--[--><span>Research and forecasts in IT</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/artificial_intelligence/" class="tm-publication-hub__link"><!--[--><span>Artificial Intelligence</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/companies/bothub/articles/" class="tm-publication-hub__link"><!--[--><span>BotHub corporate blog</span><!----><!--]--></a></span><!--]--></div></div><!----><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/4fa/953/469/4fa953469794334e17fc2feb95d7271e.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>Recent <a href="https://www.eurekalert.org/news-releases/1043328">research</a> published in the journal Patterns has shown examples of how artificial intelligence (AI) systems are learning to manipulate information and deceive people. The concept of deception by AI dates back to Alan Turing's famous 1950 paper, which introduced the "Imitation Game" - a test that evaluates whether a machine can demonstrate human-like intelligence.</p><p></p></div></div><!----><!----></div><a href="/en/companies/bothub/news/813903/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Rating</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value">0</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">0</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/companies/bothub/news/813903/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="812635" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/profleaddev/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="profleaddev"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/c02/5ff/754/c025ff754a1341b66efae8f2f06bd085.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/profleaddev/" class="tm-user-info__username">profleaddev <!----></a><!--[--><a href="/en/articles/812635/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-06T12:30:55.000Z" title="2024-05-06, 15:30"> May 6 at 15:30</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/812635/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Top 10 Google Sheets Features to Enhance Your Productivity</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-low"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-low"></use></svg></span><span class="tm-article-complexity__label">Easy</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">3 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">769</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/hi/" class="tm-publication-hub__link"><!--[--><span>High performance</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/gwt/" class="tm-publication-hub__link"><!--[--><span>Google Web Toolkit</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/data_visualization/" class="tm-publication-hub__link"><!--[--><span>Data visualization</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/lifehacks/" class="tm-publication-hub__link"><!--[--><span>Lifehacks for geeks</span><!----><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-tutorial"><span>Tutorial</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w780/getpro/habr/upload_files/483/d4a/8cd/483d4a8cdb3102256affc80ea933b317.jpeg" style="object-position: 7% 47%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>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!</p><p></p></div></div><!----><!----></div><a href="/en/articles/812635/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 3: ↑3 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 3: ↑3 and ↓0">+4</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">5</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/812635/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">1</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="812253" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/rsashka/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="rsashka"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/ad5/d5f/eb2/ad5d5feb2fbf547d4d74f65d041cb2c7.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/rsashka/" class="tm-user-info__username">rsashka <!----></a><!--[--><a href="/en/articles/812253/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-04T07:52:00.000Z" title="2024-05-04, 10:52"> May 4 at 10:52</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/812253/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Simple complex programming</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-medium"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-medium"></use></svg></span><span class="tm-article-complexity__label">Medium</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">5 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">668</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/programming/" class="tm-publication-hub__link"><!--[--><span>Programming</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/analysis_design/" class="tm-publication-hub__link"><!--[--><span>System Analysis and Design</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/cpp/" class="tm-publication-hub__link"><!--[--><span>C++</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/unreal_engine/" class="tm-publication-hub__link"><!--[--><span>Unreal Engine</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-opinion"><span>Opinion</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><!----><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-1"><p><img src="https://habrastorage.org/webt/yx/tt/qq/yxttqqw--euowcslniugotlbmkw.jpeg"></p><br> <p>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.</p><br> <p>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.</p><br> <p>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...”</p><br> <p>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?</p></div></div><!----><!----></div><a href="/en/articles/812253/" class="tm-article-snippet__readmore"><!--[--><span>Read more &rarr;</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 3: ↑3 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 3: ↑3 and ↓0">+4</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">3</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/812253/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><div class="tm-article-feed-blocks"><!----></div><!--]--></div><!--]--><!--[--><!----><article id="812117" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/rsashka/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="rsashka"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/ad5/d5f/eb2/ad5d5feb2fbf547d4d74f65d041cb2c7.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/rsashka/" class="tm-user-info__username">rsashka <!----></a><!--[--><a href="/en/articles/812117/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-03T13:50:07.000Z" title="2024-05-03, 16:50"> May 3 at 16:50</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/812117/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Building blocks in programming languages</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-medium"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-medium"></use></svg></span><span class="tm-article-complexity__label">Medium</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">5 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">375</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/crazydev/" class="tm-publication-hub__link"><!--[--><span>Abnormal programming</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/python/" class="tm-publication-hub__link"><!--[--><span>Python</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/programming/" class="tm-publication-hub__link"><!--[--><span>Programming</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/cpp/" class="tm-publication-hub__link"><!--[--><span>C++</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-opinion"><span>Opinion</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><!----><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-1"><p>Practically all programming languages are built either on the principle of similarity (to make like this one, only with its own blackjack) or to realize some new concept (modularity, purity of functional calculations, etc.). Or both at the same time. </p><br> <p>But in any case, the creator of a new programming language doesn't take his ideas randomly out of thin air. They are still based on his previous experience, obsession with the new concept and other initial settings and constraints.</p><br> <p>Is there a minimal set of lexemes, operators, or syntactic constructs that can be used to construct an arbitrary grammar for a modern general-purpose programming language?</p></div></div><!----><!----></div><a href="/en/articles/812117/" class="tm-article-snippet__readmore"><!--[--><span>Read more &rarr;</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 2: ↑1 and ↓1</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 2: ↑1 and ↓1">+2</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">1</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/812117/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="811867" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/AiratGl/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="AiratGl"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/12c/83c/a29/12c83ca29d8a6c90f9a91137e97e3f6a.png" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/AiratGl/" class="tm-user-info__username">AiratGl <!----></a><!--[--><a href="/en/articles/811867/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-02T16:34:48.000Z" title="2024-05-02, 19:34"> May 2 at 19:34</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/811867/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>What is to see under the Black Sun of Giedi Prime?</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-low"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-low"></use></svg></span><span class="tm-article-complexity__label">Easy</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">6 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">559</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/popular_science/" class="tm-publication-hub__link"><!--[--><span>Popular science</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/physics/" class="tm-publication-hub__link"><!--[--><span>Physics</span><!----><!--]--></a></span><!--]--></div></div><!----><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/343/ebc/444/343ebc444b5c89a90742523bdb3f59d7.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>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.</p><p></p></div></div><!----><!----></div><a href="/en/articles/811867/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 5: ↑5 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 5: ↑5 and ↓0">+7</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">0</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/811867/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="811749" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/SergeyBPshenichnikov/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="SergeyBPshenichnikov"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/3f0/ba7/126/3f0ba71264b3d34b99abb86e7e787158.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/SergeyBPshenichnikov/" class="tm-user-info__username">SergeyBPshenichnikov <!----></a><!--[--><a href="/en/articles/811749/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-05-02T09:07:14.000Z" title="2024-05-02, 12:07"> May 2 at 12:07</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/811749/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>VERBAL CALCULATION (VC) IN EVIDENCE-BASED DSS AND NLP</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-medium"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-medium"></use></svg></span><span class="tm-article-complexity__label">Medium</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">14 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">177</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/sw/" class="tm-publication-hub__link"><!--[--><span>Semantics</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/maths/" class="tm-publication-hub__link"><!--[--><span>Mathematics</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/artificial_intelligence/" class="tm-publication-hub__link"><!--[--><span>Artificial Intelligence</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/natural_language_processing/" class="tm-publication-hub__link"><!--[--><span>Natural Language Processing</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-faq"><span>FAQ</span></div><!--[--><div class="tm-publication-label tm-publication-label_variant-translation"><span>Translation</span></div><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w780/getpro/habr/upload_files/770/1a6/b9f/7701a6b9fc4bfbede173791b3cee62c1.jpg" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>S.B. Pshenichnikov</p><p><em>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.</em></p><p>&nbsp;</p><p>The use of IT in Natural Language Processing (NLP) requires standardization of texts, for example, tokenization or lemmatization. </p><p>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).</p><p>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.</p><p>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.</p><p>Hyperbinary numbers have their &nbsp;own &nbsp;arithmetic, &nbsp;and &nbsp;if &nbsp;you get used to &nbsp;it, &nbsp;it &nbsp;will &nbsp;seem &nbsp;more &nbsp;familiar &nbsp;and &nbsp;simpler &nbsp;than &nbsp;Pythagorean arithmetic.</p><p>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.</p><p></p></div></div><!----><!----></div><a href="/en/articles/811749/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 3: ↑3 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 3: ↑3 and ↓0">+4</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">1</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/811749/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><div class="tm-article-feed-blocks"><!----></div><!--]--></div><!--]--><!--[--><a name="more-news"></a><article id="810931" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/kentavr009/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="kentavr009"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/04d/807/146/04d80714648eb7e2b3e00d8fd8d6eebc.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/kentavr009/" class="tm-user-info__username">kentavr009 <!----></a><!--[--><a href="/en/articles/810931/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-27T09:02:00.000Z" title="2024-04-27, 12:02"> Apr 27 at 12:02</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/810931/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Experiment: How to disguise the use of Tor to bypass blocking</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-medium"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-medium"></use></svg></span><span class="tm-article-complexity__label">Medium</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">4 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">720</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/network_technologies/" class="tm-publication-hub__link"><!--[--><span>Network technologies</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-analytics"><span>Analytics</span></div><!--[--><div class="tm-publication-label tm-publication-label_variant-translation"><span>Translation</span></div><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/525/080/e14/525080e14d4cece3fc2ca5b70eed88a9.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>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. </p><p>Scientists from Carnegie Mellon University, Stanford University, and SRI International conducted an <a href="https://www.frankwang.org/files/papers/ccs2012.pdf" rel="noopener noreferrer nofollow"><u>experiment</u></a> 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.</p><p></p></div></div><!----><!----></div><a href="/en/articles/810931/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 3: ↑3 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 3: ↑3 and ↓0">+4</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">0</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/810931/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="810601" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/kentavr009/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="kentavr009"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/04d/807/146/04d80714648eb7e2b3e00d8fd8d6eebc.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/kentavr009/" class="tm-user-info__username">kentavr009 <!----></a><!--[--><a href="/en/articles/810601/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-26T05:57:29.000Z" title="2024-04-26, 08:57"> Apr 26 at 08:57</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/810601/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>互联网屏蔽是如何工作的:使用实例概述现代方法</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-high"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-high"></use></svg></span><span class="tm-article-complexity__label">Hard</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">2 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">1.3K</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/research/" class="tm-publication-hub__link"><!--[--><span>Research and forecasts in IT</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-analytics"><span>Analytics</span></div><!--[--><div class="tm-publication-label tm-publication-label_variant-translation"><span>Translation</span></div><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/e90/f43/4f7/e90f434f7b1da82841b2d86801404dbf.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>一组印度科学家<a href="https://censorbib.nymity.ch/pdf/Yadav2018a.pdf" rel="noopener noreferrer nofollow"><u>发表</u></a>了以其本国为例政府机构采用的现代互联网屏蔽方法概述。他们研究了互联网服务提供商限制访问被禁信息的机制,评估了这些机制的准确性以及绕过这些屏蔽的能力。<a href="https://2captcha.com" rel="noopener noreferrer nofollow"><u>2captcha常驻代理</u></a>团队整理了这项研究,并提请大家关注这项工作成果的主要论点。</p><p></p></div></div><!----><!----></div><a href="/en/articles/810601/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 7: ↑5 and ↓2</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 7: ↑5 and ↓2">+7</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">1</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/810601/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">10</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="810557" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-news"><span class="publication-type-label__label publication-type-label__label_type-news">News</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/RoyalBeat/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="RoyalBeat"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/067/1cf/cb3/0671cfcb3ce7493b857eb5f0798570eb.png" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/RoyalBeat/" class="tm-user-info__username">RoyalBeat <!----></a><!--[--><a href="/en/news/810557/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-25T20:31:42.000Z" title="2024-04-25, 23:31"> Apr 25 at 23:31</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/news/810557/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>The streaming service Atlas.Music is modernizing the music production industry through the use of machine learning</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><!----><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">3 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">296</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/analysis_design/" class="tm-publication-hub__link"><!--[--><span>System Analysis and Design</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/cpp/" class="tm-publication-hub__link"><!--[--><span>C++</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/algorithms/" class="tm-publication-hub__link"><!--[--><span>Algorithms</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/artificial_intelligence/" class="tm-publication-hub__link"><!--[--><span>Artificial Intelligence</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/tensorflow/" class="tm-publication-hub__link"><!--[--><span>TensorFlow</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><!----><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/f7a/9c6/b53/f7a9c6b533d36317a3cbded60b3a44e2.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>A startup project to identify the success of musical works based on artificial intelligence has already been launched and is working.</p><p></p></div></div><!----><!----></div><a href="/en/news/810557/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 3: ↑2 and ↓1</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 3: ↑2 and ↓1">+3</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">2</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/news/810557/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><div class="tm-article-feed-blocks"><!----></div><!--]--></div><!--]--><!--[--><!----><article id="810165" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/kentavr009/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="kentavr009"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/04d/807/146/04d80714648eb7e2b3e00d8fd8d6eebc.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/kentavr009/" class="tm-user-info__username">kentavr009 <!----></a><!--[--><a href="/en/articles/810165/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-24T12:45:04.000Z" title="2024-04-24, 15:45"> Apr 24 at 15:45</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/810165/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>How blocking on the Internet works: an overview of modern methods using a real example</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-low"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-low"></use></svg></span><span class="tm-article-complexity__label">Easy</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">4 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">797</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/infosecurity/" class="tm-publication-hub__link"><!--[--><span>Information Security</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/research/" class="tm-publication-hub__link"><!--[--><span>Research and forecasts in IT</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-analytics"><span>Analytics</span></div><!--[--><div class="tm-publication-label tm-publication-label_variant-recovery"><span>Recovery Mode</span></div><div class="tm-publication-label tm-publication-label_variant-translation"><span>Translation</span></div><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/90a/49b/0e9/90a49b0e9e4e963dca30eb3414f3e596.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>A group of Indian scientists has <a href="https://censorbib.nymity.ch/pdf/Yadav2018a.pdf" rel="noopener noreferrer nofollow">published</a> an overview of modern methods of Internet blocking introduced by government agencies, using the example of their own country. They studied the mechanisms used by Internet service providers restricting access to prohibited information, assessed their accuracy, and the ability to bypass such blocks. We would like to bring to your attention the main theses of this work.</p><p></p></div></div><!----><!----></div><a href="/en/articles/810165/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 4: ↑4 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 4: ↑4 and ↓0">+5</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">3</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/810165/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="809877" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/rsashka/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="rsashka"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/ad5/d5f/eb2/ad5d5feb2fbf547d4d74f65d041cb2c7.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/rsashka/" class="tm-user-info__username">rsashka <!----></a><!--[--><a href="/en/articles/809877/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-23T16:00:56.000Z" title="2024-04-23, 19:00"> Apr 23 at 19:00</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/809877/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Possible solution to the problem of references in programming languages</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-medium"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-medium"></use></svg></span><span class="tm-article-complexity__label">Medium</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">4 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">422</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/crazydev/" class="tm-publication-hub__link"><!--[--><span>Abnormal programming</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/programming/" class="tm-publication-hub__link"><!--[--><span>Programming</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/complete_code/" class="tm-publication-hub__link"><!--[--><span>Perfect code</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-opinion"><span>Opinion</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><!----><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-1"><p><img src="https://habrastorage.org/webt/xl/4d/uy/xl4duyyseltgpsqlhu09_vp-zvk.jpeg"></p><br> <p>Every programmer is familiar with the concept of &quot;reference.&quot; This term usually refers to a small object whose main task is to provide access to another object physically located elsewhere. Because of this, references are convenient to use, they are easily copied, and they make it very easy to access the object to which the reference points, allowing access to the same data from different parts of the program.</p><br> <p>Unfortunately, manual memory management, or more precisely, manual memory control, is the most common cause of various errors and vulnerabilities in software. All attempts at automatic memory management through various managers are hampered by the need to control the creation and deletion of objects, as well as periodically run garbage collection, which negatively affects application performance.</p><br> <p>However, references in one form or another are supported in all programming languages, although the term often implies not completely equivalent terms. For example, the word &quot;reference&quot; can be understood as a reference as an address in memory (as in C++) and a reference as a pointer to an object (as in Python or Java). </p><br> <p>Although there are programming languages that try to solve these problems through the concept of &quot;ownership&quot; (<a href="https://www.rust-lang.org/" rel="nofollow noopener noreferrer">Rust</a>, <a href="https://aglang.org/" rel="nofollow noopener noreferrer">Argentum</a>, or <a href="https://newlang.net/" rel="nofollow noopener noreferrer">NewLang</a>). The possible solution to these and other existing problems with references will be discussed further.</p></div></div><!----><!----></div><a href="/en/articles/809877/" class="tm-article-snippet__readmore"><!--[--><span>Read more &rarr;</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 2: ↑2 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 2: ↑2 and ↓0">+3</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">1</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/809877/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="809867" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/Nicotino/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="Nicotino"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/9f0/f33/523/9f0f33523aa672f86706ca5431b1c114.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/Nicotino/" class="tm-user-info__username">Nicotino <!----></a><!--[--><a href="/en/articles/809867/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-23T15:37:56.000Z" title="2024-04-23, 18:37"> Apr 23 at 18:37</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/809867/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Enabling Cross-Process Dialogue with C# Sockets</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-medium"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-medium"></use></svg></span><span class="tm-article-complexity__label">Medium</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">4 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">402</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/net/" class="tm-publication-hub__link"><!--[--><span>.NET</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/csharp/" class="tm-publication-hub__link"><!--[--><span>C#</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-case"><span>Case</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/ad3/516/0a9/ad35160a9d0950215359ffac1b2d34f3.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>In the ever-evolving landscape of software development, communication between processes has been a fundamental requirement since the inception of computer networking. As technology advanced, the need for efficient and reliable inter-process communication (IPC) mechanisms became increasingly crucial. One such mechanism that has stood the test of time is the socket.<br>Sockets trace their origins back to the early days of computer networking in the 1970s. The concept was first introduced in the Unix operating system by researchers at the University of California, Berkeley, as part of their work on the ARPANET project, which eventually evolved into the modern internet. Sockets were designed to provide a standardized interface for network communication, allowing processes to exchange data across different machines and networks.<br>Initially, sockets were primarily used for network programming tasks, such as building client-server applications and facilitating communication between distributed systems. However, their versatility soon became apparent, and sockets found their way into various domains, including inter-process communication (IPC) within a single machine.<br>Over the years, sockets have undergone numerous enhancements and standardizations, with the Berkeley Software Distribution (BSD) sockets becoming the de facto standard for network programming. This standard was later adopted by other operating systems, including Microsoft Windows, ensuring cross-platform compatibility and enabling widespread adoption.<br>In the world of software development, communication between processes is a common requirement, whether it’s a client-server architecture, distributed systems, or inter-process communication (IPC). Sockets provide a powerful mechanism for processes to exchange data efficiently and reliably. This article explores a simple implementation of a TCP client-server communication using sockets in C#, showcasing the versatility and robustness of this time-tested technology.</p><p></p></div></div><!----><!----></div><a href="/en/articles/809867/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 2: ↑2 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 2: ↑2 and ↓0">+3</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">2</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/809867/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><div class="tm-article-feed-blocks"><div class="tm-adfox-banner__container"><div id="adfox_164725660339535756" class="tm-adfox-banner tm-adfox-banner_variant-leaderboard tm-adfox-banner"></div></div></div><!--]--></div><!--]--><!--[--><!----><article id="809137" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/netleon/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="netleon"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/809/db3/924/809db3924a12cd5dd0e9f5c3e9b034b4.png" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/netleon/" class="tm-user-info__username">netleon <!----></a><!--[--><a href="/en/articles/809137/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-22T05:28:12.000Z" title="2024-04-22, 08:28"> Apr 22 at 08:28</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/809137/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Unlocking Selenium Testing for Flutter's Web Apps</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-medium"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-medium"></use></svg></span><span class="tm-article-complexity__label">Medium</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">3 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">347</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/flutter/" class="tm-publication-hub__link"><!--[--><span>Flutter</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-tutorial"><span>Tutorial</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/0df/098/9fe/0df0989feb10470d3736b3de047e8faa.png" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>Navigating the intricacies of UI testing in the world of Flutter web applications can be a daunting task. If you've ever found yourself scratching your head, wondering how to apply your Selenium expertise to a Flutter-rendered interface, this article is for you. We're going to explore a method that bridges the gap between Flutter's unique rendering process and the robust testing capabilities of Selenium. Whether you're a seasoned tester or just starting out, the insights shared here will equip you with the knowledge to streamline your testing process and enhance the quality of your Flutter web apps. So, grab a cup of coffee, settle in, and let's unravel the mysteries of UI testing for Flutter web applications together.</p><p></p></div></div><!----><!----></div><a href="/en/articles/809137/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 2: ↑2 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 2: ↑2 and ↓0">+3</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">1</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/809137/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="808639" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/SYSTEM_FAILURE/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="SYSTEM_FAILURE"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/r/w48/getpro/habr/avatars/e46/132/7d1/e461327d1a0f5a3d5e6b89311485051f.jpg" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/SYSTEM_FAILURE/" class="tm-user-info__username">SYSTEM_FAILURE <!----></a><!--[--><a href="/en/articles/808639/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-18T09:23:29.000Z" title="2024-04-18, 12:23"> Apr 18 at 12:23</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/808639/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Copy Trading: A Viable Earning Strategy or Just Another Broker Scam?</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><!----><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">11 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">549</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/cryptocurrency/" class="tm-publication-hub__link"><!--[--><span>Cryptocurrencies</span><!----><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-analytics"><span>Analytics</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w1560/getpro/habr/upload_files/132/eb4/c37/132eb4c379b133cbaacd6df9dba05629.png" style="object-position: 44% 2%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>Hello everyone!</p><p>A year ago, I became curious about whether it was possible to earn money in crypto by copying the trades of other traders. Instead of investing money right away, I decided to thoroughly explore this by writing a parser that monitored about 2,000 portfolios in real-time over the course of a year.</p><p>Initially, I parsed the Traderwagon site, which unfortunately shut down. I then switched to Binance's copy trading, which was just starting out at the time.</p><p>The number of portfolios available for investment on Binance is continually growing; currently, there are over 10,000. My script only parsed a portion of these to maintain about 2,000 consistent portfolios. This was necessary to track changes in traders' positions at least every 20 minutes with the server resources I had allocated for the project.</p><p>There are several peculiarities in how my parser operates. For example, when a trader hides their positions, my script also closes them since it can't monitor hidden trades. When a trader significantly adjusts their position, such as a complete turnaround, the script exits the trade. I chose to save time on developing a more complex follow-algorithm and planned to refine it later if the testing stage proved successful. I also limited the time a trader could stay in a deal to a few days and forcibly closed positions if this period was exceeded. I observed that staying in a trade longer slightly increased the average profit/loss, whereas reducing the time allowed for reinvesting the same funds into a greater number of traders and their deals.</p><p></p></div></div><!----><!----></div><a href="/en/articles/808639/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 2: ↑2 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 2: ↑2 and ↓0">+3</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">2</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/808639/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="808425" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/deema35/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="deema35"><div class="tm-entity-image"><img alt="" class="tm-entity-image__pic" height="24" src="//habrastorage.org/getpro/habr/avatars/c63/50c/4cd/c6350c4cdc311a1ddc793207248e31cb.gif" width="24"></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/deema35/" class="tm-user-info__username">deema35 <!----></a><!--[--><a href="/en/articles/808425/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-17T11:27:30.000Z" title="2024-04-17, 14:27"> Apr 17 at 14:27</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/808425/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>Structure of Linux driver for single-board computer</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-low"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-low"></use></svg></span><span class="tm-article-complexity__label">Easy</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">5 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">680</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/linux/" class="tm-publication-hub__link"><!--[--><span>Configuring Linux</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/nix/" class="tm-publication-hub__link"><!--[--><span>*nix</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/controllers/" class="tm-publication-hub__link"><!--[--><span>Programming microcontrollers</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/raspberrypi/" class="tm-publication-hub__link"><!--[--><span>Development for Raspberry Pi</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-tutorial"><span>Tutorial</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w780/getpro/habr/upload_files/8b3/325/619/8b3325619512939e991fa1ca8127e703.jpg" style="object-position: 0% 100%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>Hello my name is Dmitry. Recently I wrote article <a href="https://habr.com/ru/articles/804233/" rel="noopener noreferrer nofollow">"Building firmware for Orange PI i96 (Orange PI 2g-iot) from scratch"</a> . If you haven't read it yat, I highly recommend. And there I noticed that in order to build firware on current kernel, I have to rewrite drivers wirh new archetecture "Device tree". In this article I have revelate how I do it.</p><p></p></div></div><!----><!----></div><a href="/en/articles/808425/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 2: ↑1 and ↓1</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 2: ↑1 and ↓1">+2</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">4</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/808425/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--[--><!----><article id="807911" class="tm-articles-list__item" data-navigatable data-test-id="articles-list-item" tabindex="0"><div class="tm-article-snippet tm-article-snippet"><!--[--><div class="publication-type-label publication-type-label_type-article"><span class="publication-type-label__label publication-type-label__label_type-article">Article</span></div><!--]--><div class="tm-article-snippet__meta-container"><div class="tm-article-snippet__meta"><span class="tm-user-info tm-article-snippet__author"><a href="/en/users/Svetlana_Zueva/" class="tm-user-info__userpic" data-test-id="user-info-pic" title="Svetlana_Zueva"><div class="tm-entity-image"><!--[--><img alt="" class="tm-entity-image__pic" height="24" src="https://assets.habr.com/habr-web/img/avatars/049.png" width="24"><!--]--></div></a><span class="tm-user-info__user tm-user-info__user_appearance-default" data-test-id="user-info-description"><a href="/en/users/Svetlana_Zueva/" class="tm-user-info__username">Svetlana_Zueva <!----></a><!--[--><a href="/en/articles/807911/" class="tm-article-datetime-published tm-article-datetime-published_link"><!--[--><time datetime="2024-04-15T17:42:23.000Z" title="2024-04-15, 20:42"> Apr 15 at 20:42</time><!--]--></a><!--]--></span></span></div><!----></div><h2 class="tm-title tm-title_h2" data-test-id="articleTitle"><!--[--><a href="/en/articles/807911/" class="tm-title__link" data-article-link="true" data-test-id="article-snippet-title-link"><span>7 tips to make video learning more effective</span></a><!--]--></h2><div class="tm-article-snippet__stats" data-test-id="articleStats"><div class="tm-article-complexity tm-article-complexity_complexity-low"><span class="tm-svg-icon__wrapper tm-article-complexity__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Level of difficulty</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#complexity-low"></use></svg></span><span class="tm-article-complexity__label">Easy</span></div><div class="tm-article-reading-time"><span class="tm-svg-icon__wrapper tm-article-reading-time__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Reading time</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#clock"></use></svg></span><span class="tm-article-reading-time__label">5 min</span></div><span class="tm-icon-counter tm-data-icons__item"><svg class="tm-svg-img tm-icon-counter__icon" height="24" width="24"><title>Views</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-views"></use></svg><span class="tm-icon-counter__value">6.8K</span></span></div><div class="tm-publication-hubs__container" data-test-id="articleHubsList"><div class="tm-publication-hubs"><!--[--><span class="tm-publication-hub__link-container"><a href="/en/hubs/video/" class="tm-publication-hub__link"><!--[--><span>Working with video</span><span class="tm-article-snippet__profiled-hub" title="Core hub">*</span><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/study/" class="tm-publication-hub__link"><!--[--><span>Studying in IT</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/edu/" class="tm-publication-hub__link"><!--[--><span>Education abroad</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/read/" class="tm-publication-hub__link"><!--[--><span>Reading room</span><!----><!--]--></a></span><span class="tm-publication-hub__link-container"><a href="/en/hubs/design/" class="tm-publication-hub__link"><!--[--><span>Design</span><!----><!--]--></a></span><!--]--></div></div><div class="tm-article-labels" data-test-id="articleLabels"><div class="tm-article-labels__container"><div class="tm-publication-label tm-publication-label_variant-tutorial"><span>Tutorial</span></div><!--[--><!--]--></div></div><!----><div class="tm-article-body tm-article-snippet__lead"><div class="tm-article-snippet__cover_cover tm-article-snippet__cover"><img class="tm-article-snippet__lead-image" data-test-id="articleLeadImage" src="https://habrastorage.org/r/w780/getpro/habr/upload_files/ec6/ca5/cf0/ec6ca5cf0726c452e7b30634757792fd.jpg" style="object-position: 0% 0%"></div><div><div><div class="article-formatted-body article-formatted-body article-formatted-body_version-2"><p>While video-based learning continues to rank high in the latest trends, there are a few points that are regularly overlooked in the production of learning videos, with a focus on user experience (UX) and user interaction&nbsp;</p><p>People really enjoy watching videos. According to a survey conducted among consumers worldwide, respondents <a href="https://www.statista.com/statistics/611707/online-video-time-spent/" rel="noopener noreferrer nofollow"><u>watched an average of 19 hours</u></a> of online video content per week in 2022. And nearly half of all internet users <a href="https://www.oberlo.com/statistics/online-video-consumption-statistics" rel="noopener noreferrer nofollow"><u>watch online videos at least once a week</u></a>.</p><p></p></div></div><!----><!----></div><a href="/en/articles/807911/" class="tm-article-snippet__readmore"><!--[--><span>Read more</span><!--]--></a></div></div><div class="tm-data-icons tm-data-icons tm-data-icons_space-big" data-test-id="article-stats-icons"><!----><div class="tm-votes-meter tm-data-icons__item"><svg class="tm-svg-img tm-votes-meter__icon tm-votes-meter__icon tm-votes-meter__icon_appearance-article" height="24" width="24"><title>Total votes 28: ↑28 and ↓0</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-rating"></use></svg><span class="tm-votes-meter__value tm-votes-meter__value_positive tm-votes-meter__value_appearance-article tm-votes-meter__value_rating tm-votes-meter__value" data-test-id="votes-meter-value" title="Total votes 28: ↑28 and ↓0">+28</span></div><!----><button class="bookmarks-button tm-data-icons__item" title="Add to bookmarks" type="button"><span class="tm-svg-icon__wrapper bookmarks-button__icon"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Add to bookmarks</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-favorite"></use></svg></span><span class="bookmarks-button__counter" title="Users added publication to bookmarks">9</span></button><div class="tm-sharing tm-data-icons__item" title="Share"><button class="tm-sharing__button" type="button"><svg viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="tm-sharing__icon"><path fill="currentColor" d="M13.8 13.8V18l7.2-6.6L13.8 5v3.9C5 8.9 3 18.6 3 18.6c2.5-4.4 6-4.8 10.8-4.8z"></path></svg></button><!--teleport start--><!--teleport end--></div><div class="tm-article-comments-counter-link tm-data-icons__item" title="Read comments"><a href="/en/articles/807911/comments/" class="tm-article-comments-counter-link__link" data-test-id="counter-comments"><!--[--><svg class="tm-svg-img tm-article-comments-counter-link__icon" height="24" width="24"><title>Comments</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#counter-comments"></use></svg><span class="tm-article-comments-counter-link__value">0</span><!--]--></a><!----></div><!--[--><!--]--><!--teleport start--><!--teleport end--><!----></div></article><div class="tm-articles-list__after-article"><!--[--><!----><!----><!--]--></div><!--]--><!--]--></div><div class="tm-articles-list__after-articles"><!--[--><!--]--></div><div class="tm-pagination" data-test-id="pagination"><div id="pagination-prev-page" class="tm-pagination__navigation-link" data-test-id="pagination-prev-page" data-pagination-prev="true"><!--[--><svg class="tm-svg-img tm-pagination__arrow tm-pagination__arrow_prev" height="16" width="16"><title>Back</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#arrow-back"></use></svg><span class="tm-pagination__navigation-link-title">Here</span><!--]--></div><div class="tm-pagination__pages"><!--[--><!--]--><span class="tm-pagination__page tm-pagination__page_current" data-test-id="pagination-current-page">1</span><!--[--><div class="tm-pagination__page-group"><!--[--><!--[--><a class="tm-pagination__page" href="/en/feed/page2/">2</a><!--]--><!--[--><a class="tm-pagination__page" href="/en/feed/page3/">3</a><!--]--><!--]--><span class="tm-pagination__page tm-pagination__page_skip"> ... </span></div><div class="tm-pagination__page-group"><!--[--><!--[--><a class="tm-pagination__page" href="/en/feed/page49/">49</a><!--]--><!--[--><a class="tm-pagination__page" href="/en/feed/page50/">50</a><!--]--><!--]--><!----></div><!--]--></div><!--[--><a id="pagination-prev-page" class="tm-pagination__navigation-link tm-pagination__navigation-link_active" data-test-id="pagination-next-page" data-pagination-next="true" href="/en/feed/page2/" rel="next"><!--[--><span class="tm-pagination__navigation-link-title">There</span><svg class="tm-svg-img tm-pagination__arrow tm-pagination__arrow_next" height="16" width="16"><title>Back</title><use xlink:href="/img/megazord-v28.06b08bfb..svg#arrow-back"></use></svg><!--]--></a><!--]--></div><!--]--></div><!--]--><!--]--></div></div><div class="tm-page__sidebar"><!--[--><div class="tm-layout-sidebar"><div class="tm-layout-sidebar__placeholder_initial"></div><div class="tm-sexy-sidebar_initial tm-sexy-sidebar" style="margin-top:0px;"><div class="tm-layout-sidebar__ads_initial tm-layout-sidebar__ads"><div class="tm-adfox-banner__container tm-layout-sidebar__banner tm-layout-sidebar__banner_top"><div id="adfox_164725680533065327" class="tm-adfox-banner tm-adfox-banner_variant-half-page tm-adfox-banner"></div></div></div><!--[--><!----><!----><!--]--><div class="tm-adfox-banner__container tm-layout-sidebar__banner tm-layout-sidebar__banner_bottom"><div id="adfox_164725691003361602" class="tm-adfox-banner tm-adfox-banner_variant-medium-rectangle tm-adfox-banner"></div></div></div></div><!--]--></div></div><!--]--></div></div></main><!----></div><div class="tm-footer-menu"><div class="tm-page-width"><!--[--><div class="tm-footer-menu__container"><!--[--><div class="tm-footer-menu__block"><p class="tm-footer-menu__block-title">Your account</p><div class="tm-footer-menu__block-content"><ul class="tm-footer-menu__list"><!--[--><li class="tm-footer-menu__list-item"><a href="/kek/v1/auth/habrahabr/?back=/en/feed/&amp;hl=en" rel="nofollow" target="_self">Log in</a></li><li class="tm-footer-menu__list-item"><a href="/kek/v1/auth/habrahabr-register/?back=/en/feed/&amp;hl=en" rel="nofollow" target="_self">Sign up</a></li><!--]--></ul></div></div><div class="tm-footer-menu__block"><p class="tm-footer-menu__block-title">Sections</p><div class="tm-footer-menu__block-content"><ul class="tm-footer-menu__list"><!--[--><li class="tm-footer-menu__list-item"><a href="/en/articles/" class="footer-menu__item-link">Articles</a></li><li class="tm-footer-menu__list-item"><a href="/en/news/" class="footer-menu__item-link">News</a></li><li class="tm-footer-menu__list-item"><a href="/en/hubs/" class="footer-menu__item-link">Hubs</a></li><li class="tm-footer-menu__list-item"><a href="/en/users/" class="footer-menu__item-link">Authors</a></li><li class="tm-footer-menu__list-item"><a href="/en/sandbox/" class="footer-menu__item-link">Sandbox</a></li><!--]--></ul></div></div><div class="tm-footer-menu__block"><p class="tm-footer-menu__block-title">Information</p><div class="tm-footer-menu__block-content"><ul class="tm-footer-menu__list"><!--[--><li class="tm-footer-menu__list-item"><a href="/en/docs/help/" class="footer-menu__item-link">How it works</a></li><li class="tm-footer-menu__list-item"><a href="/en/docs/authors/codex/" class="footer-menu__item-link">For authors</a></li><li class="tm-footer-menu__list-item"><a href="/en/docs/companies/corpblogs/" class="footer-menu__item-link">For companies</a></li><li class="tm-footer-menu__list-item"><a href="/en/docs/docs/transparency/" class="footer-menu__item-link">Documents</a></li><li class="tm-footer-menu__list-item"><a href="https://account.habr.com/info/agreement/?hl=en_US" target="_blank">Agreement</a></li><li class="tm-footer-menu__list-item"><a href="https://account.habr.com/info/confidential/?hl=en_US" target="_blank">Confidential</a></li><!--]--></ul></div></div><div class="tm-footer-menu__block"><p class="tm-footer-menu__block-title">Services</p><div class="tm-footer-menu__block-content"><ul class="tm-footer-menu__list"><!--[--><li class="tm-footer-menu__list-item"><a href="https://company.habr.com/en/corporate-blogs/" target="_blank">Corporate blogs</a></li><li class="tm-footer-menu__list-item"><a href="https://company.habr.com/en/advertising/" target="_blank">Advertising</a></li><li class="tm-footer-menu__list-item"><a href="https://company.habr.com/en/native-special/" target="_blank">Native advertising</a></li><li class="tm-footer-menu__list-item"><a href="https://company.habr.com/en/education-programs/" target="_blank">Education programs</a></li><li class="tm-footer-menu__list-item"><a href="https://company.habr.com/en/hello-startup/" target="_blank">Startups</a></li><!--]--></ul></div></div><!--]--></div><!--]--></div></div><div class="tm-footer"><div class="tm-page-width"><!--[--><div class="tm-footer__container"><!----><div class="tm-footer__social"><!--[--><a class="tm-svg-icon__wrapper tm-social-icons__icon" href="https://www.facebook.com/habr.eng" rel="nofollow noopener noreferrer" target="_blank"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Facebook</title><use xlink:href="/img/new-social-icons-sprite.svg#social-logo-facebook"></use></svg></a><a class="tm-svg-icon__wrapper tm-social-icons__icon" href="https://twitter.com/habr_eng" rel="nofollow noopener noreferrer" target="_blank"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Twitter</title><use xlink:href="/img/new-social-icons-sprite.svg#social-logo-twitter"></use></svg></a><a class="tm-svg-icon__wrapper tm-social-icons__icon" href="https://t.me/habr_eng" rel="nofollow noopener noreferrer" target="_blank"><svg class="tm-svg-img tm-svg-icon" height="24" width="24"><title>Telegram</title><use xlink:href="/img/new-social-icons-sprite.svg#social-logo-telegram"></use></svg></a><!--]--></div><!--teleport start--><!--teleport end--><button class="tm-footer__link"><!----> Language settings</button><a href="/en/feedback/" class="tm-footer__link">Support</a><div class="tm-footer-copyright"><span class="tm-copyright"><span class="tm-copyright__years">© 2006–2024, </span><span class="tm-copyright__name"><a class="tm-copyright__link" href="https://company.habr.com/en/" rel="noopener" target="_blank">Habr</a></span></span></div></div><!--]--></div></div><!----><!--]--></div><!----></div><script>window.__INITIAL_STATE__={"adblock":{"hasAcceptableAdsFilter":false,"hasAdblock":false},"articlesList":{"articlesList":{"807911":{"id":"807911","timePublished":"2024-04-15T17:42:23+00:00","isCorporative":false,"lang":"en","titleHtml":"7 tips to make video learning more effective","editorVersion":"2.0","postType":"article","publicationType":"article","postLabels":[],"author":{"id":"3410283","alias":"Svetlana_Zueva","fullname":null,"avatarUrl":null,"speciality":null},"statistics":{"commentsCount":0,"favoritesCount":9,"readingCount":6785,"score":28,"votesCount":28,"votesCountPlus":28,"votesCountMinus":0},"hubs":[{"id":"262","alias":"video","type":"collective","title":"Working with video","titleHtml":"Working with video","isProfiled":true,"relatedData":null},{"id":"20696","alias":"study","type":"collective","title":"Studying in IT","titleHtml":"Studying in IT","isProfiled":false,"relatedData":null},{"id":"20732","alias":"edu","type":"collective","title":"Education abroad","titleHtml":"Education abroad","isProfiled":false,"relatedData":null},{"id":"20742","alias":"read","type":"collective","title":"Reading room","titleHtml":"Reading room","isProfiled":false,"relatedData":null},{"id":"21892","alias":"design","type":"collective","title":"Design","titleHtml":"Design","isProfiled":false,"relatedData":null}],"flows":[{"id":"2","alias":"design","title":"Design","titleHtml":"Design"},{"id":"3","alias":"management","title":"Management","titleHtml":"Management"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":true},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":true}},"leadData":{"textHtml":"\u003Cp\u003EWhile video-based learning continues to rank high in the latest trends, there are a few points that are regularly overlooked in the production of learning videos, with a focus on user experience (UX) and user interaction&nbsp;\u003C\u002Fp\u003E\u003Cp\u003EPeople really enjoy watching videos. According to a survey conducted among consumers worldwide, respondents \u003Ca href=\"https:\u002F\u002Fwww.statista.com\u002Fstatistics\u002F611707\u002Fonline-video-time-spent\u002F\" rel=\"noopener noreferrer nofollow\"\u003E\u003Cu\u003Ewatched an average of 19 hours\u003C\u002Fu\u003E\u003C\u002Fa\u003E of online video content per week in 2022. And nearly half of all internet users \u003Ca href=\"https:\u002F\u002Fwww.oberlo.com\u002Fstatistics\u002Fonline-video-consumption-statistics\" rel=\"noopener noreferrer nofollow\"\u003E\u003Cu\u003Ewatch online videos at least once a week\u003C\u002Fu\u003E\u003C\u002Fa\u003E.\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E","imageUrl":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw780\u002Fgetpro\u002Fhabr\u002Fupload_files\u002Fec6\u002Fca5\u002Fcf0\u002Fec6ca5cf0726c452e7b30634757792fd.jpg","buttonTextHtml":"Read more","image":{"url":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw780\u002Fgetpro\u002Fhabr\u002Fupload_files\u002Fec6\u002Fca5\u002Fcf0\u002Fec6ca5cf0726c452e7b30634757792fd.jpg","fit":"cover","positionY":0,"positionX":0}},"status":"published","plannedPublishTime":null,"checked":null,"format":"tutorial","readingTime":5,"complexity":"low","isInBlacklist":null,"tags":[{"titleHtml":"ui"},{"titleHtml":"multimedia"},{"titleHtml":"user experience"},{"titleHtml":"training"},{"titleHtml":"edtech"},{"titleHtml":"video learning"}]},"808425":{"id":"808425","timePublished":"2024-04-17T11:27:30+00:00","isCorporative":false,"lang":"en","titleHtml":"Structure of Linux driver for single-board computer","editorVersion":"2.0","postType":"article","publicationType":"article","postLabels":[],"author":{"id":"426644","alias":"deema35","fullname":"Дмитрий","avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002Fc63\u002F50c\u002F4cd\u002Fc6350c4cdc311a1ddc793207248e31cb.gif","speciality":"Програмист"},"statistics":{"commentsCount":0,"favoritesCount":4,"readingCount":680,"score":2,"votesCount":2,"votesCountPlus":1,"votesCountMinus":1},"hubs":[{"id":"36","alias":"linux","type":"collective","title":"Configuring Linux","titleHtml":"Configuring Linux","isProfiled":true,"relatedData":null},{"id":"7289","alias":"nix","type":"collective","title":"*nix","titleHtml":"*nix","isProfiled":true,"relatedData":null},{"id":"19737","alias":"controllers","type":"collective","title":"Programming microcontrollers","titleHtml":"Programming microcontrollers","isProfiled":true,"relatedData":null},{"id":"21476","alias":"raspberrypi","type":"collective","title":"Development for Raspberry Pi","titleHtml":"Development for Raspberry Pi","isProfiled":true,"relatedData":null}],"flows":[{"id":"1","alias":"develop","title":"Development","titleHtml":"Development"},{"id":"6","alias":"admin","title":"Administrating","titleHtml":"Administrating"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":true},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":true}},"leadData":{"textHtml":"\u003Cp\u003EHello my name is Dmitry. Recently I wrote article \u003Ca href=\"https:\u002F\u002Fhabr.com\u002Fru\u002Farticles\u002F804233\u002F\" rel=\"noopener noreferrer nofollow\"\u003E\"Building firmware for Orange PI i96 (Orange PI 2g-iot) from scratch\"\u003C\u002Fa\u003E . If you haven't read it yat, I highly recommend. And there I noticed that in order to build firware on current kernel, I have to rewrite drivers wirh new archetecture \"Device tree\". In this article I have revelate how I do it.\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E","imageUrl":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw780\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F8b3\u002F325\u002F619\u002F8b3325619512939e991fa1ca8127e703.jpg","buttonTextHtml":"Read more","image":{"url":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw780\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F8b3\u002F325\u002F619\u002F8b3325619512939e991fa1ca8127e703.jpg","fit":"cover","positionY":100,"positionX":0}},"status":"published","plannedPublishTime":null,"checked":null,"format":"tutorial","readingTime":5,"complexity":"low","isInBlacklist":null,"tags":[{"titleHtml":"linux kernel"},{"titleHtml":"drivers"},{"titleHtml":"orange pi"},{"titleHtml":"single-board computer"}]},"808639":{"id":"808639","timePublished":"2024-04-18T09:23:29+00:00","isCorporative":false,"lang":"en","titleHtml":"Copy Trading: A Viable Earning Strategy or Just Another Broker Scam?","editorVersion":"2.0","postType":"article","publicationType":"article","postLabels":[],"author":{"id":"1672945","alias":"SYSTEM_FAILURE","fullname":null,"avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002Fe46\u002F132\u002F7d1\u002Fe461327d1a0f5a3d5e6b89311485051f.jpg","speciality":null},"statistics":{"commentsCount":0,"favoritesCount":2,"readingCount":549,"score":3,"votesCount":2,"votesCountPlus":2,"votesCountMinus":0},"hubs":[{"id":"21986","alias":"cryptocurrency","type":"collective","title":"Cryptocurrencies","titleHtml":"Cryptocurrencies","isProfiled":false,"relatedData":null}],"flows":[{"id":"7","alias":"popsci","title":"PopSci","titleHtml":"PopSci"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":true},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":true}},"leadData":{"textHtml":"\u003Cp\u003EHello everyone!\u003C\u002Fp\u003E\u003Cp\u003EA year ago, I became curious about whether it was possible to earn money in crypto by copying the trades of other traders. Instead of investing money right away, I decided to thoroughly explore this by writing a parser that monitored about 2,000 portfolios in real-time over the course of a year.\u003C\u002Fp\u003E\u003Cp\u003EInitially, I parsed the Traderwagon site, which unfortunately shut down. I then switched to Binance's copy trading, which was just starting out at the time.\u003C\u002Fp\u003E\u003Cp\u003EThe number of portfolios available for investment on Binance is continually growing; currently, there are over 10,000. My script only parsed a portion of these to maintain about 2,000 consistent portfolios. This was necessary to track changes in traders' positions at least every 20 minutes with the server resources I had allocated for the project.\u003C\u002Fp\u003E\u003Cp\u003EThere are several peculiarities in how my parser operates. For example, when a trader hides their positions, my script also closes them since it can't monitor hidden trades. When a trader significantly adjusts their position, such as a complete turnaround, the script exits the trade. I chose to save time on developing a more complex follow-algorithm and planned to refine it later if the testing stage proved successful. I also limited the time a trader could stay in a deal to a few days and forcibly closed positions if this period was exceeded. I observed that staying in a trade longer slightly increased the average profit\u002Floss, whereas reducing the time allowed for reinvesting the same funds into a greater number of traders and their deals.\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E","imageUrl":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F132\u002Feb4\u002Fc37\u002F132eb4c379b133cbaacd6df9dba05629.png","buttonTextHtml":"Read more","image":{"url":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F132\u002Feb4\u002Fc37\u002F132eb4c379b133cbaacd6df9dba05629.png","fit":"cover","positionY":2,"positionX":44}},"status":"published","plannedPublishTime":null,"checked":null,"format":"analytics","readingTime":11,"complexity":null,"isInBlacklist":null,"tags":[{"titleHtml":"trading"},{"titleHtml":"cryptocurrency"},{"titleHtml":"copytrading"}]},"809137":{"id":"809137","timePublished":"2024-04-22T05:28:12+00:00","isCorporative":false,"lang":"en","titleHtml":"Unlocking Selenium Testing for Flutter's Web Apps","editorVersion":"2.0","postType":"article","publicationType":"article","postLabels":[],"author":{"id":"1089730","alias":"netleon","fullname":"Leonid Netrebskii","avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002F809\u002Fdb3\u002F924\u002F809db3924a12cd5dd0e9f5c3e9b034b4.png","speciality":"Guiding Dev Teams to Achieve the 'Impossible'"},"statistics":{"commentsCount":0,"favoritesCount":1,"readingCount":347,"score":3,"votesCount":2,"votesCountPlus":2,"votesCountMinus":0},"hubs":[{"id":"22176","alias":"flutter","type":"collective","title":"Flutter","titleHtml":"Flutter","isProfiled":true,"relatedData":null}],"flows":[{"id":"1","alias":"develop","title":"Development","titleHtml":"Development"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false}},"leadData":{"textHtml":"\u003Cp\u003ENavigating the intricacies of UI testing in the world of Flutter web applications can be a daunting task. If you've ever found yourself scratching your head, wondering how to apply your Selenium expertise to a Flutter-rendered interface, this article is for you. We're going to explore a method that bridges the gap between Flutter's unique rendering process and the robust testing capabilities of Selenium. Whether you're a seasoned tester or just starting out, the insights shared here will equip you with the knowledge to streamline your testing process and enhance the quality of your Flutter web apps. So, grab a cup of coffee, settle in, and let's unravel the mysteries of UI testing for Flutter web applications together.\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E","imageUrl":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F0df\u002F098\u002F9fe\u002F0df0989feb10470d3736b3de047e8faa.png","buttonTextHtml":"Read more","image":{"url":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F0df\u002F098\u002F9fe\u002F0df0989feb10470d3736b3de047e8faa.png","fit":"cover","positionY":0,"positionX":0}},"status":"published","plannedPublishTime":null,"checked":null,"format":"tutorial","readingTime":3,"complexity":"medium","isInBlacklist":null,"tags":[{"titleHtml":"flutter"},{"titleHtml":"ui testing"}]},"809867":{"id":"809867","timePublished":"2024-04-23T15:37:56+00:00","isCorporative":false,"lang":"en","titleHtml":"Enabling Cross-Process Dialogue with C# Sockets","editorVersion":"2.0","postType":"article","publicationType":"article","postLabels":[],"author":{"id":"3197063","alias":"Nicotino","fullname":"Мизеров Андрей Вадимович","avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002F9f0\u002Ff33\u002F523\u002F9f0f33523aa672f86706ca5431b1c114.jpg","speciality":"C# Fullstack developer, MS SQL, разработка под iOS"},"statistics":{"commentsCount":0,"favoritesCount":2,"readingCount":402,"score":3,"votesCount":2,"votesCountPlus":2,"votesCountMinus":0},"hubs":[{"id":"546","alias":"net","type":"collective","title":".NET","titleHtml":".NET","isProfiled":true,"relatedData":null},{"id":"17718","alias":"csharp","type":"collective","title":"C#","titleHtml":"C#","isProfiled":true,"relatedData":null}],"flows":[{"id":"1","alias":"develop","title":"Development","titleHtml":"Development"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false}},"leadData":{"textHtml":"\u003Cp\u003EIn the ever-evolving landscape of software development, communication between processes has been a fundamental requirement since the inception of computer networking. As technology advanced, the need for efficient and reliable inter-process communication (IPC) mechanisms became increasingly crucial. One such mechanism that has stood the test of time is the socket.\u003Cbr\u003ESockets trace their origins back to the early days of computer networking in the 1970s. The concept was first introduced in the Unix operating system by researchers at the University of California, Berkeley, as part of their work on the ARPANET project, which eventually evolved into the modern internet. Sockets were designed to provide a standardized interface for network communication, allowing processes to exchange data across different machines and networks.\u003Cbr\u003EInitially, sockets were primarily used for network programming tasks, such as building client-server applications and facilitating communication between distributed systems. However, their versatility soon became apparent, and sockets found their way into various domains, including inter-process communication (IPC) within a single machine.\u003Cbr\u003EOver the years, sockets have undergone numerous enhancements and standardizations, with the Berkeley Software Distribution (BSD) sockets becoming the de facto standard for network programming. This standard was later adopted by other operating systems, including Microsoft Windows, ensuring cross-platform compatibility and enabling widespread adoption.\u003Cbr\u003EIn the world of software development, communication between processes is a common requirement, whether it’s a client-server architecture, distributed systems, or inter-process communication (IPC). Sockets provide a powerful mechanism for processes to exchange data efficiently and reliably. This article explores a simple implementation of a TCP client-server communication using sockets in C#, showcasing the versatility and robustness of this time-tested technology.\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E","imageUrl":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002Fad3\u002F516\u002F0a9\u002Fad35160a9d0950215359ffac1b2d34f3.png","buttonTextHtml":"Read more","image":{"url":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002Fad3\u002F516\u002F0a9\u002Fad35160a9d0950215359ffac1b2d34f3.png","fit":"cover","positionY":0,"positionX":0}},"status":"published","plannedPublishTime":null,"checked":null,"format":"case","readingTime":4,"complexity":"medium","isInBlacklist":null,"tags":[{"titleHtml":"socket"}]},"809877":{"id":"809877","timePublished":"2024-04-23T16:00:56+00:00","isCorporative":false,"lang":"en","titleHtml":"Possible solution to the problem of references in programming languages","editorVersion":"1.0","postType":"article","publicationType":"article","postLabels":[],"author":{"id":"97927","alias":"rsashka","fullname":"Александр Рябиков","avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002Fad5\u002Fd5f\u002Feb2\u002Fad5d5feb2fbf547d4d74f65d041cb2c7.jpg","speciality":"Системный архитектор"},"statistics":{"commentsCount":0,"favoritesCount":1,"readingCount":422,"score":3,"votesCount":2,"votesCountPlus":2,"votesCountMinus":0},"hubs":[{"id":"84","alias":"crazydev","type":"collective","title":"Abnormal programming","titleHtml":"Abnormal programming","isProfiled":true,"relatedData":null},{"id":"359","alias":"programming","type":"collective","title":"Programming","titleHtml":"Programming","isProfiled":true,"relatedData":null},{"id":"524","alias":"complete_code","type":"collective","title":"Perfect code","titleHtml":"Perfect code","isProfiled":true,"relatedData":null}],"flows":[{"id":"1","alias":"develop","title":"Development","titleHtml":"Development"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false}},"leadData":{"textHtml":"\u003Cp\u003E\u003Cimg src=\"https:\u002F\u002Fhabrastorage.org\u002Fwebt\u002Fxl\u002F4d\u002Fuy\u002Fxl4duyyseltgpsqlhu09_vp-zvk.jpeg\"\u003E\u003C\u002Fp\u003E\u003Cbr\u003E\r\n\u003Cp\u003EEvery programmer is familiar with the concept of &quot;reference.&quot; This term usually refers to a small object whose main task is to provide access to another object physically located elsewhere. Because of this, references are convenient to use, they are easily copied, and they make it very easy to access the object to which the reference points, allowing access to the same data from different parts of the program.\u003C\u002Fp\u003E\u003Cbr\u003E\r\n\u003Cp\u003EUnfortunately, manual memory management, or more precisely, manual memory control, is the most common cause of various errors and vulnerabilities in software. All attempts at automatic memory management through various managers are hampered by the need to control the creation and deletion of objects, as well as periodically run garbage collection, which negatively affects application performance.\u003C\u002Fp\u003E\u003Cbr\u003E\r\n\u003Cp\u003EHowever, references in one form or another are supported in all programming languages, although the term often implies not completely equivalent terms. For example, the word &quot;reference&quot; can be understood as a reference as an address in memory (as in C++) and a reference as a pointer to an object (as in Python or Java). \u003C\u002Fp\u003E\u003Cbr\u003E\r\n\u003Cp\u003EAlthough there are programming languages that try to solve these problems through the concept of &quot;ownership&quot; (\u003Ca href=\"https:\u002F\u002Fwww.rust-lang.org\u002F\" rel=\"nofollow noopener noreferrer\"\u003ERust\u003C\u002Fa\u003E, \u003Ca href=\"https:\u002F\u002Faglang.org\u002F\" rel=\"nofollow noopener noreferrer\"\u003EArgentum\u003C\u002Fa\u003E, or \u003Ca href=\"https:\u002F\u002Fnewlang.net\u002F\" rel=\"nofollow noopener noreferrer\"\u003ENewLang\u003C\u002Fa\u003E). The possible solution to these and other existing problems with references will be discussed further.\u003C\u002Fp\u003E","imageUrl":null,"buttonTextHtml":"Read more &rarr;","image":null},"status":"published","plannedPublishTime":null,"checked":null,"format":"opinion","readingTime":4,"complexity":"medium","isInBlacklist":null,"tags":[{"titleHtml":"программирование"},{"titleHtml":"python"},{"titleHtml":"синтаксис"},{"titleHtml":"c++"},{"titleHtml":"разработка языков программирования"}]},"810165":{"id":"810165","timePublished":"2024-04-24T12:45:04+00:00","isCorporative":false,"lang":"en","titleHtml":"How blocking on the Internet works: an overview of modern methods using a real example","editorVersion":"2.0","postType":"article","publicationType":"article","postLabels":[{"type":"recovery","typeOf":"system","title":"Recovery Mode","data":{"url":null}},{"type":"translation","typeOf":"system","title":"Translation","data":{"originalAuthorName":"Иван Сергеев","originalUrl":"https:\u002F\u002Fhabr.com\u002Fru\u002Fcompanies\u002Finfatica\u002Farticles\u002F462933\u002F"}}],"author":{"id":"1981533","alias":"kentavr009","fullname":"Alex Gerasimchuk","avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002F04d\u002F807\u002F146\u002F04d80714648eb7e2b3e00d8fd8d6eebc.jpg","speciality":"Marketing Specialist"},"statistics":{"commentsCount":0,"favoritesCount":3,"readingCount":797,"score":5,"votesCount":4,"votesCountPlus":4,"votesCountMinus":0},"hubs":[{"id":"50","alias":"infosecurity","type":"collective","title":"Information Security","titleHtml":"Information Security","isProfiled":true,"relatedData":null},{"id":"20688","alias":"research","type":"collective","title":"Research and forecasts in IT","titleHtml":"Research and forecasts in IT","isProfiled":true,"relatedData":null}],"flows":[{"id":"1","alias":"develop","title":"Development","titleHtml":"Development"},{"id":"3","alias":"management","title":"Management","titleHtml":"Management"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false}},"leadData":{"textHtml":"\u003Cp\u003EA group of Indian scientists has \u003Ca href=\"https:\u002F\u002Fcensorbib.nymity.ch\u002Fpdf\u002FYadav2018a.pdf\" rel=\"noopener noreferrer nofollow\"\u003Epublished\u003C\u002Fa\u003E an overview of modern methods of Internet blocking introduced by government agencies, using the example of their own country. They studied the mechanisms used by Internet service providers restricting access to prohibited information, assessed their accuracy, and the ability to bypass such blocks. We would like to bring to your attention the main theses of this work.\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E","imageUrl":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F90a\u002F49b\u002F0e9\u002F90a49b0e9e4e963dca30eb3414f3e596.png","buttonTextHtml":"Read more","image":{"url":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F90a\u002F49b\u002F0e9\u002F90a49b0e9e4e963dca30eb3414f3e596.png","fit":"cover","positionY":0,"positionX":0}},"status":"published","plannedPublishTime":null,"checked":null,"format":"analytics","readingTime":4,"complexity":"low","isInBlacklist":null,"tags":[{"titleHtml":"research"},{"titleHtml":"censored"},{"titleHtml":"infrastructure"},{"titleHtml":"blocking"}]},"810557":{"id":"810557","timePublished":"2024-04-25T20:31:42+00:00","isCorporative":false,"lang":"en","titleHtml":"The streaming service Atlas.Music is modernizing the music production industry through the use of machine learning","editorVersion":"2.0","postType":"news","publicationType":"news","postLabels":[],"author":{"id":"2798457","alias":"RoyalBeat","fullname":"Gennady Krivenko","avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002F067\u002F1cf\u002Fcb3\u002F0671cfcb3ce7493b857eb5f0798570eb.png","speciality":"Programmer-developer, innovator, musician."},"statistics":{"commentsCount":0,"favoritesCount":2,"readingCount":296,"score":3,"votesCount":3,"votesCountPlus":2,"votesCountMinus":1},"hubs":[{"id":"397","alias":"analysis_design","type":"collective","title":"System Analysis and Design","titleHtml":"System Analysis and Design","isProfiled":true,"relatedData":null},{"id":"559","alias":"cpp","type":"collective","title":"C++","titleHtml":"C++","isProfiled":true,"relatedData":null},{"id":"8000","alias":"algorithms","type":"collective","title":"Algorithms","titleHtml":"Algorithms","isProfiled":true,"relatedData":null},{"id":"21922","alias":"artificial_intelligence","type":"collective","title":"Artificial Intelligence","titleHtml":"Artificial Intelligence","isProfiled":false,"relatedData":null},{"id":"22392","alias":"tensorflow","type":"collective","title":"TensorFlow","titleHtml":"TensorFlow","isProfiled":true,"relatedData":null}],"flows":[{"id":"1","alias":"develop","title":"Development","titleHtml":"Development"},{"id":"7","alias":"popsci","title":"PopSci","titleHtml":"PopSci"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false}},"leadData":{"textHtml":"\u003Cp\u003EA startup project to identify the success of musical works based on artificial intelligence has already been launched and is working.\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E","imageUrl":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002Ff7a\u002F9c6\u002Fb53\u002Ff7a9c6b533d36317a3cbded60b3a44e2.png","buttonTextHtml":"Read more","image":{"url":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002Ff7a\u002F9c6\u002Fb53\u002Ff7a9c6b533d36317a3cbded60b3a44e2.png","fit":"cover","positionY":0,"positionX":0}},"status":"published","plannedPublishTime":null,"checked":null,"format":null,"readingTime":3,"complexity":null,"isInBlacklist":null,"tags":[{"titleHtml":"искусственный интеллект"},{"titleHtml":"машинное обучение"},{"titleHtml":"tensorflow"},{"titleHtml":"стриминговые сервисы"},{"titleHtml":"музыкальный промоушен"},{"titleHtml":"программирование на c++"}]},"810601":{"id":"810601","timePublished":"2024-04-26T05:57:29+00:00","isCorporative":false,"lang":"en","titleHtml":"互联网屏蔽是如何工作的:使用实例概述现代方法","editorVersion":"2.0","postType":"article","publicationType":"article","postLabels":[{"type":"translation","typeOf":"system","title":"Translation","data":{"originalAuthorName":"Alex Gerasimchuk","originalUrl":"https:\u002F\u002Fhabr.com\u002Fru\u002Farticles\u002F810165\u002F"}}],"author":{"id":"1981533","alias":"kentavr009","fullname":"Alex Gerasimchuk","avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002F04d\u002F807\u002F146\u002F04d80714648eb7e2b3e00d8fd8d6eebc.jpg","speciality":"Marketing Specialist"},"statistics":{"commentsCount":10,"favoritesCount":1,"readingCount":1299,"score":7,"votesCount":7,"votesCountPlus":5,"votesCountMinus":2},"hubs":[{"id":"20688","alias":"research","type":"collective","title":"Research and forecasts in IT","titleHtml":"Research and forecasts in IT","isProfiled":true,"relatedData":null}],"flows":[{"id":"3","alias":"management","title":"Management","titleHtml":"Management"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false}},"leadData":{"textHtml":"\u003Cp\u003E一组印度科学家\u003Ca href=\"https:\u002F\u002Fcensorbib.nymity.ch\u002Fpdf\u002FYadav2018a.pdf\" rel=\"noopener noreferrer nofollow\"\u003E\u003Cu\u003E发表\u003C\u002Fu\u003E\u003C\u002Fa\u003E了以其本国为例政府机构采用的现代互联网屏蔽方法概述。他们研究了互联网服务提供商限制访问被禁信息的机制,评估了这些机制的准确性以及绕过这些屏蔽的能力。\u003Ca href=\"https:\u002F\u002F2captcha.com\" rel=\"noopener noreferrer nofollow\"\u003E\u003Cu\u003E2captcha常驻代理\u003C\u002Fu\u003E\u003C\u002Fa\u003E团队整理了这项研究,并提请大家关注这项工作成果的主要论点。\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E","imageUrl":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002Fe90\u002Ff43\u002F4f7\u002Fe90f434f7b1da82841b2d86801404dbf.png","buttonTextHtml":"Read more","image":{"url":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002Fe90\u002Ff43\u002F4f7\u002Fe90f434f7b1da82841b2d86801404dbf.png","fit":"cover","positionY":0,"positionX":0}},"status":"published","plannedPublishTime":null,"checked":null,"format":"analytics","readingTime":2,"complexity":"high","isInBlacklist":null,"tags":[{"titleHtml":"research"},{"titleHtml":"proxy"}]},"810931":{"id":"810931","timePublished":"2024-04-27T09:02:00+00:00","isCorporative":false,"lang":"en","titleHtml":"Experiment: How to disguise the use of Tor to bypass blocking","editorVersion":"2.0","postType":"article","publicationType":"article","postLabels":[{"type":"translation","typeOf":"system","title":"Translation","data":{"originalAuthorName":"Иван Сергеев","originalUrl":"https:\u002F\u002Fhabr.com\u002Fru\u002Fcompanies\u002Finfatica\u002Farticles\u002F454002\u002F"}}],"author":{"id":"1981533","alias":"kentavr009","fullname":"Alex Gerasimchuk","avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002F04d\u002F807\u002F146\u002F04d80714648eb7e2b3e00d8fd8d6eebc.jpg","speciality":"Marketing Specialist"},"statistics":{"commentsCount":0,"favoritesCount":0,"readingCount":720,"score":4,"votesCount":3,"votesCountPlus":3,"votesCountMinus":0},"hubs":[{"id":"17123","alias":"network_technologies","type":"collective","title":"Network technologies","titleHtml":"Network technologies","isProfiled":true,"relatedData":null}],"flows":[{"id":"6","alias":"admin","title":"Administrating","titleHtml":"Administrating"}],"relatedData":{"vote":null,"unreadCommentsCount":0,"bookmarked":false,"canComment":false,"canEdit":false,"canViewVotes":false,"votePlus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false},"voteMinus":{"canVote":false,"isChargeEnough":false,"isKarmaEnough":false,"isVotingOver":false}},"leadData":{"textHtml":"\u003Cp\u003EInternet 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. \u003C\u002Fp\u003E\u003Cp\u003EScientists from Carnegie Mellon University, Stanford University, and SRI International conducted an \u003Ca href=\"https:\u002F\u002Fwww.frankwang.org\u002Ffiles\u002Fpapers\u002Fccs2012.pdf\" rel=\"noopener noreferrer nofollow\"\u003E\u003Cu\u003Eexperiment\u003C\u002Fu\u003E\u003C\u002Fa\u003E 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.\u003C\u002Fp\u003E\u003Cp\u003E\u003C\u002Fp\u003E","imageUrl":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F525\u002F080\u002Fe14\u002F525080e14d4cece3fc2ca5b70eed88a9.png","buttonTextHtml":"Read more","image":{"url":"https:\u002F\u002Fhabrastorage.org\u002Fr\u002Fw1560\u002Fgetpro\u002Fhabr\u002Fupload_files\u002F525\u002F080\u002Fe14\u002F525080e14d4cece3fc2ca5b70eed88a9.png","fit":"cover","positionY":0,"positionX":0}},"status":"published","plannedPublishTime":null,"checked":null,"format":"analytics","readingTime":4,"complexity":"medium","isInBlacklist":null,"tags":[{"titleHtml":"приватность"},{"titleHtml":"proxy"},{"titleHtml":"обход блокировок"}]},"811749":{"id":"811749","timePublished":"2024-05-02T09:07:14+00:00","isCorporative":false,"lang":"en","titleHtml":"VERBAL CALCULATION (VC) IN EVIDENCE-BASED DSS AND NLP","editorVersion":"2.0","postType":"article","publicationType":"article","postLabels":[{"type":"translation","typeOf":"system","title":"Translation","data":{"originalAuthorName":"S.B. Pshenichnikov","originalUrl":"https:\u002F\u002Fhabr.com\u002Fru\u002Farticles\u002F810897\u002F"}}],"author":{"id":"2614455","alias":"SergeyBPshenichnikov","fullname":"Сергей Пшеничников","avatarUrl":"\u002F\u002Fhabrastorage.org\u002Fgetpro\u002Fhabr\u002Favatars\u002F3f0\u002Fba7\u0

GetPage. Интернет наизнанку.