Как стать автором
Обновить

Все потоки

Сначала показывать
Порог рейтинга

22 новых фичи C# — каким будет C# 11+

.NET *C# *Программирование *

1. Полуавтоматические свойства и ключевое словоfield.
2. Модификатор уровня доступа file.
3. Первичные конструкторы для классов и структур.
4. Паттерн-матчинг для списков.
5. Атрибуты для Main в программах с top level statement.
6. Сырые строки без экранирования внутри строки для удобства работы с json, xml, html и регулярными выражениями.
7. Строковые литералы для UTF-8.
8. Паттерн-матчинг для Span<char>.
9. Перенос строк в выражениях интерполяции.
10. Возможность перегрузки операторов с проверкой на переполнение
11. Оператор побитового сдвига вправо без знака >>>.
12. Доступ к параметрам методов nameof.
13.nameof для членов экземпляров.
14. Ключевое слово required для обязательно инициализируемых свойств и полей.
15. Автоматическая инициализация свойств структур значением по-умолчанию.
16. generic-атрибуты.
17. локальные переменные и параметры только для чтения.
18. Кэширование делегатов при использовании method group для статических методов.
19. Поля с значением хранящимся по ссылке.
20.params Span<T>/params ReadOnlySpan<T>/params IEnumerable<T> в объявлении методов чтобы избежать лишних неявных созданий массива в куче и копирований коллекций.
21. Удаление оператора проверки параметров на null !!.
22. Предупреждения для имен типов полностью в нижнем регистре.

Внутри — разбор каждой фичи и сценарии применения.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 222
Комментарии 0

Новости

Esperanto: не только язык, но и производительный 1000-ядерный RISC-V процессор для систем машинного обучения

Блог компании Selectel IT-инфраструктура *Машинное обучение *Процессоры IT-компании

Постепенно в индустрии производства процессоров развиваются альтернативные архитектуры, на базе которых создают весьма примечательные чипы. Так, стартап Esperanto Technologies представил собственную версию RISC-V процессора, причем не обычного, а высокопроизводительного, предназначенного для работы с ИИ-системами и машинным обучением. Мы уже не раз писали об экспериментах в этой отрасли, давайте посмотрим, что это за новинка.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 322
Комментарии 0

Переход с 1С: УПП на 1C:ERP: Переделываем интеграции с SQL-запросами к СУБД (на примере УПП &gt; QlikView &gt; ERP)

SQL *SQLite *Промышленное программирование *Управление проектами * *
Из песочницы

Для тех, кто не читал предыдущую статью, расскажу о сути проекта. В 2020-2021 году я участвовал в роли руководителя команды разработчиков Внедренческого центра "Раздолье" в проекте Управление продажами в международной компании на базе "1С:ERP" (ссылка на сайт 1c.ru). Проект был выбран победителем международного конкурса «1С:Проекта года» в номинации «Лучший проект с использованием технологии "Дистанционное внедрение"».

Суть проекта заключалась в переводе Заказчика с 1С:УПП на 1С:ERP. На его примере кратко опишу, какой была организационная структура и какие программы мы использовали при взаимодействии в команде и с пользователями.

Практически весь проект выполнялся удалённо. Многие сотрудники Заказчика, участвующие в проекте, в условиях карантинов и локдаунов были переведены на удалённую работу. Многие сотрудники нашей компании тоже работали удалённо, с командировками в этот период были большие проблемы. Сам Заказчик работает в режиме 24х7 и является одним из крупнейших предприятий в России по производству кофе. На начало проекта в качестве основы корпоративной системы у Заказчика была программа 1С:УПП редакции 1.2 (даже не 1.3). По завершению проекта в 2021-м перешли на ERP 2.5. К слову, когда начинали работу, в 2020-м году, когда 2.5. была ещё в бета-версии, но мы решили прислушаться к рекомендациям "Фирмы 1С" запускать новые проекты на ней, а не на 1С:ERP 2.4.

Читать далее
Рейтинг 0
Просмотры 275
Комментарии 0

Пол Грэм: «После эпохи дипломов»

Развитие стартапа Образование за рубежом
Перевод

Пол Грэм — американский предприниматель, известный русскому человеку, в первую очередь, благодаря своими эссе о бизнесе и жизни. В своем эссе «После эпохи дипломов» (After Credentials) Пол Грэм рассуждает о дипломах: откуда появились, для чего нужны, почему до сих пор не изжили себя, а также почему они не панацея.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 631
Комментарии 1

В апреле выйдет GNU Compiler Collection 12

Блог компании SkillFactory Программирование *C++ *Компиляторы *IT-стандарты *
Перевод

Смягчение уязвимости Trojan Source, оптимизация функций приведения типов, многомерный оператор [], подавление предупреждений о вендорных атрибутах — вот лишь некоторые возможности GCC 12. Подробностями делимся к старту курса по разработке на C++.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 640
Комментарии 0

Сам себе Роскомнадзор

Сетевые технологии *

Список заблокированных РКН ресурсов для использования с VPN стремительно теряет актуальность, поскольку, во-первых, многие ресурсы блокируются или замедляются на ТСПУ и записи для этих ресурсов в выгрузку не вносятся, во-вторых, после известных событий конца февраля многие ресурсы начали изображать РКН из себя и блокировать доступ с российских IP, в-третьих, избыточная отправка трафика в VPN приводит к недоступности уже российских ресурсов, которые отгородились от иностранных IP.

Поэтому на уже известном сервисе antifilter.download создан отдельный дополнительный сервис community.antifilter.download, предназначенный для ведения списка при помощи сообщества.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 2.8K
Комментарии 11

Использование и переработка ПО: когда можно, а когда нельзя

Терминология IT Управление проектами *Управление продуктом *Управление продажами *Управление персоналом *

Предположим, вы создали код и передали исключительное право на него другому лицу (работодателю или по договору отчуждения). Возникает вопрос - как не нарушить права нового правообладателя? В каких пределах можно использовать код, а в каких - нельзя? 

В этой статье пойдет речь о допустимом и недопустимом использовании чужого ПО, переработке и адаптации. Разберемся с правовым регулированием и с тем, что это значит на практике.

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Просмотры 802
Комментарии 10

Библиотека для создания веб-приложений OMGlib, как это работает?

Lisp *

В предыдущем посте я, немного сумбурно, рассказал про библиотечку OMGlib, которая позволяет создавать полностью динамические веб-приложения. Вкратце, идея состоит в следующем: приложение использует браузер для взаимодействия с пользователем, для этого браузер открывает WebSocket-соединение с сервером, после чего просто выполняет получаемый от него javascript-код, отправляя результаты обратно через это же соединение. Все DOM-элементы при этом создаются динамически, через соответствующие функции javascript, без использования HTML вообще. Также, сервер может создавать функции в браузере и вызывать их, сгружая, таким образом, всю логику и механику, связанную с интерфейсом, прямо в браузер. Библиотечка реализована на языке Common Lisp, развитая система макросов которого позволяет писать код единообразно, просто помечая часть функций как browser-side, а компиляция их в JS происходит при помощи JSCL прозрачно для программиста.

Казалось бы, что тут может пойти не так?
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 977
Комментарии 8

Тернистый путь вендора. Часть 2

Блог компании Юнидата Управление разработкой *IT-компании

В прошлый раз я подробно рассказывал об особенностях компании-вендора. Теперь настало время поговорить о мифах и правде в работе компании-вендора. Если тема вам интересна, то давайте начнём.

Миф 1. Особые продуктовые специалисты

Один из наиболее стойких и распространенных мифов. Будто бы существует особый вид специалиста - продуктовый разработчик или продуктовый тестировщик. Очень редкий и ценный зверь. Мне кажется, что таких специальностей не бывает, но, что действительно существует, так это определенные особенности, присущие разработке продукта и как, следствие, продуктовая разработка может показаться скучной или тесной для некоторых людей.

Попробуем разобраться с качествами технического специалиста, которыми мы чаще всего оперируем для оценки в жизни:

Хороший vs Плохой

Соблазн применить эту категорию очень велик. «Хорошесть» или «плохость» не зависит от места работы, опыта работы, роста или цвета глаз. Это интегральная экспертная оценка ;-). Хорошего программиста видно по его коду, который компактен, понятен, легко поддерживается. Хорошего QA видно по въедливости, упорядоченности и понятности его кейсов. Видно его по вопросам, которые он задет до/при реализации/тестировании.

Это видно по скорости и уровню погружения в решаемую задачу и, в конце концов, по тому, к кому ходят задавать вопросы. И я не знаю, как это измерить в попугаях. Так вот, плотность хороших спецов в продуктах, аутсорсе, финтехе, abap, 1с, фронте и бэке одинаковая. И это качество точно не является специфичным для какой-то одной отрасли или направления.

Читать далее
Всего голосов 5: ↑3 и ↓2 +1
Просмотры 556
Комментарии 0

Доклады PHDays 11: заражение буткитами, санитайзеры для ядра Linux, новое лицо OSINT и фишинг на официальном сайте

Блог компании Positive Technologies Информационная безопасность *

Считаные недели остаются до Positive Hack Days 11. Международный форум по практической безопасности пройдет 18–19 мая в Москве. Команды атакующих и защитников для The Standoff уже сформированы, а мы завершаем подготовку инфраструктуры киберполигона и программы конференции.

Читать далее
Рейтинг 0
Просмотры 745
Комментарии 0

Как создать цифровой двойник электроэнергетического объекта. Часть 1. Sampled Values

Блог компании ЦИТМ Экспонента Сетевые технологии *Прототипирование *Matlab *Энергия и элементы питания

Так вышло, что испытания релейной защиты обязательно проводят на специальных комплексах в режиме реального времени. Внутри этих комплексов находятся цифровые двойники электроэнергетических объектов. Чтобы разобраться как и зачем их туда загружают, мы прольем свет на всеми любимый и ненавистный стандарт МЭК 61850 и поделимся своим опытом моделирования энергосистем на КПМ РИТМ.

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Просмотры 840
Комментарии 4

Нереальный baselining или доработки PVS-Studio для Unreal Engine проектов

Блог компании PVS-Studio Unreal Engine *

Статический анализатор PVS-Studio постоянно развивается: улучшаются различные механизмы, происходит интеграция с игровыми движками, IDE, CI/CD и другими системами и сервисами. Благодаря этому несколько лет назад появилась возможность использования PVS-Studio для анализа Unreal Engine проектов. Однако один из важных механизмов PVS-Studio – подавление сообщений анализатора (baselining, отключение выдачи предупреждений на существующий код) — не работал с UE-проектами. Почему он не был реализован сразу, и как в итоге была решена эта задача – читайте далее.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 534
Комментарии 0

Что болит у техлидов и DevOps-инженеров?

Блог компании Конференции Олега Бунина (Онтико) Управление разработкой *Конференции DevOps *

В этом году DevOps & TechLead Conf 2022 пройдут на одной площадке. Участников ждут погружение в инженерные процессы в IT (от XP до devOps & beyond), musthave-инструменты и практики изменений в командах для быстрых и качественных релизов.

Мы встретились с экспертами из Программного комитета конференций — Дмитрием Зайцевым и Анастасией Асеевой-Нгуен. Поговорили о болях DevOps-инженеров и техлидов, о новых форматах и о самых актуальных темах в индустрии. О том, что получилось — читайте под катом.

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Просмотры 1.2K
Комментарии 1

Made at Intel. Architecture and religion

История IT Процессоры

Я подустал от мрачных текстов и вспомнил о своей давней мечте. За 20 с хвостиком лет работы в Интел у меня развеселых историй накопилось на целую книгу. Хотелось в ретроспективе посмотреть на некоторые события, участником которых мне довелось быть. И еще хотелось отдать дань уважения компании и людям, с которыми мне посчастливилось работать. Я уже даже название придумал – Made at Intel. Понятно, что пока я был внутри конторы, речь о публикации этих баек идти не могла. Я сам подшучивал, что для публикации нужно правильно выбрать время. В смысле сначала уволиться, а потом публиковать, а не быть уволенным вследствие публикации. :) Однако примерно 2 года назад я Интел покинул, и казалось бы меня уже ничего не сдерживало. Но тут, как всегда – то перо поломается, то струна порвется, то еще какая бяда приключится. К тому же на то чтобы писать книжку – это же рeшимости набраться надо... И вот – вчера я решил, что большое надо начинать с малого. Буду писать по главке и выкладывать сюда - собирать фидбек. Так мало –помалу и наберется.

Итак, сегодня вашему вниманию представляется первая глава, в которой эволюция архитектур Intel рассматривается с точки зрения ... истории религиозных течений. Да –да, не удивляйтесь, архитектура вычислительных устройств –это одна из самых религиозных вещей. Не думайте, что все решения по Instruction Set Architecture принимаются исключительно на основе анализа данных – это совсем не так. Скорее похоже на средневековое государство – тут есть немного бизнеса, побольше политики и очень много религии. Все просто – почти любой эксперимент в этой области растягивается на годы и обходится в миллиарды долларов. Хуже всего, что в процессе дизайна можно давать лишь приблизительные оценки ключевых характеристик – частоты, производительности, энергопотребления, температурной карты. То, как все оно будет на самом деле становится понятным уже только тогда, когда чип выходит из печки. Да сейчас в этой области уже накоплен определенный опыт и наши оценки становятся несколько точнее, но и только. А 20 лет назад этих знаний было куда меньше. И пионеры, подобные Интел двигались в темноте на собственный страх и риск. Разумеется, в таких условиях на первый план выходит кто во что ВЕРИТ. Ну да – еще кто лучше говорить умеет. Поэтому лучшие архитекторы приходят из школ с углубленным изучением богословия. :)

Читать далее
Всего голосов 49: ↑48 и ↓1 +47
Просмотры 4.5K
Комментарии 16

Псс, парень… индекс нужен?

Блог компании Тензор Высокая производительность *PostgreSQL *SQL *Администрирование баз данных *

Самый больной вопрос для любого разработчика, которому приходится вычитывать данные из базы: "Как сделать мой запрос быстрее?". Классический ответ - необходимо создать подходящий индекс. Но куда именно его стоит "накатывать", да и как вообще он должен выглядеть?..

Мы научили наш сервис визуализации планов PostgreSQL отвечать на эти вопросы, и под катом расскажем, чем именно он руководствуется в своих рекомендациях.

Читать далее
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 2.5K
Комментарии 4

Поворотный энкодер: насколько сложен он может быть

DIY или Сделай сам Электроника для начинающих
Перевод

Как вы могли заметить, я давно работаю с процессором STM32 ARM при помощи Mbed. Были времена, когда Mbed был весьма прост, но многое изменилось с тех пор, как он превратился в Mbed OS. К сожалению, это означает, что многие примеры и библиотеки, которые вы могли бы найти, с относительно новой системой работать не будут.

Мне нужен был поворотный энкодер — и я вытянул дешевый экземпляр из одного набора «49 плат для Arduino», какие продаются повсюду. Уверен, это не самый филигранный поворотный шифратор из имеющихся в природе, но для поставленной задачи его должно было хватить. К сожалению, в Mbed OS нет драйвера для такого датчика, а первые несколько сторонних библиотек, которые я нашел, либо работали по принципу опроса, либо не компилировались под последнюю версию Mbed. Разумеется, для чтения поворотного энкодера никакой магии не требуется. Но насколько сложно самостоятельно написать для него код? В самом деле, довольно сложно. Подумал, поделюсь моим кодом и расскажу, как к этому коду пришел.

Читать далее
Всего голосов 16: ↑8 и ↓8 0
Просмотры 3.1K
Комментарии 12

Окопы в Рыжем лесу Чернобыля. Оценки доз по результатам исследований

Блог компании Timeweb Cloud Научно-популярное Физика Здоровье Экология

Второго апреля я уже публиковал обзор вопроса об облучении военных в так называемых окопах в Рыжем лесу. Суть истории про окопы состояла в том, что а) российские военные могли копать окопы в Рыжем лесу, б) в Гомельском центре радиационной медицины видели военные медицинские пазики в) медийно громкий вывод делался о том, что военные массово облучились и получили лучевую болезнь из-за тех самых окопов.

Напомню, что на тот момент (2.04) еще не были обнаружены сами окопы, поэтому приходилось делать консервативные оценки возможных доз, которые могли получить сферические солдаты в гипотетических окопах. Эти предварительные оценки показывали, что возможные дозы недостаточны для лучевой болезни.

За 3 недели после публикации произошло много событий. Российские войска ушли с территории ЧАЭС и Чернобыльской Зоны, на их место пришли ВСУ, функционирование ЧАЭС постепенно возвращается в обычный режим. За последнюю неделю Чернобыльскую Зону посетили многие чиновники Украины и журналисты. В результате обследования территории были обнаружены так называемые окопы и даже проведены некоторые измерения их загрязнения и мощности дозы излучения.

Я отслеживал новости по теме, изучал научную литературу и делал некоторые апдейты к прошлой статье. Но пора собрать всю эту информацию воедино и поделиться с вами уточнениями по теме окопов – с оценками внутреннего облучения, роли «горячих частиц», влияния пожаров и т.д.

Спойлер – новая информация по-прежнему скорее опровергает заявления о лучевой, чем подтверждает ее. Но давайте по порядку.

Читать далее
Всего голосов 100: ↑90 и ↓10 +80
Просмотры 15K
Комментарии 47

Тест-ревью: как прошли два года написания unit-тестов

Блог компании Dodo Engineering Разработка под iOS *Разработка мобильных приложений *Тестирование мобильных приложений *

Часто слышу мнение, что unit-тесты не нужны для мобильной разработки: в приложении должно быть минимум логики, основная работа с UI, а его сложно тестировать, да ещё и тесты отнимают время, которое можно было бы потратить на написание фич. 

За этим мнением скрывается простая правда — люди, которые так говорят, не умеют писать тесты. Не умеют писать их быстро; писать там, где нужно; писать так, чтобы была ощутимая польза для бизнеса. Я тоже был таким — понимал, что тесты нужны, но не понимал какие, где и как их писать. 

Рассказываю, что поменялось спустя 2 года и 4 тысячи тестов. 

Читать далее
Всего голосов 11: ↑10 и ↓1 +9
Просмотры 1.1K
Комментарии 4

Выбор API Management платформы: какие критерии важны?

API *
Recovery mode

В один ненастный момент мы осознали, что без комплексного, и главное, продуманного управления несколькими десятками API, что есть в нашем ПО, всё больше времени тратим на борьбу с хаосом. Привычный Postman спасал лишь от малой толики проблем, и мы начали выбирать себе API Management платформу.

К вопросу решили подойти масштабно, с изучением рынка, сравнением систем, выпытыванием подробностей у вендоров и реальных пользователей. Убили на это 3 месяца, систему выбрали, но хочется, чтобы труд не пропал зря, а потому делимся наработками.

В первую очередь расскажем о тех критериях, которые важны при выборе API Management платформ. Полученную матрицу вы можете подстроить под себя, заменив коэффициенты важности того или иного параметра.

Функции и состав платформы

Для начала сверим часы, чтобы говорить об одном и том же. Под API Management платформами мы понимаем программные решения, которые позволяют выполнять всевозможные операции с API на протяжении всего их жизненного пути.

Основные задачи. которые решает платформа API Management, это:

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Просмотры 476
Комментарии 3

Как настроить VS Code для Java разработки

Java *
Перевод
Tutorial

Недавно я перешел с IntelliJ IDEA Ultimate на Visual Studio Code (VS Code) и не жалею! VS Code легко настраивается и работает быстро. Он сохраняет ваши настройки в облаке, поэтому вам не нужно беспокоиться о конфигурациях при переходе на другой компьютер.

Как и ожидалось, он поддерживает Java, Git, SQL, Spring Boot и многие другие языки, фреймворки и инструменты.

В этой статье я покажу вам расширения и конфигурации, которые я использую с моей новой любимой IDE.

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Просмотры 2.3K
Комментарии 13