Search
Write a publication
Pull to refresh
0
0
Сергей Чудаков @CSRedRat

DevOps

Send message

Не дразните программиста

Reading time4 min
Views168K
Подходит к концу очередная рабочая неделя. Не знаю, как у вас, а у меня эта неделя, что называется, — не задалась. Потрачена куча энергии и нервных клеток, и никакого движения вперед. Переносить стрессовое состояние на выходные мне очень не хочется, поэтому я решил взять короткую паузу и немного развеяться.

Вы устали? Хотите выпустить пар? Вам требуется передышка? Предлагаю вам присоединится ко мне, тем более, что на дворе пятница.
Читать дальше →

Почему существует так много Питонов?

Reading time9 min
Views141K
Питон изумителен.

Удивительно, но это довольно неоднозначное заявление. Что я имею ввиду под “Питоном”? Может, абстрактный интерфейс Питона? Или CPython, распространенная реализация Питона (не путать с похожим по названию Cython)? Или я имею ввиду что-то совсем иное? Может, я косвенно ссылаюсь на Jython, или IronPython, или PyPy. Или может я отвлекся так сильно, что говорю о RPython или RubyPython (которые очень сильно отличаются).

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

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

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

Все начинается с понимания того, чем на самом деле является “Питон”.
Читать дальше →

SQL injection для начинающих. Часть 1

Reading time5 min
Views805K

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

Как HTTPS обеспечивает безопасность соединения: что должен знать каждый Web-разработчик

Reading time9 min
Views375K


Как же все-таки работает HTTPS? Это вопрос, над которым я бился несколько дней в своем рабочем проекте.

Будучи Web-разработчиком, я понимал, что использование HTTPS для защиты пользовательских данных – это очень и очень хорошая идея, но у меня никогда не было кристального понимания, как HTTPS на самом деле устроен.

Как данные защищаются? Как клиент и сервер могут установить безопасное соединение, если кто-то уже прослушивает их канал? Что такое сертификат безопасности и почему я должен кому-то платить, чтобы получить его?
Читать дальше →

На пути к созданию безопасного веб-ресурса. Часть 1 — серверное ПО

Reading time7 min
Views99K
Я уже довольно долгое время хочу формализовать все свои мысли, опыт, ежедневно применяемый на практике, и многое другое в одном месте и предоставить их общественности. Уверен, многим этот материал будет полезен. Он посвящен различным моментам в конфигурации серверного ПО Linux и безопасным подходам к созданию сайтов/приложений на php (все же это до сих пор одна из самых популярных связок, хоть её успешно и подвигают другие технологии. Но советы так же легко применимы и к веб-ресурсам на других технологиях).

Т.е. речь идет о типичной ситуации. Проект (стартап), купили под него сервер и разворачиваем на нем сайт. Бизнесу не нужно тратить лишних денег на сервера (поэтому будут выбраны наиболее производительные связки ПО), а так же нужно, чтобы все было безопасно, при чем бесплатно :)
Много текста. По-другому никак

Избранное: ссылки по IT безопасности

Reading time3 min
Views110K




Давно хотел написать этот пост с подборкой полезных ссылок, так как очень часто спрашивают подобное (думаю, у многих, кто в этой (да и в других) сфере). Ссылки разбиты на категории.




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

Android. Обзор боевых приложений

Reading time2 min
Views322K
Доброго времени суток!

Наряду со статьей "iPhone: MiTM атака из кармана", родилась почти аналогичная статья про Android.

Мы уже знаем, на что способен iPhone. Уступает ли ему Android?

Было рассмотрено около 25 боевых приложений. Хочу предоставить вам результат маленького исследования. Многие приложения даже не запустились, некоторые подвесили телефон намертво, но некоторые даже работали!

Весь софт тестировался на телефоне LG Optimus, с версией Android 2.3.

Итак, краткий обзор боевого софта на Android:

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

Графика и типографика нового 2ГИС

Reading time4 min
Views51K


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

IP-табло. Мониторинг объектов без программного обеспечения

Reading time3 min
Views6.6K
Одна из последних наших разработок в некоторой степени ломает сложившийся «железобетонный» стереотип построения комплексов мониторинга. Серьёзный промышленный подход к мониторингу предполагает наличие двух составных частей: микропроцессорных контроллеров, размещаемых на контролируемых объектах, и сервера с соответствующим программным обеспечением (ПО), установленного в Диспетчерском Центре. Так строится и наш аппаратно-программный комплекс «Ценсор-Технотроникс».

Однако никто не будет спорить, что задачи бывают разные. Наряду со сложными системами, состоящими из сотен объектов с развитым функционалом, появляются простенькие с виду и компактные «хотелки».

Итак, недавно к нам обратился Заказчик, у которого имеются несколько складов и будка охранника. Главный технический инструмент охраны — видеонаблюдение. Но Заказчику нужна также сигнализация об аварийных событиях на каждом объекте: взлом, пожар, протечка и т.п. В плане оснащения объектов такая задачка решается, как говорится, «на раз». Устанавливаются миниатюрные контроллеры типа КУБ-Пико нашего производства с соответствующим питанием, подключаются к сети передачи данных, и вся недолга.

Но вот с оснащением Диспетчерского Центра получается негладко. В самом деле: приобретать сервер, инсталлировать СУБД и специализированный софт и пытаться обучить пользоваться всей этой премудростью низкоквалифицированный, подверженный текучке персонал — дело неблагодарное. Как говорится, «из пушки по воробьям».

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

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

Unchecky – долой потенциально нежелательные программы

Reading time2 min
Views54K
Уже давно стал нормой тот факт, что при установке программного обеспечения (а иногда и при других обстоятельствах) предлагаются дополнительные потенциально нежелательные программы, такие как тулбар или «защитник интернета». Также часто попадаются предложения поменять стартовую страницу или поисковик. Эти предложения предоставляются как часть процесса установки и, как следствие, неопытный пользователь устанавливает весь набор по умолчанию, ни о чем не подозревая. Результат, я думаю, всем известен.

Я давно думал над этой проблемой, а сегодня хочу предоставить вам решение — программа под названием Unchecky (от англ. uncheck – снять галочку). Подробности под катом.
Читать дальше →

Тестировщики — роль второго плана?

Reading time5 min
Views41K
В странах бывшего СССР сложилось вполне определённое отношение к тестировщику как к роли второго плана:
  • На роль тестировщика готовы брать кого угодно, кто умеет достаточно уверенно нажимать на кнопочки
  • Тестировщики редко участвуют в судьбе проекта, принимают решения по требованиям и срокам
  • Тестировщиков стараются подключать как можно позже, когда надо «покликать» и «поикать ошибки»
  • За исключением небольшого числа продуктовых компаний, большинство работодателей предлагают тестировщикам зарплату в 1,5-2 раза ниже, чем разработчикам.

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

Визит на ферму ASICMINER-a

Reading time4 min
Views90K
Во время моего визита в Гонконг сегодня я увидел зеленый контейнеровоз на площади возле территории Wan Chai (возле метро), из открытых дверей вышли два одетых в мультяшных тигров парня и, обратившись ко мне, предложили посетить их ферму по добыче биткоинов! Под звуки привлекающей легкой музыки я вошел внутрь и увидел какие-то метровой высоты баки из прозрачного стекла, на треть заполненные жидкостью, с погруженными в эту жидкость многочисленными зелеными платами, между которыми тихо булькали пузырьки. Из каждого стеклянного резервуара поднимаются медные трубы, подключенные к небольшой охлаждающей установке. Сконденсированные пары жидкости время от времени капают вниз. Постоянно мигают светодиоды, создается впечатления присутствия жизни.
Читать дальше →

Рейтинг постов хаба

Reading time35 min
Views55K

Привет, Хабр!

Решил посмотреть лучшие посты своего любимого хаба и с ужасом обнаружил, что такой фичи нет.

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

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

SoftEther VPN — продвинутый мультипротокольный VPN-сервер и клиент

Reading time3 min
Views411K
Как скоро я смогу вас заинтересовать, если скажу, что в этой статье речь пойдет о VPN-сервере, который может поднимать L2TP/IPsec, OpenVPN, MS-SSTP, L2TPv3, EtherIP-серверы, а также имеет свой собственный протокол «SSL-VPN», который неотличим от обычного HTTPS-трафика (чего не скажешь про OpenVPN handshake, например), может работать не только через TCP/UDP, но и через ICMP (подобно pingtunnel, hanstunnel) и DNS (подобно iodine), работает быстрее (по заверению разработчиков) текущих имплементаций, строит L2 и L3 туннели, имеет встроенный DHCP-сервер, поддерживает как kernel-mode, так и user-mode NAT, IPv6, шейпинг, QoS, кластеризацию, load balancing и fault tolerance, может быть запущен под Windows, Linux, Mac OS, FreeBSD и Solaris и является Open-Source проектом под GPLv2?

То-то и оно. Такое пропустить нельзя.
Читать дальше →

Учебный курс «Визуализация данных»

Reading time5 min
Views33K
25 и 26 января лаборатория проводит практический учебный курс по визуализации данных.



Весь прошлый год мы в лаборатории решали задачи по визуализации и придумывали новые форматы представления данных, я вела обычные и живые советы, читала лекции и проводила практические занятия со студентам МАИ, МГУ и участниками питерского «Дизайн-трека». Мы собрали огромное количество материала, которым не трепится поделиться, и подготовили двухдневный практический курс для тех, кто хочет перейти «на ты» со сложными данными и с головой погрузиться в тему.

На курсе участники учатся работать с данными с помощью дизайнерских инструментов. В первый день мы разберём хорошие и плохие примеры, по-новому взглянем на привычные таблицы, графики и диаграммы, познакомимся с необычными форматами — удавом, слоёным пирогом, мозаикой, домограммой. Во второй день Дима Тихвинский devgru, веб-технолог лаборатории, покажет как применить эти навыки при работе с библиотекой D3.js — самым современным и гибким инструментом интерактивных визуализаций. Все участники курса получат раздаточные материалы с кратким конспектом лекций:


Курс будет полезен дизайнерам, аналитикам, менеджерам, программистам, журналистам и редакторам онлайн-изданий. Предварительного знакомства с D3.js не требуется, опыт работы с HTML, CSS и JavaScript полезен, но не обязателен.

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

Сетевое программирование для разработчиков игр. Часть 1: UDP vs. TCP

Reading time9 min
Views174K
От переводчика: Это перевод первой статьи из цикла «Networking for game programmers». Мне очень нравится весь цикл статей, плюс всегда хотелось попробовать себя в качестве переводчика. Возможно, опытным разработчикам статья покажется слишком очевидной, но, как мне кажется, польза от нее в любом случае будет.


Привет, меня зовут Гленн Фидлер и я приветствую вас в первой статье из моей онлайн-книги “Сетевое программирование для разрабочиков игр”.

image

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

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

Вы и ваша работа *

Reading time40 min
Views823K
Длинный материал. Время чтения – около 40 минут.

image

Доктор Ричард Хэмминг, профессор морской школы Монтерея в штате Калифорния и отставной учёный Bell Labs, прочёл 7 марта 1986 года очень интересную и стимулирующую лекцию «Вы и ваши исследования» переполненной аудитории примерно из 200 сотрудников и гостей Bellcore на семинаре в серии коллоквиумов в Bell Communications Research. Эта лекция описывает наблюдения Хэмминга в части вопроса «Почему так мало учёных делают значительный вклад в науку и так многие оказываются в долгосрочной перспективе забыты?». В течение своей более чем сорокалетней карьеры, тридцать лет которой прошли в Bell Laboratories, он сделал ряд прямых наблюдений, задавал учёным очень острые вопросы о том, что, как, откуда, почему они делали и что они делали, изучал жизни великих учёных и великие достижения, и вёл интроспекцию и изучал теории креативности. Эта лекция о том, что он узнал о свойствах отдельных учёных, их способностях, чертах, привычках работы, мироощущении и философии.
Читать дальше →

Test Kitchen для новичков

Reading time8 min
Views8.7K
image Привет, Хабраюзеры! Сегодня я хотел бы рассказать о инструментах, которые облегчают тестирование кукбуков. В чем собственно проблема? С ростом масштаба инфраструктуры становится сложнее следить за зависимостями и последствиями внесения изменений в кукбуки и на повестке дня становится вопрос о их тестировании. Решить данные проблемы помогают такие инструменты, как foodcritics, chefspec, minitest, test kitchen…
В данном посте я хотел бы поделиться своим опытом по освоению test kitchen в «преславутый 21 день». Я старался чтобы данный пост был максимально прост и удобен для начального ознакомления с test kitchen.

Поехали

Чтобы внедрить ERP-систему на производстве

Reading time6 min
Views55K
Пару недель назад ездил на один завод. Хотят внедрять ERP. Провел презентацию, все посмотрели. Руководство попросило подготовить сводный документ, в котором изложить, что необходимо, чтобы внедрить систему.
Документ я сделал. Получился он весьма занимательным, жалко выбрасывать, вот решил поделиться со всеми.

Сначала немного о фундаменте.
Итак, что же нужно, чтобы в компании была внедрена ERP система? Ну, во-первых в туалетах должно быть чисто. Состояние туалетов — это состояние компании в целом. Вы будете смеяться, но это так и есть. Если в туалетах грязно, то вначале надо решить системные проблемы в компании, а потом уж и за ERP можно браться.
Читать дальше →

Information

Rating
Does not participate
Location
Пермь, Пермский край, Россия
Date of birth
Registered
Activity