Pull to refresh
11
0
SL Potapenko @spot62

User

Send message

Как сверстать тему для WordPress

Reading time24 min
Views588K

Введение


В предыдущих статьях мы рассмотрели принципы верстки на чистом CSS и с помощью Bootstrap. Сегодняшней статьей мы начинаем рассматривать особенности верстки под популярные CMS. И начнем с WordPress, как самой популярной из них. Будем считать, что WordPress у вас уже установлен и перейдем непосредственно к созданию шаблона, в качестве которого у нас по-прежнему будет выступать Corporate Blue от студии Pcklaboratory. Если вы не знаете как установить WordPress, то инструкцию можно найти здесь. В данном руководстве мы не будем подробно описывать CSS стили и HTML код – это было сделано уже в предыдущих статьях. Вместо этого рассмотрим детально особенности создания темы именно под WordPress.
Читать дальше →
Total votes 66: ↑54 and ↓12+42
Comments28

Используем встроенный микроконтроллер в Intel Edison

Reading time7 min
Views21K
Думаю, что многие из вас уже знакомы с Intel Edison по предыдущим заметкам, и у некоторых после прочтения спецификации, вероятно, возникал вопрос — а что это за второй загадочный процессор MCU, работающий на частоте 100 МГц? Зачем он нужен? Как его использовать?
Между тем роль MCU в некоторых случаях исключительно важна. Те, кто пробовал применять Edison для работы с различными сенсорами, возможно, уже заметили — Intel Edison не обеспечивает real-time отклика на их показания при работе из Linux. И тут на помощь приходит MCU. Пришло время немного рассказать про этот встроенный микроконтроллер, его архитектуру, области применения и рассмотреть практический пример.
Читать дальше →
Total votes 28: ↑25 and ↓3+22
Comments8

Arduino + ESP8266 с нуля на примере Wi-Fi термометра, часть первая

Reading time5 min
Views287K
Часть 1. Подготовка ESP8266

Зачем эта статья? На хабре уже есть ряд статей про использование ESP в разных конфигурациях, но почему-то без подробностей о том, как именно все подключается, прошивается и программируется. Типа «я взял ESP, две пальчиковые батарейки, DHT22, закинул в коробку, потряс часик и термометр готов!». В итоге, получается странно: те, кто уже работают с ESP не видят в сделанном ничего необычного, а те, кто хочет научиться — не понимают с чего начать. Поэтому, я решил написать подробную статью о том, как подключается и прошивается ESP, как его связать с Arduino и внешним миром и какие проблемы мне попадались на этом пути. Ссылки на Aliexpress привожу лишь для представления порядка цен и внешнего вида компонентов.

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


Читать дальше →
Total votes 35: ↑32 and ↓3+29
Comments85

Полная энергетическая автономия или как выжить с солнечными батареями в глубинке (часть 1. теоретическая)

Reading time5 min
Views326K


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

image
Как все начиналось
Total votes 145: ↑143 and ↓2+141
Comments244

Метеостанция не на Arduino, или Работа с таймерами и прерываниями GPIO в OpenWRT

Reading time9 min
Views23K
Привет, Хабр, давно не виделись!

Сначала — несколько важных новостей о проекте микрокомпьютеров Black Swift, а потом перейдём к основной теме: как на микрокомпьютер с OpenWRT сделать полноценным встраиваемым устройством.

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


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

Тем удивительнее, что при достаточном количестве микрокомпьютеров на SoC Atheros AR9331 и более дешёвых Ralink RT5350, позиционируемых именно как встраиваемые решения, с поддержкой в OpenWRT именно этих двух функций всё крайне печально. Здесь, конечно, возникает вопрос, кому эти микрокомпьютеры при таком уровне поддержки нужны — но оставим его висеть в воздухе.



Впрочем, если посмотреть на неё же по TCP/IP, то может сойти и для здорового человека.

Но сначала — новости:

  • Первая партия Black Swift — в России и уже рассылается по рублёвым предзаказам (то есть сделанным не на Kickstarter). Если вы при предзаказе указывали доставку — ждите, если самовывоз — звоните в офис и подъезжайте.
  • Если вы не оформляли предзаказ, но хотите купить Black Swift — звоните в офис и подъезжайте, у нас довольно много плат сверх объёма предзаказов. Оформить доставку можно, но тогда вы по понятным причинам встанете в хвост очереди предзаказов.
  • Сертификация FCC скоро завершится, судя по всему — успешно.
  • Удовлетворение бэкеров с Kickstarter, как и обещалось, ожидается в июне. Разослать отдельно русскоязычным или каким-либо ещё отдельным бэкерам платы мы не можем по техническим особенностям Kickstarter.
  • Потихоньку пополняется документация, из-за нехватки времени —  в первую очередь англоязычная.
  • В частности, образы виртуальных машин с OpenWRT SDK и Eclipse — вот тут (через пару дней обновлю их на свежую версию SDK с нашими патчами). Полезны для всех, кто хочет что-то писать под OpenWRT, но не очень понимает, как.


Ну а теперь — к теме.

Читать дальше →
Total votes 24: ↑23 and ↓1+22
Comments32

jQuery считается вредным

Reading time4 min
Views68K
Хех, мне всегда хотелось написать один из этих «Х считается вредным» постов.

Прежде чем я начну, позвольте сказать следующее: я считаю что jQuery оказал просто невероятное влияние на продвижение Web. Он дал возможность разработчикам делать такие вещи, которые ранее считались немыслимыми. Заставил производителей браузеров реализовать многие фичи нативно (без jQuery у нас наверное никогда бы не появился document.querySelectorAll). jQuery всё еще нужен тем, кто не может положиться на современные плюшки и вынужден поддерживать реликты вроде IE8 или хуже.
Читать дальше →
Total votes 52: ↑36 and ↓16+20
Comments152

Использование Arduino в качестве компонентов Wolfram SystemModeler

Reading time4 min
Views15K
Перевод поста Leonardo Laguna Ruiz и Johan Rhodin "Using Arduinos as SystemModeler Components".
Скачать файл с моделями, рассмотренными в посте, можно здесь здесь.
Выражаю огромную благодарность Кириллу Гузенко за помощь в переводе.

С помощью новой бесплатной библиотеки ModelPlug library для Wolfram SystemModeler можно подключать Arduino для моделирования в SystemModeler. Arduino легко сопрягаются с компонентами входа и выхода, так что смело можно включать их в модели SystemModeler чтобы управлять, скажем, лампочками, датчиками, переключателями, запускать сервоприводы и тому подобное. С помощью библиотеки ModelPlug можно свободно совмещать программные и аппаратные компоненты в моделировании и использовать Arduino как плату для сбора данных.

Set of icons
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments0

Что такое TLS

Reading time9 min
Views483K
Данный текст является вольным переводом вот этой главы замечательной книги «High Performance Browser Networking» авторства Ильи Григорика. Перевод выполнялся в рамках написания курсовой работы, потому очень вольный, но тем не менее будет полезен тем, кто слабо представляет что такое TLS, и с чем его едят.

Общие сведения о TLS

Протокол TLS (transport layer security) основан на протоколе SSL (Secure Sockets Layer), изначально разработанном в Netscape для повышения безопасности электронной коммерции в Интернете. Протокол SSL был реализован на application-уровне, непосредственно над TCP (Transmission Control Protocol), что позволяет более высокоуровневым протоколам (таким как HTTP или протоколу электронной почты) работать без изменений. Если SSL сконфигурирован корректно, то сторонний наблюдатель может узнать лишь параметры соединения (например, тип используемого шифрования), а также частоту пересылки и примерное количество данных, но не может читать и изменять их.
Читать дальше →
Total votes 45: ↑43 and ↓2+41
Comments20

50+ лучших дополнений к Bootstrap

Reading time5 min
Views202K


Благодаря популярности CSS фреймворка Bootstrap, для него разработали массу различных дополнений. Даже сейчас вы можете использовать Bootstrap практически для любой задачи при разработке и оформлении вебсайта.

Для статьи я подобрал наиболее полезные дополнения «на все случаи жизни».
Читать дальше →
Total votes 123: ↑111 and ↓12+99
Comments25

Изучаем С используя GDB

Reading time6 min
Views107K
Перевод статьи Аллана О’Доннелла Learning C with GDB.

Исходя из особенностей таких высокоуровневых языков, как Ruby, Scheme или Haskell, изучение C может быть сложной задачей. В придачу к преодолению таких низкоуровневых особенностей C, как ручное управление памятью и указатели, вы еще должны обходиться без REPL. Как только Вы привыкнете к исследовательскому программированию в REPL, иметь дело с циклом написал-скомпилировал-запустил будет для Вас небольшим разочарованием.

Недавно мне пришло в голову, что я мог бы использовать GDB как псевдо-REPL для C. Я поэкспериментировал, используя GDB как инструмент для изучения языка, а не просто для отладки, и оказалось, что это очень весело.
Читать дальше →
Total votes 70: ↑66 and ↓4+62
Comments30

ПЛК Ace: маленький контроллер для «умного дома»

Reading time7 min
Views50K
Я занимаюсь разработкой программ для программируемых логических контроллеров(ПЛК) в промышленных автоматизированных системах управления технологическими процессами(АСУ ТП).

Для тех, кто сталкивается с этим словом впервые, поясню. ПЛК это специальный мини-компьютер, который работает так:
1. Принимает входные дискретные (Di) или аналоговые (Ai) сигналы;
2. Обрабатывает эти сигналы по заданной программистом программе;
3. Выдает управляющий сигнал через дискретные (DO) или аналоговые (AO) выхода.

Дискретный — когда у сигнала может быть только 2 состояния: 0 или 1, «да» или «нет». Например, кнопка нажата или отжата, лампочка включена или выключена.
Аналоговый — когда значение параметра зависит от уровня электрического сигнала. Например, чем выше уровень сигнала (вольт или миллиампер) от датчика температуры, тем больше измеряемая температура.

Применяются ПЛК в основном в промышленности, станках, системах домашней автоматизации «умный дом» и т.д.
Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments24

Вопросы на собеседовании по javascript

Reading time3 min
Views10K
Предлагаю такую подборку вопросов, которую можно задать кандидату. Ответы выводятся во всплывающем окне.
Испытуемому предлагается предугадать, что появится в окне alert.
Главное здесь — нужно объяснить, почему был получен такой ответ.
Не страшно, если ответ отличается от действительного, потому что в вопросах есть подковырки. Тогда нужно будет объяснить, как получился такой результат.
Скопируйте код в консоль браузера или вставьте его на html страницу. После каждого alert'а спрашивайте у собеседуемого, что будет на следующем, и почему.
Читать дальше →
Total votes 41: ↑12 and ↓29-17
Comments22

Введение в fetch

Reading time5 min
Views303K

Прощай, XMLHttpRequest!


fetch() позволяет вам делать запросы, схожие с XMLHttpRequest (XHR). Основное отличие заключается в том, что Fetch API использует Promises (Обещания), которые позволяют использовать более простое и чистое API, избегать катастрофического количества callback'ов и необходимости помнить API для XMLHttpRequest.
Читать дальше →
Total votes 35: ↑30 and ↓5+25
Comments145

Авто-регистрация тестов на С средствами языка

Reading time14 min
Views8.6K
Тестирование в CСравнительно недавно была статья «Полуавтоматическая регистрация юнит-тестов на чистом С», в которой автор продемонстрировал решение задачи с использованием счётчиков из Boost. Следуя этому же принципу, была предпринята (успешная) попытка повторить данный опыт уже без использования Boost из соображения нелогичности наличия в проекте на C зависимости от Boost, да ещё и в таком небольшом объёме. При этом в тестах присутствовали вспомогательные директивы препроцессора в большом количестве. И всё бы так и осталось, но практически на завершающей стадии был найден альтернативный способ регистрации, который позволяет полностью избавится от дополнительных действий. Это C89-решение для регистрации тестов и чуть более требовательное к системе сборке решение для регистрации наборов тестов.
Каким образом
Total votes 22: ↑21 and ↓1+20
Comments19

Мигрируем на HTTPS

Reading time5 min
Views124K
В переводе этого документа описываются шаги, которые необходимо предпринять для перевода вашего сайта с HTTP на HTTPS. Шаги можно выполнять с любой скоростью – либо всё за день, либо один шаг за месяц. Главное, делать это последовательно.

Каждый шаг улучшает ваш сервер и важен сам по себе. Однако, сделать их все – обязательно для того, чтобы гарантировать безопасность вашим посетителям.
Читать дальше →
Total votes 57: ↑49 and ↓8+41
Comments16

Сделаем код чище: Специальные расширения vsnprintf() в ядре Linux

Reading time3 min
Views19K
Смотря на кучу исходного кода, который засылают программисты в списки рассылки подсистем ядра Linux иногда хочется плакать. С одной стороны бывает ужасный и непотребный код, с другой — люди, возможно, впервые пытаются что-то сделать для ядра, поэтому не знают всех его особенностей.

Книга Linux Device Drivers устарела, а новая версия выйдет нескоро. Поэтому мне хочется заполнить пробелы в знаниях тех программистов, которые пишут код в ядро.
Читать дальше →
Total votes 51: ↑49 and ↓2+47
Comments8

Собираем Wi-Fi робота

Reading time4 min
Views101K


Давно мечтал сделать Wi-Fi робота, которым можно было бы управлять удаленно. И вот наконец настал тот день когда я смог управлять роботом через интернет, видеть и слышать все что происходит вокруг него.
Заинтересовавшихся приглашаю под кат
Читать дальше →
Total votes 31: ↑30 and ↓1+29
Comments32

Документируем код эффективно при помощи Doxygen

Reading time18 min
Views361K


Данная статья входит в получившийся цикл статей о системе документирования Doxygen:

  1. Документируем код эффективно при помощи Doxygen
  2. Оформление документации в Doxygen
  3. Построение диаграмм и графов в Doxygen

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

В этой статье мы сначала познакомимся с самой системой и её возможностями, затем разберёмся с её установкой и базовыми принципами работы, и, наконец, завершим знакомство рассмотрением различных примеров документации, примеров того, как следует документировать те или иные части кода. Словом, познакомимся со всем тем, что позволит вам освоиться и начать работать с этой замечательной системой.
Читать дальше →
Total votes 52: ↑52 and ↓0+52
Comments39

Как я проходила собеседования в Яндекс: мой непростой, но успешный опыт

Reading time7 min
Views245K
Уже чуть больше полугода я работаю в поиске Яндекса релиз-инженером. И чуть ли не с первого рабочего дня хочу написать о том, как отзывалась на вакансию, как проходила собеседования, что мне в этом процессе понравилось, а что — не очень. Но сначала я входила в курс дела, а потом каждый день в моей работе появлялись такие интересные задачи, что я даже не была готов отвлечься от них на этот рассказ.

Вопрос для внимательных: сколько модулей отломится от корабля на старте?


А еще год назад у меня в жизни была вроде бы похожая, но в то же время совсем другая ситуация — времени на хобби не хватало, задач было много, но они не приносили мне никакого удовольствия. В итоге я решилась на перемены. На самом деле, эта позиция в Яндексе не была первой, которую я рассматривала. За то время, которое прошло до моего первого рабочего дня, я освежила в голове очень много тем. И перед финальным собеседованием мне пришлось взяться ещё за несколько. Сейчас я понимаю, какие ошибки совершила в этом процессе, поэтому хочу поделиться своим опытом с вами. Буду рада, если кому-то это будет полезно. Хочу сказать, что это не официальные рецепты от рекрутеров Яндекса, а только мои собственные выводы. В конце поста я поделюсь списком литературы, которая мне помогла в подготовке, и еще добавлю те источники, которые считаю полезными, оглядываясь назад.

Читать дальше →
Total votes 112: ↑87 and ↓25+62
Comments84

Создаём своё первое десктопное приложение при помощи HTML, JS и Node-WebKit

Reading time4 min
Views116K
В наше время при помощи JavaScript и HTML можно сделать практически всё. А благодаря Node-WebKit (недавно переименован в NW.js) можно делать даже десктопные приложения, которые выглядят, как нативные и имеют доступ ко всем частям ОС. Сегодня мы покажем, как создать простое десктопное приложение при помощи Node-WebKit, используя jQuery и несколько модулей для Node.js.

Node-WebKit — комбинация Node.js и встроенного браузера WebKit. Код JavaScript выполняется в особом окружении, из которого есть доступ и к стандартному API браузеров, и к Node.js.
Читать дальше →
Total votes 45: ↑40 and ↓5+35
Comments39

Information

Rating
Does not participate
Location
Рязань, Рязанская обл., Россия
Registered
Activity