Pull to refresh
15
0
Send message

Удачная модель ветвления для Git

Reading time10 min
Views998K
Перевод статьи Vincent Driessen: A successful Git branching model

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



В качестве инструмента управления версиями всего исходного кода она использует Git.

Читать дальше →
Total votes 180: ↑171 and ↓9+162
Comments105

Способы деанонимизации руководителей сообществ и приложений «Вконтакте»

Reading time4 min
Views37K
Все описанные способы были отправлены «Вконтакте» через hackerone, но «Вконтакте» решили, что эти способы не являются проблемами. Решение было принято через 6 месяцев после изменения статуса репорта на «Triaged». Я пытался переубедить, но ответа не увидел.

Многие продемонстрированные ссылки у вас работать не будут, т. к. они разные для всех.
Читать дальше →
Total votes 60: ↑53 and ↓7+46
Comments26

It’s the future

Reading time5 min
Views85K

Этот пост просто шутка и не пытается выставить инструменты, упомянутые здесь, в дурном свете. Я использую их постоянно, они великолепны, и я рекомендую их использовать. По мотивам It's the future @ CircleCI Blog


— Эй, я бы хотел научиться писать крутые веб-приложения. Слышал, у тебя есть опыт.


— Да, я как раз занимаюсь фронтендом, юзаю пару тулз.


— Круто. Я щас делаю простое приложение — обычный TODO-лист, используя HTML, CSS и JavaScript, и планирую заюзать JQuery. Это норм?


— Не-не-не. Это олдскул. Джиквери мёртв — никто не использует его теперь! Тебе нужен React. Это будущее.


— Окей, лады. А что это?


Читать дальше →
Total votes 178: ↑167 and ↓11+156
Comments287

JavaScript: где мы сейчас и куда двигаться

Reading time19 min
Views47K

Привет, хабраюзер. Поскольку, судя по всему, мы уже живем в будущем, то недавно я плотно засел за изучение новых фич ES6, ES7 и новых идей, предлагаемых React и Redux. И написал для своих коллег статью, в которой изложил сублимацию этих своих изысканий. Статья неожиданно получилась довольно объемной, и я решил опубликовать её. Заранее извиняюсь за некоторую непоследовательность изложения и отсылки к проприетарному коду из наших проектов — но думаю, что это всё же может помочь некоторым из нас лучше понять то, куда движется мир JavaScript, и почему не стоит игнорировать происходящее в нём.


Я расскажу про свои мысли о компонентых моделях, классах, декораторах, миксинах, реактивности, чистой функциональности, иммутабельных структурах данных и ключевой идее React. Сразу скажу — я не являюсь пользователем React, и все изложенное это результат чтения его документации и технических статей, объясняющих его архитектуру. То есть, некоторое идеализированное преставление, которое безусловно лишь упрощенная модель того, как оно всё на самом деле обстоит.


Читать дальше →
Total votes 78: ↑70 and ↓8+62
Comments137

systemd: getty-подобный сервис для htop

Reading time4 min
Views30K

htop — это интерактивная программа для наблюдения за процессами; она — альтернатива программы top. Каждый, кто работает за машиной с линуксом на борту, хоть раз использовал её: будь то поиск процесса (и его последующее убийство) или тщательный мониторинг используемых ресурсов.


Читать дальше →
Total votes 29: ↑27 and ↓2+25
Comments27

Конденсаторы для «чайников»

Reading time6 min
Views226K


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

Но конденсатор – это не просто пузырёк с двумя проводочками и парой параметров – рабочее напряжение и ёмкость. Существует огромный массив технологий и материалов с разными свойствами, применяемых для создания конденсаторов. И хотя в большинстве случаев для любой задачи сгодится практически любой конденсатор подходящей ёмкости, хорошее понимание работы этих устройств может помочь вам выбрать не просто нечто подходящее, а подходящее наилучшим образом. Если у вас когда-нибудь была проблема с температурной стабильностью или задача поиска источника дополнительных шумов – вы оцените информацию из этой статьи.
Читать дальше →
Total votes 39: ↑37 and ↓2+35
Comments94

Байки выездных инженеров – монтаж и сервис ВКС/КЦ

Reading time6 min
Views65K


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

Начнём. В большой компании мы делали видеонаблюдение на одном из объектов. Там две службы безопасности — ИТ и «физики». Первые «кладут кабель», вторые «ложат мордой в пол». Так вот, по настоянию ИТ-безопасников мы делали вообще отдельную сеть на коаксиале, чтобы нельзя было открутить камеру, воткнуться на её место и сбрутить роутер. Промучились изрядно. В конце монтажа мы обратили внимание на ряд датчиков «физиков», стоящих прямо рядом с камерами. На витой паре. Скрутили один, воткнулись с ноутбуком, там веб-интерфейс роутера… и да, пароль 12345678!

Однажды мы поднимали колл-центр для той части банка, которая, как оказалось, занимается сбором долгов. Впечатления инженера с приёмки совершенно потрясающие:
— Ты знаешь, стайка такая милых девушек до смены. Ласковые, флиртуют, глазки строят. А потом садятся на АРМ и начинают так брутально с клиентами разговаривать, что просто страшно становится. Я там чуть по стене не съехал первый раз.
Пробыв на тестовой эксплуатации 3 дня, инженер принял волевое решение и закрыл все свои кредитные карты.
Читать дальше →
Total votes 73: ↑71 and ↓2+69
Comments22

Утечка пользовательских данных в QIWI

Reading time2 min
Views42K


Вкратце, существует возможность собрать огромное количество данных о платежах по выставленным счетам, произведённых в системе. Эти данные включают в себя назначение платежа, описание, сумму. И самое главное: номер мобильного телефона плательщика, который, в некоторых случаях, по совместительству, является логином в кошельке. В описаниях же обычно доступна и иная информация, которая не должна быть достоянием общественности, как и всё ранее упомянутое.
Подробности
Total votes 71: ↑65 and ↓6+59
Comments39

ЯндексБот ходит по ссылкам, по которым ходит пользователь

Reading time6 min
Views71K
Сегодня утром к нам в поддержку сайта знакомств написала девушка и сообщила, что она появляется у мужчин в списке «она вас посмотрела», хотя она точно не смотрела. И не пользовалась в это время компьютером. По цепочке это обращение дошло до меня. Расскажу, что мне получилось установить.
Читать дальше →
Total votes 106: ↑95 and ↓11+84
Comments113

Проект «Око» ч.4

Reading time17 min
Views22K


Итак, господа, свершилось!

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

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

Текст писался, в основном, по аккомпанемент вокально-инструментального ансамбля «Узел висельной петли» или в народе просто «Slipknot».

Основные треки:
Slipknot – Spit It Out
Slipknot – Wait And Bleed
Slipknot – Fall
Slipknot – Left Behind
Slipknot – Liberate
Slipknot – People = Shit
Slipknot – Before I Forget

В VK музыка лежит вот тут.

Для тех, кто не понимает, что тут происходит и что это за публикация:

Часть 1
Часть 2
Часть 3


Сам текст, как всегда, под катом.
Читать дальше →
Total votes 24: ↑19 and ↓5+14
Comments9

Проект «Око» ч.3

Reading time15 min
Views28K
image

Уже выходные и самое время для третьей части. Рабочий плейлист, под который почти все это писалось, лежит вот тут.

Для тех, кто не понимает, что тут происходит и что это за публикация:

Часть 1
Часть 2


Сам текст под катом.
Читать дальше →
Total votes 30: ↑26 and ↓4+22
Comments18

Почему айфон перезагружается от арабской смс

Reading time6 min
Views234K
DISCLAIMER

Не пытайтесь повторить это со своими телефонами и телефонами коллег! Судя по комментариям, много людей уже заразили свои телефоны, а 100%-тного лекарства еще нет!

DISCLAIMER 2

Даже не пытайтесь назвать так Wi-fi точку!

Около 15 часов назад на Reddit появился забавный пост, который рассказывал о перезагрузке айфона после странного сообщения вида:
Не шлите никому на айфон
Power
لُلُصّبُلُلصّبُررً ॣ ॣh ॣ ॣ



Читать дальше →
Total votes 184: ↑178 and ↓6+172
Comments138

Интерфейсы «пользователю надо – всё равно пройдёт»

Reading time5 min
Views69K
Вот комикс «приключения одного пользователя в форме заказа»:



Есть такие интерфейсы, которые проходят до конца 100 из 100 пользователей. Но до батареи доезжают только уши чертовски разозлённые.
Читать дальше →
Total votes 94: ↑89 and ↓5+84
Comments106

Проект «Око» ч.1, пилотная

Reading time15 min
Views83K
Изначально, моя первая публикация подобного рода «День, когда торренты остановились» была спонтанной, однако позже я столкнулся с публикацией пользователя awaik «Воины виртуальности», и понял, что смогу поделиться и другими своими работами в этом направлении. Данный пост предназначается, в первую очередь, хабу «Читальный зал», но я решил все же использовать хабы «Киберпанк» и «Научная фантастика» как наиболее близкие по смыслу. Заранее извиняюсь перед всеми, кто не хотел бы видеть подобные вещи в своей ленте. Остальным же, надеюсь, процесс чтения доставит удовольствие и я смогу развить свое повествование до по-настоящему серьезных размеров.

Сам текст под катом.

Читать дальше →
Total votes 28: ↑23 and ↓5+18
Comments27

Правим баг без исходных кодов

Reading time9 min
Views39K
image

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

Что ж, ближе к делу. Есть такая широко известная в узких кругах программа под названием «Govorilka». Как объясняет её автор, это ничто иное, как «программа для чтения текстов голосом». По сути, так оно и есть. При помощи неё было озвучено множество популярных и не очень видео, рапространившихся по всей сети. Программа имеет консольную версию под названием «Govorilka_cp», которую удобно вызывать из своих собственных приложений, что, собственно, я и сделал в одном из своих проектов.

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

Учитывая, что говорилка не обновлялась уже несколько лет, а сам автор оставил вот такое «послание» на своём сайте

image

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

Как протекал процесс, и что из этого вышло, читайте под катом (осторожно, много скриншотов).
Читать дальше →
Total votes 93: ↑93 and ↓0+93
Comments53

Атака на оракула. Подробный гайд по векторам атак на Oracle DB

Reading time17 min
Views36K


Сегодня я бы хотел поговорить о векторах атак на СУБД Oracle на разных стадиях: как прощупать слабые места базы снаружи, проникнуть и закрепиться внутри плюс как все это дело автоматизировать с помощью специализированного софта. Архитектура и возможности базы данных весьма интересны, занимательных моментов немало, а значит, немало и способов все испортить. Однако не забывай: ломать — не строить, поэтому вся дальнейшая информация предоставлена исключительно с целью выявить недочеты в защищенности тестируемых систем и повысить безопасность.
Читать дальше →
Total votes 21: ↑20 and ↓1+19
Comments5

BalanceBall. Самобалансирующая платформа от А до Я

Reading time4 min
Views32K
Я студент Физтеха, факультета радиотехники и кибернетики, и как положено всем второкурсникам, в весеннем семестре надо сделать проект по информатике и микроконтроллерам. Я решил убить двух зайцев одним выстрелом и объединил два проекта в один.

Долго выбирал тему проекта. Из идей была игра, похожая на Guitar Hero, но контроллером были твои руки, настукивающие барабанные биты по столу. Также задумывался над созданием светодиодной матрицы, управляемой по Bluetooth с компьютера, со своим простеньким скриптовым языком для написания анимаций. Задумки были интересными, но я все равно казались чем-то не тем. Потом я случайно наткнулся на это видео и сразу загорелся идеей реализовать что-то подобное. Вот что у меня вышло в итоге:



Кому интересен процесс создания этой платформы от проектирования деталей до написания компьютерного зрения, прошу под кат.
Читать дальше →
Total votes 65: ↑62 and ↓3+59
Comments10

Носители данных. Что нам несет год 2015 и чего стоит ожидать за его горизонтом?

Reading time8 min
Views23K
Все возрастающие объемы генерируемых данных требуют под себя все более совершенные способы их хранения, в то же время технологический прогресс позволяет удешевлять цену хранения информации, что в свою очередь, стимулирует генерацию все большего количества информации. В результате мы имеем ясную картину, подталкиваемое с разных сторон, развитие носителей данных неуклонно идет вверх. Научная мысль работает по двум принципиальным направлениям, с одной стороны это развитие способов кодирования информации, с другой — улучшение аппаратной составной. Наиболее широко представленными технологиями среди носителей информации на данный момент являются HDD и SSD диски.

Читать дальше →
Total votes 24: ↑21 and ↓3+18
Comments9

Гугл-Цюрих глазами сибиряка-фрилансера

Reading time19 min
Views66K

Расскажи мне полуправду, как полуэльф полуэльфу...

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

Ни в коей мере не считая себя чем-то выдающимся (ну, разве что, пузом), решил ответить на вопросы «а как там?» и «а почему туда?» хоть и субъективно, но максимально объективно и, по возможности, информативно.
Читать дальше →
Total votes 63: ↑61 and ↓2+59
Comments104

9 фактов, которые знают программисты, и не знают все остальные

Reading time3 min
Views191K
image

Факт 1


Под капотом самых критичных программ, которые вы используете на ежедневной основе (Mac OS X или Facebook) содержится ужасное количество хаков и костылей, которые с трудом уживаются друг с другом. Это как если бы вы разобрали боинг 747 и увидели, что топливопровод держится вешалкой для одежды, а шасси смотаны изолентой.

Бен Черри
Читать дальше →
Total votes 237: ↑164 and ↓73+91
Comments88

Information

Rating
Does not participate
Registered
Activity