Search
Write a publication
Pull to refresh
56
0
Илья @WST

Инженер-программист

Send message

Понимание и работа с данными в WordPress. Часть 1. Введение

Reading time5 min
Views101K

Данная статья является переводом первой статьи Rachel McCollin из цикла о данных в WordPress. В ней по полочкам разложена структура данных, типы контента и их взаимосвязь в WordPress. Будет полезна в первую очередь новичкам, но и профессионалы могут найти для себя что-либо новое.
Освежить знания по WP

«Как я, будучи обычным школьником, спроектировал и собрал свою модель 3D принтера»

Reading time6 min
Views247K
Многие из нас привыкли смотреть за прогрессом и последними достижениями техники и науки как бы немного со стороны – оценивая уже конкретные продукты, а не сам процесс. Однако школьник из Волгограда Михаил Козенко не из их числа. Он как раз и таких, кто собственноручно предпочитает пройти весь путь от идеи до конечного результата. И итогом его поисков стал 3D принтер, который принес юному изобретателю (в мае ему исполнилось 15 лет) уже несколько наград.

С Мишей мы познакомились случайно – новость о его принтере появилась на нескольких сайтах, последовали приглашения на радио, было пару постов в развлекательных группах (эту публикации Мише, кстати, принесли немало разочарований из-за чересчур ироничных комментариев публики). В нашей группе «ВК» о Мише также была новость. И, что удивительно, сам автор без нашего приглашения вступил в диалог с читателями паблика «Простая наука», объяснял, подсказывал и учил. Он, как и мы своей книгой для детей 5-12 лет «Простая наука», двигает науку вперед не просто словами, а конкретными делами. Так у нас с ним и родилась идея сделать подробный пост для «чайников» (под таковым я подразумеваю себя, а не уважаемых хабровчан), как сделать 3D принтер с нуля.

Далее — со слов автора, который с удовольствием поучаствует в обсуждении под этим постом. И если текст получится полезным и интересным, он расскажет о создании «второй версии» принтера.

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

С чего началось использование [x] в дизайне графических интерфейсов

Reading time6 min
Views53K
Немалую роль в дружественном взаимодействии пользователя и сайта играют привычные элементы управления. Например, крестик для закрытия окна. Последние несколько дней в интернете широко обсуждалась одна статья об истоках возникновения этого элемента пользовательского интерфейса и она даже привлекла внимание одного из первых разработчиков Windows 95, но об этом ниже.

В пользовательских интерфейсах мы видим X повсеместно. Этот могущественный символ способен закрывать рабочие и всплывающие окна, панели инструментов и вкладки, а также убрать вообще все, что только может создать вам помехи на экране.

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

Итак, где и когда [х] впервые попал в лексикон интерфейсов?
Читать дальше →

Вероятность намешать уникальную колоду карт. Неожиданный результат

Reading time3 min
Views90K
Все из нас когда-либо играли в карты. И любой держал в руках, мешал карточную колоду. Вот и я, как-то сидя и перемешивая стандартную колоду из 52 карт, задумался, а какова вероятность того, что результат будет уникальным? Что никто и никогда после перемешивания не получал карты в колоде в том порядке, что и я?

Казалось бы, первое, что приходит в голову — вероятность мала. Ведь люди постоянно играют в карты. А если учесть то, что люди непрерывно играют в покер в интернете, так вообще, наверное, все варианты давно перепробованы… Или нет?


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

Как найти показатель степени двойки за O(1) с помощью последовательности де Брёйна

Reading time2 min
Views30K

Аперитив


Всем, наверное, известно, как посчитать количество бит в числе. Например, подойдут следующие два способа:
while (n)
{
    ++count;
    n &= (n-1);
}

while (n)
{
    if (n&1)
        ++count;
    n >>= 1;
}

Упражнение: какое в среднем количество операций будет выполнено в первой и во второй реализации?

Блюдо


Пусть у нас есть n-битное число вида 2^i. Нам необходимо найти i за O(1).
Как это сделать? Пусть n = 2^k. Построим последовательность де Брёйна (de Bruijn) над алфавитом {0,1} для подстрок длины k.

Что такое последовательность де Брёйна?

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

Хакеры воровали криптовалюту подменой BGP-анонсов mining pool'ов

Reading time1 min
Views21K
image

По информации от команды Dell SecureWorks Counter Threat Unit, неизвестные лица анонсировали IP-адреса крупных mining pool'ов криптовалют Bitcoin, Dogecoin, HoboNickels и Worldcoin в течение 4 месяцев: с 3 февраля по 12 мая 2014 года. Провернуть такое было возможно из-за отсутствия как проверки подлинности сервера, так и шифрования в протоколе Stratum, который используется большинством пулов.

Первые ноты подозрительной активности заметил пользователь caution с форума bitcointalk 22 марта. Его майнеры подключились к неизвестному IP-адресу и, по какой-то причине, перестали майнить.

Злоумышленники анонсировали IP-адреса пулов только на короткое время, вероятно, всего в течение нескольких минут или секунд, завершали TCP-соединение, всем переподключившимся майнерам отправляли команду reconnect с указанием адреса своего mining pool, затем убирали анонс. Всего им удалось заполучить около $83000 за все 4 месяца.
Читать дальше →

Алгоритм cтабилизации видео с помощью 3D-моделирования сцены

Reading time1 min
Views16K
Исследователи из Microsoft Research разработали алгоритм для автоматической стабилизации видео «от первого лица», снятого с помощью наголовной или другой видеокамеры во время путешествия по маршруту. Например, при езде на велосипеде или скалолазании.



Примеры стабилизированных видеороликов можно посмотреть здесь, там же оригинальные (необработанные) видеоролики, для сравнения. Опубликован исходный код и пояснения по работе алгоритма. Скоро разработчики выпустят приложение для Windows, чтобы каждый мог попробовать технологию на собственных видеороликах.
Читать дальше →

fork() vs. vfork()

Reading time15 min
Views41K
Послушайте!
Ведь, если звезды зажигают — значит — это кому-нибудь нужно?

В. В. Маяковский, 1914


Я занимаюсь программированием для встроенных систем, и данную статью решил написать для того, чтобы лучше разобраться с проблемой использования системных вызовов fork() и vfork(). Второй из них часто советуют не использовать, но ясно, что появился он не просто так.

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

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

Кому интересно, прошу под кат.
Читать дальше →

Несколько фактов о CAP-«теореме»

Reading time4 min
Views17K
В любом обнаружении NoSQL баз данных кто-нибудь обязательно вспомнит о CAP-«теореме». Я не случайно пишу слово «теорема» в кавычках. CAP-«теорема» вовсе не теорема в математическом понимании этого слова. Это неформальное утверждение, сделанное Эриком Брюером в докладе на конференции Principles of Distributed Computing (PODC) в 2000 году. Эрик утверждал, что невозможно создать распределенное (состоящие из нескольких равноценных экземпляров — звеньев) веб-приложение, которое будет одновременно обладать тремя свойствами: согласованность (consistency), доступность(availability) и устойчивость к разделению(partition tolerance), сокращенно CAP. Неформальность утверждения заключается в том, что Брюер не дал определения этим трем понятиям.

Спустя два года Сет Гилберт и Ненси Линч опубликовали исследование, где дали определения понятиям CAP а также формализовали "отложенную согласованность" (Delayed Consistency), которую потом прозвали "согласованность в конечном счете" (Eventual Consistency) и доказали CAP-«теорему» в терминах указанных определений. Если вы еще не читали исследование, то это обязательно стоит сделать — lpd.epfl.ch/sgilbert/pubs/BrewersConjecture-SigAct.pdf

Эта «теорема» так бы и не была никому нужна, если бы её не взяли на вооружение маркетологи NoSQL.
Читать дальше →

Memory management в ядре Linux. Семинар в Яндексе

Reading time4 min
Views66K
Привет! Меня зовут Роман Гущин. В Яндексе я занимаюсь ядром Linux. Некторое время назад я провел для системных администраторов семинар, посвященный общему описанию подсистемы управления памятью в Linux, а также некоторым проблемам, с которыми мы сталкивались, и методам их решения. Большая часть информации описывает «ванильное» ядро Linux (3.10), но некоторая часть специфична для ядра, использующегося в Яндексе. Вполне возможно, семинар окажется интересен не только системным администраторам, но и всем, кто хочет узнать, как в Linux устроена работа с памятью.



Основные темы, затронутые на семинаре:
  • Задачи и компоненты подсистемы управления памятью;
  • Аппаратные возможности платформы x86_64;
  • Как описывается в ядре физическая и виртуальная память;
  • API подсистемы управления памятью;
  • Высвобождение ранее занятой памяти;
  • Инструменты мониторинга;
  • Memory Cgroups;
  • Compaction — дефрагментация физической памяти.

Под катом вы найдете более подробный план доклада с раскрытием основных понятий и принципов.
Читать дальше →

10 самых неожиданных перебоев в работе ЦОД

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

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

Django-orm в поисках LEFT JOIN

Reading time6 min
Views34K
Давно уже перестало быть секретом, что Django-ORM в целом глупое как палка и не способно решать более менее серьезные задачи, и особо глупа в тех случаях, когда необходимо влиять извне на формирование разумных SQL запросов. Об одном из таких случаев и как я пытался с этим бороться — поведаю под катом.
Читать дальше →

Проверка PIN кода банковских карт

Reading time7 min
Views72K
В связи с появлением статьи «Путешествия банковской транзакции», в рамках которой стали появляться вопросы по механизму проверке PIN, хотелось бы несколько уточнить данный вопрос. В данной статье будет рассмотрен только вопрос проверки т.н. online PIN, т.е. PIN, который вводится на терминале и передается для дальнейшей проверки в систему, которая выполняет авторизацию транзакции.

Прежде чем приступать непосредственно к вопросу прокерки PIN'а карты, остановимся на некоторых теоретических вопросах.
Читать дальше →

Модулятор REM-фазы сна

Reading time4 min
Views29K
В данной статье предлагаю рассмотреть создание достаточно быстро (~30 секунд) устройства вводящего человека в состояние транса или гипнотического состояния.

В последнее время на хабре появилась ряд статей посвященных осознанным сновидениям.
И мне подумалось, что мои исследования в этой области могут быть интересными для других.

Началось все с попыток научным образом описать и объяснить феномен осознанных сновидений или другими словами ОСов. Для чего мне пришлось сделать массу экспериментов над собой и окружающими. Как правило эти эксперименты были безболезненными хотя случались исключения. В конечном мне довелось познакомиться с ребятами которые которые занимались этим исследованием более основательно. В частности у ребят оказался электроэнцефалограф (далее ЭЭГ), при помощи которого была снята ЭЭГ работы мозга человека во время осознанного сновидения.
Читать дальше →

Странное поведение компании STmicroelectronics

Reading time2 min
Views96K
Наша компания успешно использовала некоторое время чипы серии DSM компании STmicroelectronicsDSM2150F5V. Это микросхема в корпусе TQFP80, которая предназначена для совместной работы вместе с сигнальными процессорами DSP Blackfin компании Analog Devices. Мы эту микросхемку именно так и использовали. В составе DSM2150F5V находятся сразу и FLASH-память для программы, откуда может загрузиться DSP, и программируемая логика, которую можно использовать для каких-то дополнительных функций. Как написано в даташите (который найти в Интернете становится все труднее и труднее, об этом далее), DSM2150F5V специально предназначена для упрощения подключения памяти, внешней логики, портов ввода/вывода к DSP-процессорам Analog Devices семейств ADSP-218x, 219x, 2106x, 2116x, 2153x и TS101. Все в одном, удобная микросхема.

image

Все было здорово и хорошо, делали мы на микросхеме DSM2150F5V свои приборы и радовались. Но в один не очень прекрасный день к нам пришел снабженец и сообщил, что микросхему DSM2150F5V купить невозможно, никто её больше не продает.
Читать дальше →

О размере экрана, пикселя и элемента

Reading time9 min
Views196K


Привет, username. Свой первый пост я хочу посвятить актуальной проблеме, связанной с появлением большого количества новых форматов дисплеев и непрекращающейся гонкой за плотностью пикселей. В свете появления таких устройств, как очки дополненной реальности, смартчасов, 4к-мониторов и еще более широкого спектра планшетов и ноутбуков, возникает вопрос: какой размер графического элемента/текста следует считать оптимальным и в чем его измерять. Android-разработчики, несомненно, тут же воскликнут: «Да, конечно, в dp!». Но практика показывает, что дела обстоят несколько сложнее.
Читать дальше →

Апшифтинг для программиста в Таиланде

Reading time16 min
Views115K
Судя по коментам, статья «Дауншифтинг для программиста? Камбоджа, опыт выживания и опыт жизни» вызвала интерес Хабрасообщества и захотелось поделиться своим опытом.

Наверное, многим поступок «бросить все и уехать жить в ЮВА» кажется безрассудным, и даже опасным. Среди нас, айтишников, много основательных людей, педантичных к мелочам и желающих просчитывать каждый шаг, каждую мелочь, знать все риски, планировать каждую деталь своей жизни. Я тоже являюсь таким человеком, даже сказал бы что «грешу» этим намного выше среднего. Еще до отъезда в тай, все это вызывало у меня подсознательный страх: бросить хорошую работу, оставить родных, друзей и уехать без обратного билета. Это выходило за рамки моего состояния комфорта и множилось непониманием близких родственников. Однако, вся затея оказалась совершенно не страшной, как я себе представлял изначально, и вот уже почти год мы с женой комфортно живем в тае. О различных аспектах постоянной жизни здесь, понимание которых могло бы помочь вам избавиться от подобных страхов, я и хочу написать.
Читать дальше →

Новая технология позволила парализованному человеку управлять собственной рукой

Reading time2 min
Views30K


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

Однако, надежда на то, что уже в ближайшее время появится метод полного восстановления функциональности руки/ноги других частей тела парализованного человека, есть. К примеру, на днях была продемонстрирована технология компании Battelle, позволившая частично парализованному Яну Бархарту (Ian Burkhart) начать шевелить своей «потерянной» рукой.

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

Дата судного дня или Microsoft наносит ответный удар

Reading time1 min
Views84K
Решил проверить просрочку сертификатов ssl при изменении системного времени, переведя системные часы на 100 лет вперёд. Результат удивил…
Читать дальше →

Запуск ядерного реактора выглядит круче, чем вы думаете

Reading time1 min
Views177K


Юбилейный, 10 000 запуск реактора Annular Core Research Reactor (ACRR) в лаборатории Центра ядерного оружия ВВС США на базе Киртленд в Нью-Мексико. C 1946 база является ключевым звеном в Манхэттенском проекте. Сам реактор действует с 1979 года и используется главным образом для испытания вооружений в условиях ядерного взрыва.

Любопытно, что этот маленький тестовый реактор на 2МВ в момент пуска пучка генерирует 35,000 мегаватт мощности на 7 миллисекунд. Это в три раза больше чем мощность крупнейшей АЭС США в Фениксе. Однако в соседнем здании находиться SPUR — Sandria Pulse Reactor, от пусков которого синие лучи в глазах появляются даже если просто закрыть глаза находясь на близлежащей парковке:
Читать дальше →

Information

Rating
Does not participate
Location
Красногвардейское, Адыгея, Россия
Date of birth
Registered
Activity