Pull to refresh
4
0

Материаловедение, Dart/Flutter, Python

Send message

Транспьютеры — революция многопроцессорных систем, которой не случилось

Level of difficultyEasy
Reading time9 min
Views12K

В самом начале 80-х годов двадцатого столетия, как и много раз в более поздние годы, возникло мнение, что обычные процессоры достигли предела своей производительности. Тогда, по крайней мере, к этому имелись все предпосылки: имевшиеся на тот момент технологии уже не позволяли разместить больше логических схем на одном кристалле. Традиционные компьютеры с архитектурой CISC приблизились к пределу своих вычислительных возможностей, и было неясно, можно ли его преодолеть. Именно тогда на свет появились транспьютеры — чипы с принципиально новой архитектурой, которую сразу же окрестили научно-техническим прорывом, революционной разработкой и будущим компьютерных технологий. О самих транспьютерах и о том, как сложилась их судьба — наш сегодняшний рассказ.
Читать дальше →
Total votes 45: ↑44 and ↓1+61
Comments41

Flutter. Асинхронность и параллельность

Reading time11 min
Views49K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Futures — Isolates — Event Loop" автора Didier Boelens об асинхронности и многопоточности в DartFlutter в частности).


TLDR: В целом, статья ориентирована на новичков и не изобилует откровениями. Если вы знакомы с механизмами Event Loop, Future и async/await (например, в JavaScript), корутинами в Кotlin, скорее всего, вы не найдёте для себя много нового. Однако, реализация многопоточности в виде механизма Изолятов имеет особенности.
Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments18

Быть или не быть тимлидом: разбираем на пальцах

Level of difficultyEasy
Reading time9 min
Views12K

Привет, Хабр! Меня зовут Дима Соломонов, я тимлид в команде Яндекс 360. 11 лет работаю разработчиком, из них 3 года управляю командами от 3 до 10 человек. Кроме того, 6 лет я преподавал программирование начинающим IT-специалистам и был ментором, поэтому опыт в управлении командой накопился немалый. 

В статье расскажу, каким может быть тимлид и как им стать, а также подниму холиварный топик, нужно ли вообще быть руководителем команды. 

Читать далее
Total votes 17: ↑14 and ↓3+16
Comments21

Создание процессора с нуля для чайников

Reading time18 min
Views41K

В жизни многих программистов наступает момент, когда хочется понять как же работает процессор на самом деле, а не в абстрактных схемах высокоуровневых компонентов. У меня возник такой вопрос некоторое время назад, но все материалы которые я находил по этой теме либо были очень специализированными, требующими хорошего понимания электротехники и опыта работы со схемами дискретной логики, либо общие описания, пропускающие многие этапы, и оставляющие лишь смутное представление о том как же всё-таки тысячи транзисторов должны превратиться в работающий процессор.

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

В данной статьей мы пройдем путь создания процессора от единичного транзистора до работающего 8-битного процессора, и напишем свой ассемблер для него.

Читать далее
Total votes 112: ↑112 and ↓0+138
Comments71

Основы реляционной алгебры

Reading time6 min
Views324K
Реляционная алгебра базируется на теории множеств и является основой логики работы баз данных.
Когда я только изучал устройство баз данных и SQL, предварительное ознакомление с реляционной алгеброй очень помогло дальнейшим знаниям правильно уложиться в голове, и я постараюсь что бы эта статья произвела подобный эффект.

Так что если вы собираетесь начать свое обучение в этой области или вам просто стало интересно, прошу под кат.

Читать дальше →
Total votes 78: ↑71 and ↓7+64
Comments42

Полный гайд по тестированию на Flutter. Часть 2: Простые модульные тесты

Level of difficultyEasy
Reading time5 min
Views1.5K

Hola, Amigos! На связи Павел Гершевич, Mobile Team Lead агентства разработки сайтов и мобильных приложений Amiga. Продолжаем нашу серию статей переводов о тестировании в Flutter. В этой и нескольких следующих частях поговорим о модульном (Unit) тестировании.

Читать далее
Total votes 8: ↑7 and ↓1+8
Comments2

Компонентная архитектура приложений на Flutter: почему выбрать BLoC недостаточно

Level of difficultyMedium
Reading time11 min
Views3.1K

Всем привет! Меня зовут Никита Королев, я тимлид Flutter‑команды в компании IBS. Уже год я работаю на проекте компании Атом — разработчика российского электромобиля. На данный момент наша команда занимается разработкой приложений для направления Такси.

Мы с командой выработали свой подход к построению архитектуры Flutter‑приложений и хотим поделиться им со всеми, кому будет интересна эта тема.

Читать далее
Total votes 4: ↑4 and ↓0+6
Comments4

Windows 11 24H2 IoT Enterprise LTSC – что за зверь, и чем он хорош?

Level of difficultyEasy
Reading time4 min
Views71K

Месяц назад я писал статью об издании Enterprise G, созданную Microsoft для китайского правительства, в котором много лишнего отключено. Статья вызвала большой интерес, много кому нужна ОС с максимальным функционалом — при вашем желании его использовать, но с возможностью отключить всё (или почти всё) ненужное. У версии Enterprise G основной недостаток в том, что политика продукта, прописанная в цифровой лицензии, запрещает установку любых языковых пакетов, отличных от китайского и английского. То бишь, русского интерфейса легким путем не достичь. Возникает вопрос выбора другого издания.

Сразу на ум приходит версия Enterprise LTSC, как полнофункциональная с длительным циклом обслуживания и поддержки, благо для Windows 11 24H2 она утекла еще в апреле. Но, оказывается, есть и более достойный выбор, о котором мы сейчас с вами и поговорим. Речь идёт об издании IoT Enterprise LTSC. Что это такое? Чем оно лучше, чем Enterprise LTSC? А чем хуже? Как её русифицировать и как активировать? Об это сегодняшний разговор.

Чем же так отличается IoT Enterprise LTSC?
Total votes 51: ↑50 and ↓1+58
Comments143

BLE под микроскопом. Андроид. Часть2

Level of difficultyHard
Reading time11 min
Views2.6K

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

Читать далее
Total votes 5: ↑4 and ↓1+5
Comments16

Экстремальное программирование: полное руководство

Level of difficultyEasy
Reading time6 min
Views8.5K

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

Читать далее
Total votes 7: ↑5 and ↓2+5
Comments11

Встроенные коллекции Dart: как реализовать в коде основные структуры данных. Глава из книги

Level of difficultyMedium
Reading time15 min
Views2.2K

Привет, Хабр! Меня зовут Станислав Чернышев, я автор книги «Основы Dart», телеграм-канала MADTeacher и доцент кафедры прикладной информатики в Санкт-Петербургском государственном университете аэрокосмического приборостроения. 

При поддержке компании Friflex буквально на днях вышла печатная версия моей книги. В ней есть раздел о нюансах изоляционной модели памяти в Dart, сквозной проект на пять глав (игра «Крестики-Нолики») и две дополнительные главы: «Алгоритмы, структуры данных на Dart и встроенные коллекции» и «Интероперабельность в Dart (Dart FFI)».

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

Читать далее
Total votes 8: ↑7 and ↓1+8
Comments2

Создаем Flutter-приложение для оплаты через СБП без натива

Level of difficultyEasy
Reading time9 min
Views4.8K

Всем привет! Меня зовут Мурат Насиров, я Flutter-разработчик в Friflex. Мы разрабатываем мобильные приложения для бизнеса и специализируемся на Flutter. 

Ранее я поделился своим опытом, как интегрировать СБП при помощи нативных решений НСПК (Национальной системы платежных карт). В этой статье рассказываю, как можно сделать это при помощи Flutter-приложения и двух пакетов из pub.dev.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments8

Отвлекать программистов от работы — гораздо страшнее, чем кажется на первый взгляд

Level of difficultyEasy
Reading time6 min
Views43K

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

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

Читать далее
Total votes 54: ↑46 and ↓8+44
Comments86

CTF — для начинающих

Level of difficultyEasy
Reading time3 min
Views13K

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

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments2

Крекер. SQL инъекции. Уязвимость LFI

Reading time4 min
Views5.1K

Введение

Рады вновь приветствовать дорогих читателей! Начиная с этой статьи мы запускаем новую рубрику "Крекер", в серии этих статьей мы будем разбирать различные уязвимости, их эксплуатацию. В этой вступительной статье мы разберём уязвимости SQL, LFI, ADB и инструменты их эксплуатации.

Дисклеймер: Все данные, предоставленные в статье, взяты из открытых источников. Не призывают к действию и являются только лишь данными для ознакомления, и изучения механизмов используемых технологий.

Читать далее
Total votes 2: ↑1 and ↓10
Comments1

От ручной работы к автоматизации: наш путь к идеальной доставке сборок Flutter

Level of difficultyEasy
Reading time6 min
Views1.3K

Привет! Мы занимаемся созданием мобильных приложений, а также поддержкой и развитием уже существующих проектов.

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

Читать далее
Total votes 1: ↑1 and ↓0+1
Comments3

Тик-так: Timer vs Ticker для анимаций

Level of difficultyEasy
Reading time4 min
Views871

Всем привет! Это статья для тех, кто увлекается Flutter-разработкой. А я Николай —человек, который рулит этим направлением в Mad Brains. Поговорим о Timer и Ticker?

Итак, представим, что нам нужно построить экран, в котором будет отображаться текущее Unix-время в миллисекундах. Давайте сначала сделаем верстку без анимации.

Читать далее
Total votes 2: ↑2 and ↓0+4
Comments0

Вы пожалеете об использовании естественных ключей

Level of difficultyEasy
Reading time5 min
Views20K

Хотя я живу в Копенгагене и в основном перемещаюсь по городу на велосипеде, у меня есть и машина, чтобы добираться до других частей страны. В Дании автомобили через каждые два года проходят обязательный официальный осмотр; я проходил его за свою жизнь несколько раз. Несколько лет назад механик, выполнявший осмотр, сообщил мне о том, что у машины неправильный номер кузова.

Я немного занервничал, потому что покупал машину с рук, и внезапно задался вопросом, действительно ли всё так, как я думал. Неужели я непреднамеренно купил краденную машину?

Но механик просто подошёл к своему компьютеру, чтобы исправить ошибку. И тогда у меня возникло совершенно другое опасение. Когда программируешь больше десятка лет, то учишься предвидеть разные типичные режимы отказа. Так как номер кузова — очевидный кандидат на должность естественного ключа, я заранее предвидел, что изменение этого номера будет или невозможно, или приведёт ко всевозможным каскадным эффектам, и в конечном итоге к уничтожению официальных записей, больше не признающих, что машина принадлежит мне.

Читать далее
Total votes 45: ↑42 and ↓3+55
Comments126

Мотивация — тайм-менеджмент

Level of difficultyEasy
Reading time5 min
Views31K

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

Читать далее
Total votes 27: ↑22 and ↓5+18
Comments2

Собственные проекты, углубленная практика алгоритмов и другое: поднимаем навыки программирования на новый уровень

Level of difficultyEasy
Reading time7 min
Views5.5K

Неважно, новичок ли вы, отлаживающий вашу первую программу «Hello World», или опытный инженер, — у каждого из нас всегда есть возможность улучшить свои навыки. Александр Шелютин, Data Architect в KarmaHQ, расскажет о разнице между тем, как просто заставить что-то работать, и написанием действительно хорошего кода.

Читать далее
Total votes 7: ↑4 and ↓3+3
Comments0

Information

Rating
5,420-th
Location
Красноярск, Красноярский край, Россия
Date of birth
Registered
Activity