Вычисляем «магические квадраты» с помощью GPU

Привет, habr. Тема «магических квадратов» достаточно интересна, т.к. с одной стороны, они известны еще с древности, с другой стороны, вычисление «магического квадрата» даже сегодня представляет собой весьма непростую вычислительную задачу. Напомним, чтобы построить «магический квадрат» NxN, нужно вписать числа 1..N*N так, чтобы сумма его горизонталей, вертикалей и диагоналей была равна одному и тому же числу. […]

Разработка гексапода своими руками с нуля (часть 1)

Всем привет! Не так давно я начал изучать программирование под микроконтроллеры. По началу написание простых программ для мигания светодиодом и даже двумя уже не доставляло удовольствие и становилось скучно. И вот одним вечером сидя в раздумьях над тем, чем же занять свою голову, решил найти более сложные проекты. На просторах интернета увидел много вещей, которые […]

Обнаружены элементарные дизайн-частицы

Честно говоря, мне уже неловко в очередной раз говорить об Атомарном дизайне. Про концепции дизайн-систем сказано практически все и, казалось бы, добавить уже нечего. Но постойте! Ведь атомы в реальном мире из чего-то состоят: протоны, нейтроны, электроны… Можно ли сопоставить со структурой атома дизайн-функционал, с котором мы работаем? Я уверен, что ответ положительный и вот […]

Змея в почтовом ящике и при чем тут F

О чем это все? Это все про змейку. Все прекрасно помнят, что такое змейка: на прямоугольном поле движется змея. Находит еду — вырастает в длине, находит себя или границу поля — умирает. А пользователь может только слать команды: влево, вправо, вверх, вниз. Я решил добавить сюда немного экшна и заставить змею убегать от пакманов. И […]

А в ваших iOS приложениях IBOutlet уже private?

Вы наверняка использовали Storyboard или XIB для верстки интерфейсов? Верстать из кода это прекрасно, но иногда намного проще понять как устроен какой-то из компонентов интерфейса, увидев его, а не прочитав. В этой записи я хочу обсудить необходимость использования для IBOutlet модификатора private. Разработчиков, для которых инкапсуляция IBOutlet является очевидной, тут вряд ли что-то удивит, зато […]

Простейшая игра на Ardruino с дисплеем 1602 — Часть #1

Вот что у нас должно получиться, ну он еще умеет прыгать, ходить и бить злые кактусы, которые на него нападают, но к этому придем поэтапно 🙂 ЧАСТЬ #1 основы Я заказал себе arduino, «так себе игрушка» подумал я, комплект маленький (для пробы) о чем в последствии пожалел. Хотелось раскрыть потенциал, но из-за отсутствия дополнительных модулей […]

CloudFlare реализовала поддержку Encrypted SNI

24 сентября CloudFlare объявили о поддержке расширения TLS 1.3 Encrypted SNI. Преимущества ESNI Никто не видит на какой домен вы заходите. Все что знает провайдер это только IP адрес на который вы обращаетесь. Domain Fronting не нужен. Как ESNI работает В современном интернете на одном IP адресе может располагаться множество различных доменов. Чтобы предоставить вам […]

Фотоэкскурсия по офису «Аудиомании»: часть вторая

В первой части фотоэкскурсии по московскому офису Аудиомании мы рассказали о большом шоуруме и двух кинозалах. Сегодня покажем служебные помещения, торговый зал и склад. Адрес магазина — Барабанный переулок, дом 4. Он находится в пяти минутах ходьбы от стации м. Электрозаводская. Рядом со входом на территорию бизнес-центра висит вывеска «Аудиомания» со стрелкой, которая указывает на […]

Финансовая независимость, мой путь

Данная статья, это мой опыт в российских реалиях обрести финансовую независимость. Побудила меня к написанию эта статья и жаркие споры к ней. Прежде всего для того чтобы избежать «ошибки выжившего» хочу оговорить пару моментов: Мне нравится такой стиль жизни В моей жизни несомненно есть элемент везения Мой путь ещё не закончен, надо ещё лет 10-15. […]

История одного вью-контроллера, который хотел показываться красиво

Жил был скромный вью-контроллер VCYellow. И не было у него ни картинки, ни текста, ни даже малюсенькой бизнес логики. Жил он обычной вью-контроллерской жизнью. Его товарищ вью-контроллер VCMain иногда презентовал его миру: class VCMain: UIViewController { … @IBAction func onBtnTapMeTapped(_ sender: Any) { let vcYellow = self.storyboard!.instantiateViewController(withIdentifier: "VCYellow") as! VCYellow self.present(vcYellow, animated: true, completion: nil) […]