Search
Write a publication
Pull to refresh
107
59.1
Send message

Уголовный кодекс разработчика

Reading time4 min
Views31K
Статья из раздела «наболело». Сколько уже копий сломано о чистом коде, шаблонах проектирования, принципах правильной разработки и тд. Но пока по-прежнему каждый второй попадающийся на глаза проект, особенно не публичный, покоящийся в глубоком энтерпрайзе, имеет признаки состава преступления по «уголовке».

Я сейчас не говорю про «Административный кодекс», куда я как раз и отношу неправильное применение шаблонов, неиспользование тестов, неоптимизированный код, даже харкодинг каких-нибудь настроек и «магические числа» (хотя уже на грани). В этих случаях разная правоприменительная практика. Например оптимизированный код часто сложнее для понимания, чем неоптимизированный. Неоптимальный алгоритм зачастую легче воспринимается при чтении кода, а ведь разработчик 95% времени читает свой или чужой код и только 5% пишет. Или если вы пишите скрипт для друга забесплатно, побыстрее и заходкодили пару настроек, вы скорее всего правильно поступили. Решив, что интеграция туда логики извлечения настроек (и ее тестирования) из отдельных конфигов потребует намного большего времени, чем хардкод.

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

Путь к мечте

Reading time5 min
Views11K
У каждого человека, вероятно, есть мечта или цель, к которой рано или поздно он начинает идти. Так случилось и с нами, тандемом из двух человек, которые хотели бы узнать мир разработки игр изнутри.
Читать дальше →

Выбор дешевого хостинга

Reading time2 min
Views34K
Так уж сложилось, что некоторое время назад мне пришлось выбирать дешевый хостинг. Обычный — PHP/MySQL, которых тыщи и на котором будут лежать пара десятков мелких сайтов...

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

Я составил для себя список и начал анализировать основные параметры.
Пробовал некоторые сам, некоторые просто отбрасывал глянув на смешные тарифные планы.

Вот к таким выводам я пришел...

Детские гаджеты: чем удивить, развлечь и позабавить детей от 2+ лет

Reading time8 min
Views59K
Всем привет!

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


Читать дальше →

От простого к сложному: подборка плат для разработчиков и любителей электроники

Reading time5 min
Views24K


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

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

Микро-UPS на ионисторах

Reading time8 min
Views33K
Доброго времени суток всему уважаемому сообществу. Имею честь предложить хабровчанам, заинтересованным в радиоэлектронике, несколько рассуждений и конкретную реализацию блока резервного питания на ионисторах (они же суперконденсаторы с двойным электрическим слоем), предназначенного обеспечить корректное завершение работы процессорного модуля на ARM-микроконтроллере, работающего под стандартным Linux Debian.
Читать дальше →

Как затруднить идентификацию, обмануть видеоаналитику и скрыть лицо от камер

Reading time6 min
Views116K

Этот человек, которого мы будем называть Фред, ибо таково кодовое имя, под которым он сообщает собранную информацию, находясь в костюме-болтунье, не может быть опознан по внешнему виду или голосу. Он похож на расплывчатое пятно и ни на что больше, не правда ли, друзья? «Помутнение», Филип К. Дик.

Камеры не удивляют на улицах, в банках и магазинах. Люди ставят их для контроля квартиры, машины, дачи, детской площадки. Видеонаблюдение перестает быть средством пассивной безопасности, добавляются функции распознавания лиц и определения эмоций. Чем больше становится камер, тем чаще появляются хактивисты, предлагающие различные способы «защиты» личности. Фобии в области видеонаблюдения привели к тому, что кое-кто стал заклеивать вебку в ноутбуке.

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

Оптимизация кода: процессор

Level of difficultyHard
Reading time18 min
Views117K
Все программы должны быть правильными, но некоторые программы должны быть быстрыми. Если программа обрабатывает видео-фреймы или сетевые пакеты в реальном времени, производительность является ключевым фактором. Недостаточно использовать эффективные алгоритмы и структуры данных. Нужно писать такой код, который компилятор легко оптимизирует и транслирует в быстрый исполняемый код.

image

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

Погиб Крис Касперски. Памяти настоящего хакера посвящается

Reading time7 min
Views142K

Крис Касперски на RSA Conference 2015. Источник: хакер.ру

Говорят, что незаменимых людей нет. По большей части это действительно так, но есть и исключения. Например, если говорить о Николае Лихачеве, которого весь мир знает, как Криса Касперски, то здесь утверждение о незаменимости дает сбой. В ИТ-сфере этот человек сделал очень многое, о чем можно судить хотя бы по печатному «наследию»: Касперски оставил после себя больше 20 книг и 500 статей. Он был настоящим хакером, в изначальном понимании этого слова. То есть человеком, который прекрасно разбирался в том, как и что работает в ИТ.

Собственно, информационными технологиями он стал заниматься очень рано — с начальных классов, сразу после появления первого компьютера, который носил гордое название «Правец 8Д». По сути, это клон британского компьютера Oric Atmos, причем инструкция была на болгарском языке. Тем не менее, Крис (тогда еще Николай) быстро со всем освоился, написав свою первую игру. В ней пользователь должен был поймать рыбку. Графики здесь не было, ее роль играли символы. В центре экрана находился рыбак в виде знака вопроса, а рыбка отображалась при помощи нолика и знака «больше». Ловить рыбу нужно было, нажимая на пробел.

Золотая пора научно-популярной публицистики

Reading time5 min
Views36K


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

Истоки и будущее межпланетного интернета

Reading time10 min
Views12K


В наше время связь с космическими аппаратами на расстоянии двух миллионов километров от Земли поддерживается напрямую при помощи огромных антенн, известных как Deep Space Network. Центры связи NASA расположены в Канберре, Мадриде и калифорнийской пустыне. Роверы отправляют данные космическому аппарату на орбите космического объекта, а аппарат затем передаёт пакеты данных напрямую на Землю. Удобный способ связи, если в космосе очень мало зондов и роверов. Но сейчас их около сотни, и из-за этого необходимо придумывать расписание сеансов связи.

Призрак интернета в СССР

Reading time6 min
Views42K


На днях в России отмечался День интернета. В 1998 году фирма IT Infoart Stars разослала письма различным организациям с предложением назначить 30 сентября Днем интернета и провести перепись «населения Рунета». Тогда эта цифра насчитывала 1 миллион пользователей. Сегодня же, спустя 18 лет, эта цифра насчитывает более 80 млн пользователей.

В других странах Международный день интернета отмечают 4 апреля, в день смерти средневекового архиепископа Севильи святого Исидора, который является создателем первой энциклопедии — «Etymologiae», состоящей из 20-ти томов. Именно он был назначен католической церковью покровителем Всемирной сети, которая назвала интернет современной энциклопедией человеческих знаний. Святой Исидор Севильский первый применил систему перекрестных ссылок в своей энциклопедии, напоминающую сегодняшние гиперссылки в Сети.

Необходимость в интернете появилась во времена Холодной войны, когда США понадобилась надежная система передачи информации, которая осуществляла бы свою работу на случай уничтожения части компьютеров ядерным ударом. В СССР параллельно тоже велись разработки в области компьютерной связи, начиная с 1952 года. Они проводились в рамках военно-промышленного комплекса и должны были обеспечивать укрепление обороноспособности страны.
Читать дальше →

Величайший «Купол» науки из Истры

Reading time7 min
Views40K

image


Археологи удивляются мастерству древних архитекторов. Не имея современных инструментов, они могли строить поражающие воображение объекты. Здания далекого прошлого настолько не вписываются в наши представления о жизни предыдущих поколений, что дают почву для роста альтернативных теорий про атлантов, пришельцев, хрононавтов. Если через множество лет, когда от человечества останутся лишь осколки пластика, разбросанные на окаменевшем ложе между ископаемыми сланцами Бёрджес и тысячелетним слоем грязи, на Землю прилетят инопланетяне, то они с той же недоверчивостью будут изучать наши железобетонные мегалитные сооружения.


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

Читать дальше →

Куда уходят игры: проблема сохранения старых видеоигр. Часть 1

Reading time18 min
Views19K
image
Дискеты с исходным кодом Prince of Persia, случайно найденные отцом Джордана Мекнера за шкафом

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

Вот только некоторые элементы процесса создания игр, которые утеряны и никогда к нам не вернутся. Из таких элементов состоят игры для домашних и портативных консолей, ПК и аркадных автоматов, в которые вы играли. Единственным напоминанием об игре может остаться её название или финальная опубликованная версия, потому что существует вероятность исчезновения всех других физических копий результатов творчества.
Читать дальше →

LED подсветка монитора своими руками

Reading time10 min
Views449K

Время незаметно идет и казалось бы недавно купленная техника уже выходит из строя. Так, отработав свои 10000 часов, приказали долго жить лампы моего монитора (AOC 2216Sa). Вначале подсветка стала включаться не с первого раза (после включения монитора подсветка выключалась через несколько секунд), что решалось повторным включением/выключением монитора, со временем монитор приходилось выключать/выключать уже 3 раза, потом 5, потом 10 и в какой-то момент он не мог включить подсветку уже вне зависимости от числа попыток включения. Извлеченные на свет божий лампы оказались с почерневшими краями и законно отправились в утиль. Попытка поставить лампы на замену (были куплены новые лампы подходящего размера) успехом не увенчалась (несколько раз монитор смог включить подсветку, но быстро опять ушел в режим включился-выключился) и выяснение причин в чем может быть проблема уже в электронике монитора привели меня к мысли о том что проще будет собрать собственную подсветку монитора на светодиодах чем ремонтировать имеющуюся схему инвертора для CCFL ламп, тем более в сети уже попадались статьи показывающие принципиальную возможность такой замены.
Читать дальше →

Сказ о том как перфекционизм мне контроллер сбрасывал

Reading time6 min
Views16K
image

Задумал я как-то купить йогуртницу. Да такую, чтобы йогурт делала хороший и всегда одного качества. Что для этого нужно? Во-первых, сырье, во-вторых, точная и стабильная температура, в-третьих, настройка времени приготовления. Стал я выбирать и столкнулся со следующей засадой: дешевые йогуртницы оказались нерегулируемые. То есть внутри нагревательный провод, и этот провод, по сути, подключается к сети. Какая температура будет при этом внутри йогуртницы, зависит от рук сборщика, температуры окружающей среды, фаз луны и глубины сна Ктулху (Ктулху фхтагн, кстати).

Само собой меня такая ситуация не устраивала. И еще больше меня напрягала ситуация вокруг йогуртниц, которые, меня по своим функциям и параметрам устраивали. Почему-то производители таких йогуртниц считают, что они поставляют на рынок изделия космической отрасли и цены на такие изделия должны быть соответствующие. Сильные душевные муки в процессе выбора довели меня до того, что я высказал любимой супруге свои возмущения по поводу негуманной ценовой политики производителей йогуртниц и в процессе словесных излияний выдал фразу «Да я сам за пятьсот рублей лучше сделаю», после чего в моей голове что-то щелкнуло…

Это была предыстория. А теперь история.
Читать дальше →

Безопасное использование ножки RESET на Arduino

Reading time7 min
Views58K
Картинка для привлечения внимания

Здравствуйте, уважаемые хабравчане!

В этой статье я опишу способ безопасного использования ножки RESET на плате Ардуино для собственных нужд.

Собственно, на поиски решения данного вопроса меня сподвиг некоторый недостаток ножек в разрабатываемой мной системе (которую я надеюсь описать на Хабре, как закончу реализацию) на основе Arduino Pro Mini.
Итак, задача ясна, а требования таковы:
  • Возможность загружать скетчи обычными для Ардуины способами
  • Возможность использовать в своей программе ножку RESET как digital I/O pin

Читать дальше →

Китайский HID программатор USBISP (USBASP) в Linux. Препрошивка

Reading time5 min
Views73K
Программирование микроконтроллеров и робототехника — очень перспективные направления деятельности. Об этом говорят уже на уровне государства. А начинается все с того, что новички собирают свой первый программатор или заказывают его в интернет-магазине. Самыми доступными по цене являются китайские поделки. Они не всегда готовы сразу порадовать своих новых хозяев. Тем не менее, обычно, они вполне работоспособны после доработки и/или перепрошивки.



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

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

Для тех, кто хочет быстрого решения, в конце статьи есть ссылка на архив с доработанной мною прошивкой USBASP от Thomas Fischl и список изменений в формате git diff.
Читать дальше →

Пайка микроволной

Reading time2 min
Views65K
В прошлом посте про пайку кто то заикнулся про то, что мелкие микросхемы лучше запаивать микроволной. Чтож, есть такое слово в этой букве — вот вам микроволна :)


А вот то же самое, но крупным планом.


Как это работает:
Читать дальше →

Information

Rating
208-th
Works in
Registered
Activity