Pull to refresh
3
0.1
Александр @DarkWolf13

Инженер

Send message

Кросс-компиляция OpenCV 4 для Raspberry Pi и BeagleBone Black

Reading time11 min
Views12K
Всем привет.

Когда я захотел установить OpenCV на свою малинку для одного проекта, я был сильно разочарован результатом. Оказалось, что для новых версий образов Raspbian с поддержкой Python3.7 невозможно установить из репозитория библиотеку столь привычной командой pip install.
Читать дальше →
Total votes 22: ↑22 and ↓0+22
Comments6

Переезд проекта с SVN на Git

Reading time8 min
Views72K
image
Много лет подряд в качестве системы контроля версий для большого количества проектов использовали только SVN. Но наступил момент, когда количество разработчиков на одном из проектов заметно увеличилось, проект уже запущен в работу, и нужно как активно разрабатывать параллельно несколько фич, так и фиксить уже имеющиеся баги в оперативном режиме. Единый trunk в SVN не позволяет этого делать, а организация бранчей в нем же превращает жизнь разработчиков в ад. Поэтому было принято решение о переезде этого проекта с SVN на Git.
Читать дальше о том, как это делается от А до Я
Total votes 119: ↑113 and ↓6+107
Comments51

Denwer и SVN. Дружим!

Reading time3 min
Views3.4K

Intro.

Возникла такая ситуация, при которой мне и еще одному программисту пришлось вести работу над одним и тем же проектом. Я уже давно пользуюсь Джентельменским набором, и мне нравится его портабельность и маленький размер.
Читать дальше →
Total votes 18: ↑12 and ↓6+6
Comments62

Установка и настройка SVN (сервер+клиент)

Reading time6 min
Views312K
По просьбам трудящихся, а так же учитывая, что есть статья по установке SVN (правда +Trac) под Linux, решил написать краткое описание установки и настройки SVN для Windows.
Ничего нового для людей, хорошо знающих и работающих с SVN, здесь не будет. Цель статьи — помочь некоторому проценту новичков, пребывающих на Хабре, таки осилить изучение этой системы контроля версий.
Читать дальше →
Total votes 75: ↑66 and ↓9+57
Comments37

Ставим SVN на FreeBSD. Для чайников

Reading time3 min
Views2.3K
все что тут будет написано для чайников, вроде меня, которые плохо еще разбираются в администрировании сервера, но хотят поставить себе SVN( вопрос зачем за гранью статьи). Все что тут написано есть на самом деле в хелпе svnbook.red-bean.com/nightly/ru/index.html
Читать дальше →
Total votes 9: ↑5 and ↓4+1
Comments5

Настройка Apache2.2+Nginx+eAccelerator+SVN+Trac на медленном VDS — часть вторая

Reading time3 min
Views1.6K
Первая часть

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


С Subversion и Trac пришлось помучаться — здесь напишу финальный, заработавший вариант.

UPD: Рекомендуется сначала попробовать поставить из репозитория, указав соответствующий источник

apt-get install subversion


Subversion — руководствовался в основном этим.

Читать дальше →
Total votes 17: ↑14 and ↓3+11
Comments9

ЭЦП – еще один вид мошенничества

Reading time6 min
Views55K
Этот текст — продолжение обсуждения проблем, связанных с безопасностью использования ЭЦП.

UPD1. (от 18 сентября): для тех кто добавил статью в закладки, кратко о предпринятых действиях и результатах за прошедшие два месяца: были написаны заявления в налоговую, прокуратуру, ОВД и Министерство связи. ОВД по результатам проверки направила данные в ОБЭП и прокуратуру. Прокуратура, по результатам проверки — в налоговую. Налоговая рекомендовала обратиться в минсвязи. Минсвязи ответило: на вас зарегистрировано два сертификата, за защитой ваших прав, свобод и законных интересов вы можете обратиться в ОВД и прокуратуру. Круг замкнулся. Пока нет ответа от ОБЭП, но, поскольку экономического преступления не совершено…

UPD2. (от 10 октября): по первому случаю тоже есть «прогресс» — после более чем года разбирательств, человеку разблокировали счета.

Суть проблемы в следующем: каждый УЦ может использовать свои правила удостоверения личности, в т.ч. по копиям документов через интернет. В результате для любого гражданина А появляется возможность получить и использовать ЭЦП гражданина Б без ведома Б. В предыдущих статьях приводились примеры мошеннического использования ЭЦП, полученной подобным образом и давались советы как защититься от этих конкретных видов мошенничества. Ответа на вопрос, как недопустить получение третьим лицом ЭЦП на ваше имя при существующем положении дел нет.
Читать дальше →
Total votes 86: ↑85 and ↓1+84
Comments163

Arduino на автомойке

Reading time3 min
Views31K
Наверное многие уже видели автомойки самообслуживания. Можно ли создать такой аппарат на Arduino?


… следующая волна экономических бедствий… будет результатом быстрой поступи автоматизации, которая упраздняет многие хорошие рабочие места уровня среднего класса (Б. Обама)
Читать дальше →
Total votes 29: ↑27 and ↓2+25
Comments16

Arduino на автомойке ч.2

Reading time2 min
Views20K
Продолжаем рассмотрение применения Arduino для автомойки самообслуживания. Рассмотрим работу по сети и общение с купюроприёмником Cashcode. Начало см. тут.
Читать дальше →
Total votes 20: ↑17 and ↓3+14
Comments11

3 практических примера использования деструктурирования в JavaScript

Reading time2 min
Views8.5K

Пишем код чище, используя паттерны деструктурирования



Вы, наверное, уже знакомы с деструктурированием в JavaScript. Оно пришло к нам в 2015 году в спецификации ES6, но если вам нужно освежить знания, то на сайте Mozilla можно почитать большую подробную статью, как это всё работает.


Но знать как работает совсем не то же, что знать как использовать. Вот три паттерна, которые помогут вам сделать код чище, надёжнее и читаемее!


1. Именованные аргументы функции


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


def sum(a=1,b=2,c=3):
  return a+b+c

sum(b=5,a=10)

Видите? Порядок не важен, если вы явно указали имя параметра. Преимуществами по сравнению с позиционными аргументами является то, что:


  1. Можно опустить один или несколько параметров при вызове функции
  2. Порядок при передаче аргументов теперь не важен
  3. Код стал читаемее 

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


function sum({a = 1, b = 2, c = 3}) {
  return a + b + c
}

sum({b: 10, a: 5}) // 5 + 10 + 3 = 18

Все цели достигнуты: можно не указывать c, порядок теперь не важен, и аргументы сопровождаются своими именами. Всё это возможно именно благодаря деструктурированию.

Читать дальше →
Total votes 20: ↑16 and ↓4+12
Comments4

Разбор. Как работает SOCKS-прокси: плюсы, минусы, отличия от других технологий

Reading time3 min
Views107K


Изображение: Pexels

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

Сегодня мы расскажем о технологии SOCKS-прокси, принципах ее работы, преимуществах и отличиях от других инструментов обеспечения анонимности в интернете.
Читать дальше →
Total votes 31: ↑17 and ↓14+3
Comments9

Определение баллистико-временных характеристик движения центра масс парашютиста, десантированного с самолёта

Reading time6 min
Views8.7K

Введение


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

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

Регулярных и достаточно обоснованных методов построения нелинейных математических моделей в настоящее время не существует, однако для решения частных задач, при правильном составлении исходных систем нелинейных дифференциальных уравнений, численные методы их решения могут давать вполне адекватные результаты.
Читать дальше →
Total votes 25: ↑19 and ↓6+13
Comments9

Микрошаговая отчётность в работе программиста

Reading time4 min
Views11K

Если ты дурак — записывай, как делаю это я


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

Для меня же это выполнить это требование было довольно легко. Просто у меня всё записано. Каждый рабочий день.
Читать дальше →
Total votes 31: ↑23 and ↓8+15
Comments20

Вулканический поросенок, или SQL своими руками

Reading time15 min
Views15K


Сбор, хранение, преобразование и презентация данных — основные задачи, стоящие перед инженерами данных (англ. data engineer). Отдел Business Intelligence Badoo в сутки принимает и обрабатывает больше 20 млрд событий, отправляемых с пользовательских устройств, или 2 Тб входящих данных.


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


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

Читать дальше →
Total votes 47: ↑45 and ↓2+43
Comments10

Рекурсия. Занимательные задачки

Reading time14 min
Views398K
Здравствуй Хабрахабр!

В этой статье речь пойдет о задачах на рекурсию и о том как их решать.
image

Кратко о рекурсии


Рекурсия достаточно распространённое явление, которое встречается не только в областях науки, но и в повседневной жизни. Например, эффект Дросте, треугольник Серпинского и т. д. Один из вариантов увидеть рекурсию – это навести Web-камеру на экран монитора компьютера, естественно, предварительно её включив. Таким образом, камера будет записывать изображение экрана компьютера, и выводить его же на этот экран, получится что-то вроде замкнутого цикла. В итоге мы будем наблюдать нечто похожее на тоннель.

В программировании рекурсия тесно связана с функциями, точнее именно благодаря функциям в программировании существует такое понятие как рекурсия или рекурсивная функция. Простыми словами, рекурсия – определение части функции (метода) через саму себя, то есть это функция, которая вызывает саму себя, непосредственно (в своём теле) или косвенно (через другую функцию).

О рекурсии сказано много. Вот несколько хороших ресурсов:
Читать дальше →
Total votes 19: ↑14 and ↓5+9
Comments28

PL/SQL решение для работы с Веб-Службами

Reading time11 min
Views27K
Столкнулся с требованием отправлять и получать SOAP сообщения из базы данных Oracle.
Также это решение должно быть универсальным и легко интегрируемым с другими модулями.
В интернете ни чего подобного не нашел. Есть статьи рассказывающие о том как посылать SOAP сообщения исползуя UTL_HTTP пакет, но ни чего более.

Решил написать универсальный продукт на PL/SQL для отправки SOAP сообщений из базы данных Oracle который легко настраивается и интегрируется.
Читать далее
Total votes 13: ↑9 and ↓4+5
Comments26

SQL. Занимательные задачки

Reading time13 min
Views323K
Здравствуй, Хабр!

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

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



SQL (ˈɛsˈkjuˈɛl; англ. structured query language — «язык структурированных запросов») — декларативный язык программирования, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой соответствующей системой управления базами данных. Подробнее…

Почитать об SQL можно из разных источников.
Данная статья не преследует цели обучить вас SQL с нуля.
Читать дальше →
Total votes 24: ↑21 and ↓3+18
Comments63

Видеокурс «Введение в реверсинг с нуля, с использованием IDA PRO. Глава 1»

Reading time1 min
Views12K
Привет, Хабравчане!

Хочу сообщить Вам приятную новость. Уже доступна первая видео-глава из цикла статей — «Введение в реверсинг с нуля, с использованием IDA PRO». Сам видеоролик доступен здесь. Очень красивый PDF файл здесь.

Также здесь можно увидеть какие комплектующие я приобрел в своё время:


А здесь можно посмотреть на компьютер в сборке:


Также, в видеоролике я рассказываю про 99 год, Журнал Хакер, в общем про то, что было и уже не будет. И я очень рад, что я попал в это время, время 90-х и пережил всё это.
Total votes 23: ↑21 and ↓2+19
Comments34

Как проходил набор в Школу системного анализа Альфа-Банка

Reading time5 min
Views9.1K
Крупные IT-компании довольно давно проводят школы для студентов и выпускников инженерных и математических специальностей. Кто не слышал о Школе анализа данных Яндекса или Школе программистов HeadHunter? Возраст этих проектов уже измеряется десятилетием.

Не отстают от них и банки. Достаточно вспомнить Школу 21 Сбербанка, Raiffeisen Java School или Финтех Школу Tinkoff.ru. Эти проекты призваны не только дать теоретические знания, но и развить практические навыки, сформировать портфолио молодого специалиста, повысить его шансы на трудоустройство.

В конце мая мы анонсировали первый набор в Школу системного анализа Альфа-Банка. Прошло два месяца, набор окончен. Сегодня я хочу рассказать, как он проходил и что могло быть сделано иначе. Всех заинтересованных приглашаю под кат.


Читать дальше →
Total votes 20: ↑19 and ↓1+18
Comments3

HDMI-LVDS. Разработка на TSUMV59 от MStar

Reading time3 min
Views12K
Доброго времени суток, Хабр!



В продолжение прошлой статьи на тему DisplayPort-LVDS, решил написать о своей новой разработке контроллера HDMI-LVDS на чипе TSUMV59 от MStar. Контроллер имеет много интересного на борту, например, аналоговый выход звука, ИК порт, кнопки управления и даже OSD меню.
Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments22

Information

Rating
3,437-th
Registered
Activity