Как стать автором
Обновить
16
0
Nikolay Turnaviotov @foxmuldercp

Administrator, DevOps, RoR/ReactJS programmer

Отправить сообщение

Как работает CPU: интерактивный урок для начинающих

Время на прочтение2 мин
Количество просмотров115K
Simple CPU — маленький урок, который знакомит новичка с ключевыми понятиями информатики. Хотя урок далеко не полный и предназначен для «самых маленьких», но даже образованному человеку приятно видеть, насколько доступно и элегантно можно изложить сложный материал.

Урок состоит из 8 интерактивных примеров.

1. Бинарное счисление.

2. Логические операции на примере штриха Шеффера (NAND gate).


Штрих Шеффера (NAND gate)
Читать дальше →
Всего голосов 52: ↑41 и ↓11+30
Комментарии13

Котфускация исполняемого .net кода

Время на прочтение6 мин
Количество просмотров65K
(пятница)

Обычно развернутое приложение в файловой системе выглядит как-то так:



Совершенно незащищенное от инструментов типа рефлектора или IlSpy, но что если оно станет таким:



По крайней мере легкий ступор хакеру-неофиту обеспечен. Приятно смотрится, и антивирусы не заинтересуются.
Порефлексировать
Всего голосов 148: ↑133 и ↓15+118
Комментарии42

Почти-web-сервер своими руками

Время на прочтение7 мин
Количество просмотров9.5K
В последнее время появилось несколько постов по привлечению внимания к определённым языкам программирования на примере написания некоего несложного «web-сервера». Раз уж пошла такая пьянка perl пока не затронули, то добавлю и свои пять копеек :)
Будем писать несложное серверное приложение, маскирующееся под http-сервер.
Читать дальше →
Всего голосов 38: ↑29 и ↓9+20
Комментарии46

Опыт работы эникейщиком/системным администратором в бюджетной организации

Время на прочтение3 мин
Количество просмотров82K
Это история о том, как я устраивался на свою первую серьезную работу, о коллективе, приобретенном опыте и разбитых мечтах

image
Подобие СКС в серверной

Предыстория


Так получилось, что в начале 3 курса обучения в МГТУ им. Н.Э. Баумана я решил, что пора устраиваться на работу. Мой выбор пал на одну бюджетную организацию. Это была первая серьезная работа в крупной компании. О данной вакансии я узнал от бывшего одноклассника, который работал там на должности, далекой от IT.
Подробнее под катом
Всего голосов 70: ↑45 и ↓25+20
Комментарии69

Написание своих автодополнений для Shell. Часть 2: bash

Время на прочтение3 мин
Количество просмотров15K

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


Преамбула

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

Введение

Bash, в отличие от zsh, требует к себе некоторого велосипедостроения в отношении автодополнений. Бегло погуглив, я не нашел более-менее нормальных туториалов, потому за основу были взяты имеющиеся в системе файлы автодополнений для pacman (искренне надеюсь, что отцы-основатели Arch'а не придумывали много велосипедов).

Читать дальше →
Всего голосов 30: ↑28 и ↓2+26
Комментарии7

Установка и настройка openchange под CentOS 6.5

Время на прочтение6 мин
Количество просмотров25K
В рунете да и в целом в интернете мало рассказывается о таком интересном продукте, как openchange.
В теории openchange и его сопутствующие компоненты должны полностью заменять MS Exchange Server, на практике же это получается не совсем.
Тех кто заинтересовался прошу в сам пост. Там будет рассказано о установке на CentOS 6.5.
Читать дальше
Всего голосов 17: ↑16 и ↓1+15
Комментарии9

Планирование аварийного восстановления. Часть третья — заключительная

Время на прочтение6 мин
Количество просмотров18K

Соотносим потребности бизнеса с его возможностями




В предыдущих статьях (1,2), посвященных вопросам планирования аварийного восстановления, были описаны процедуры сбора и обработки информации об ИТ-инфраструктуре организации, позволяющие получить точную информацию о:

  • ИТ-сервисах, критичных для бизнеса компании,
  • Текущем времени восстановления их работы в случае сбоя,
  • Минимально достижимых сроках аварийного восстановления,
  • Необходимых ресурсах для их достижения.

И все бы ничего, если бы не ограниченные финансовые возможности организации, не позволяющие приобрести все необходимые резервы для оперативного восстановления. По этой причине заключительная задача планирования аварийного восстановления – поиск баланса между потребностями и финансовыми возможностями бизнеса, и закрепление его в виде соглашения об уровне обслуживания (Service Level Agreement – SLA) в части устранения возникающих инцидентов.

Данный этап полностью состоит из согласования с руководством компании следующих аспектов взаимодействия:
Читать дальше →
Всего голосов 24: ↑21 и ↓3+18
Комментарии0

Начало работы с ASP.NET Identity

Время на прочтение4 мин
Количество просмотров98K
Многие из вас должны знать, что выход ASP.NET MVC 5 ознаменовался переходом на новую систему авторизации под названием ASP.NET Identity. Разработчики фреймворка настоятельно рекомендуют переходить на новую систему, называя основными ее преимуществами возможность внедрения в абсолютно любой проект (ASP.NET MVC, Web Forms, Web Pages, Web API и SignalR), простую социальную интеграцию, работу на OWIN, установку и обновление посредством NuGet и другие. Присмотревшись внимательнее к ASP.NET Identity, можно без зазрения совести сказать, что это — следующий этап в развитии веб-программирования на ASP.NET. В данном посте я размещу простой туториал для начала работы с ASP.NET Identity.
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии18

Git: за пределами возможного

Время на прочтение8 мин
Количество просмотров25K

Глава 1



Все началось с того, что мне подарили PipBoy. Очень удобная вещь: захотелось пиццы — набрал команду callPizza() и вот уже курьер везёт тебе горячий круг! «Как здорово!» — думал я.
Недавно я устроился на работу в должности программиста. Коллеги мне сразу стали расхваливать систему контроля версий Git. Ну что ж. Раз говорят, что хороший — нужно читать про него. Прочитав первую книгу, в голове был полный сумбур. Я решительно ничего не понимал. «Что за бабуйня такая? Для чего вообще это нужно?» — показалось мне.
После тяжёлого трудового дня я направился домой. Был тёплый августовский вечер, во дворе играли детишки. У каждого из них на руке был свой PipBoy. Насколько же проникли технологии в нашу жизнь. Ведь совсем недавно ничего этого не было, а первые образцы стоили сотни тысяч долларов. А вот теперь почти у каждого на руке! Погрузившись в свои мысли, я вовсе не заметил, как из-за угла кто-то выехал на мотоцикле. Мчавшись на огромной скорости, он совершенно не замечал людей на дороге. А тем более во дворе.
Продолжение?
Всего голосов 143: ↑103 и ↓40+63
Комментарии20

Auto-Triggered или «незаметный» VPN

Время на прочтение5 мин
Количество просмотров26K
Периодически мне необходимо подключаться через VPN к моей домашней сети. Чаще всего для проведения демонстраций во время выступлений или проведения тренингов. Реже, чтобы достать определенные файлы или «посмотреть», что там с дочкиным планшетом. Подключаюсь либо с рабочего компьютера, либо со своего планшета. И там, и там Windows 8.1, а в этой версии появилась очень интересная возможность – автоматически срабатывающий (Auto-Triggered) VPN.
Читать дальше →
Всего голосов 37: ↑29 и ↓8+21
Комментарии17

Мой умный дом на .NET

Время на прочтение2 мин
Количество просмотров25K
В последнее время на хабре много статей про умный дом. В основном все они касаются взаимодействия с домашними устройствами. Для автоматического принятия решений используют MajorDoMo, Ninja Blocks или собственные велосипеды.

Уже около года я пишу yet another home automation систему управления домом по сценариям. Т.е. она позволяет навешивать произвольную логику на различные домашние события. Предлагаю ее на ваш строгий суд.
Описание и дистрибутив
Читать дальше →
Всего голосов 45: ↑25 и ↓20+5
Комментарии21

Подготовка инфраструктуры и развертывание отказоустойчивого кластера на Windows Server 2012

Время на прочтение5 мин
Количество просмотров73K


Здравствуй, %username%!


После нескольких лет молчания, решил поделиться опытом по развертыванию отказоустойчивого кластера на основе Windows Server 2012.
Постановка задачи: Развернуть отказоустойчивый кластер для размещения на нем виртуальных машин, с возможностью выделения виртуальных машин в отдельные виртуальные подсети (VLAN), обеспечить высокую надежность, возможность попеременного обслуживания серверов, обеспечить доступность сервисов. Обеспечить спокойный сон отделу ИТ.
Под катом сумбурное описание решения задачи
Всего голосов 26: ↑18 и ↓8+10
Комментарии54

Создание своего банка, или Как обеспечить себе безбедную старость

Время на прочтение15 мин
Количество просмотров354K
Наблюдая за своими родителями-пенсионерами, а точнее за размерами их пенсий, я крепко задумываюсь о том, как обеспечить себе нечто оное в достойном меня размере. На государство в составе СНГ рассчитывать, похоже, не приходится. Значит, надо что-то делать самому! И начинать надо сейчас, пока мне 32 года, есть какой-никакой заработок и силы крутиться. Раньше были мысли, что я буду вечно молодым, вечно здоровым и все время что-то делать. Постепенно начинаю осознавать, что лет 20… 30 — и силы будут таять (или распыляться). Поэтому пару лет назад я начал понемногу что-то делать в этом направлении. Получил некоторый опыт, который может быть интересен уважаемому сообществу. Даже если для читателя вопрос пенсии сейчас звучит безумно абстрактно, то все равно рекомендую хотя бы пробежаться. Если бы я 5 лет назад почитал такой материал — я был бы уже существенно богаче!..
UPD: в статье добавил про смысл диверсификации, а то в комментариях много вопросов было…
В общем, рекомендую!
Всего голосов 222: ↑155 и ↓67+88
Комментарии345

Как использовать функцию обработки входящей почты в SharePoint 2010 — пример из практики

Время на прочтение5 мин
Количество просмотров6.9K
Нередко бизнес-процесс компании включает в себя необходимость обработки документации, содержащей штрих-коды, с последующим занесением их в некую учетную систему. Это актуально, например, для сферы ЖД-перевозок и авиакомпаний: в штрих-код купона, присылаемого на электронную почту агентами компании, зашиты номера билетов. Операционисты вынуждены ежедневно обрабатывать и заносить во внутреннюю учетную систему тысячи таких купонов.

Работа рутинная, человеческий фактор провоцирует ошибки. Как автоматизировать процесс и избавить оператора от необходимости ручной обработки писем и их вложений? Мы нашли простое решение с использованием MS SharePoint. По своему обыкновению, мы постарались по максимуму задействовать имеющийся функционал систем, существующую библиотеку и немного своей программистской магии.
Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии1

Воскрешение Sharepoint или как не сгореть на костре инквизиции

Время на прочтение6 мин
Количество просмотров23K
image

Как быть, если однажды вы обнаружите, что ваш любимый сайт Sharepoint не доступен и все что от него осталось — это база контента, которую нет возможности присоединить к серверу Sharepoint? Как восстановить «триллион» наиважнейших документов, хранящихся в базе Sharepoint? Короткую печальную историю и ответы на эти вопросы вы можете почерпнуть из данной статьи.
Читать дальше →
Всего голосов 19: ↑16 и ↓3+13
Комментарии2

Облачный API для мобильных приложений своими руками. Часть 1

Время на прочтение6 мин
Количество просмотров25K

Вместо вcтупления


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

Однако с появлением мобильных устройств, веб сайтов с богатой логикой и социальных сетей все стало меняться. Сейчас программы, которые не выходят в сеть, не умеют что-то выкладывать в фейсбуки и вообще работают сами в себе, практически не имеют права на жизнь. Даже професcиональные инструменты, такие как, Microsoft Office 2013, стали поддерживать облачные хранилища для обмена документами.

Мир меняется. Теперь, чтобы заработать денег на продаже софта, необязательно писать свою собственную операционную систему или антивирус, потратив кучу времени и ресурсов. Достаточно просто попросить свою жену и вдвоем разработать мировой хит. Поэтому многие сегодня мечтают создать своих злых птичек или кат-зе-роуп, изучая разработку под iOS, Android, Windows Phone.

Допустим, вы написали свое приложение и опубликовали его в каком-то из магазинов. Все отлично, вы получаете прибыль, но хочется больше. Вы понимаете, что надо писать приложения еще и для других платформ, чтобы расширить пользовательскую базу. Здесь-то и кроется первая засада — как минимизировать количество кода, который вы пишете, если приложения будут работать по большей степени одинаково и отличаться будут только внешним видом (и то не факт) и языком программирования?
Читать дальше →
Всего голосов 24: ↑20 и ↓4+16
Комментарии9

Практика разработки CMS

Время на прочтение6 мин
Количество просмотров61K
Сегодня для рождения сайта и жизни его в сети создана уютная обстановка. Множество CMS позволяет наполнить сайт необходимым функционалом и удобно управлять его содержимым. Даже бесплатные решения позволяют новичкам без проблем наполнять свой сайт информацией, не обладая при этом особыми знаниями (хотя это не всегда хорошо). Но в любом деле есть исключения, которые требуют особого подхода. Именно об особых случаях в веб-разработке я и хочу вам рассказать.
Порой сайт должен обладать особым функционалом, или соответствовать определенным требованиям, которые ставит перед разработчиком (студией) заказчик. В таком случае приходиться разрабатывать дополнительные модули, и не всегда это удобно, а порой и не возможно сделать со «стандартной» CMS. В подобных случаях для сайта разрабатывается уникальный «движок», хотя это случается крайне редко. В большинстве случаев разработчики (студии) создают фирменные CMS по другим причинам, предлагая пользователю дополнительные удобства, функционал или (и) безопасность. О том, почему и зачем я пошел этим путем, и что из этого получилось речь пойдет дальше.
Читать дальше →
Всего голосов 23: ↑12 и ↓11+1
Комментарии10

IPv6 теория и практика: введение в IPv6

Время на прочтение7 мин
Количество просмотров137K
Этой статьёй я хочу начать цикл, посвященный IPv6. Я являюсь инструктором академии Cisco, поэтому, если вы в совершенстве знаете материал нового CCNA Routing & Switching, то скорее всего, не найдёте в цикле ничего нового. Речь пойдёт о структуре и особенностях протокола IPv6, а также, применении его на маршрутизаторах Cisco (маршрутизация RIP, OSPF, EIGRP, списки контроля доступа, и др. – как пойдёт). В первой статье мы поговорим о структуре IPv6 пакета, записи адресов, префиксе. Вторая статья цикла доступна здесь. Информация подойдёт для новичков, имеющих, тем не менее, некоторые знания по IPv4 и модели OSI.
Цикл статей основан на материалах моего блога, которые, в свою очередь, основаны на опыте преподавания, работы с оборудованием и вольном переводе и обдумывании официального курса CCNA Routing & Switching.
Итак, начнём. Не буду останавливаться на стандартных рассуждениях о том, что IPv4 адресов мало, о том, что NAT и прокси – это костыли, о том, что костыли пока работают, и никто не хочет переходить на IPv6, вместо этого – сразу к сути.
Читать дальше →
Всего голосов 39: ↑35 и ↓4+31
Комментарии42

SendVoice, или как услышать своего посетителя

Время на прочтение2 мин
Количество просмотров3.5K
Вопрос обратной связи для владельцев сайтов далеко не праздный… Ведь отклик от живой аудитории – посещающей ваш ресурс (независимо от тематики) и принимающей в его жизни непосредственное участие — дорогого стоит.

А теперь зададимся ещё одним вопросом: Что легче для вас: ПИСАТЬ или ГОВОРИТЬ?

Думается, что большинство ответит на него однозначно: говорить! Так за чем же дело стало? Тем более, что сегодня есть сервис SendVoice.ru.

image

Читать дальше →
Всего голосов 7: ↑5 и ↓2+3
Комментарии0

Пишем виртуальный буфер обмена на C#

Время на прочтение16 мин
Количество просмотров34K
VirtualClipBoard Очень много приходится работать с текстовыми данными, такими как код, статьи, посты и т.д. В то время когда жил под Linux — пользовался менеджерами истории буфера обмена, которые запоминали, то что попадало в виде текста в буфер и по клику в трее я мог вернуть нужное значение в буфер, не возвращаясь к источнику.
Недавно пришлось большую часть времени проводить в Windows, удовлетворяющей альтернативы для такого простого приложения я не нашел. Что-то в найденных вариантах не устраивало: не свободное ПО, много ненужного функционала (который просто мешал) или работали неудобно для меня (например: получить предыдущее значение буфера, приходилось открывать окно программы). Недолго думая решил сделать, так как мне хотелось.

Поскольку, приложение должно работать исключительно в Windows, было принято решение написать ее на C# — к тому же, никогда ранее на нем ничего не писал — появился повод попробовать.

Задача


  • Программа должна слушать и запоминать изменения в текстовом буфере обмена.
  • Через контекстное меню в трее или через окно программы по клику на выбранном элементе истории, нужное значение должно автоматически попадать назад в буфер.
  • История не должна пропадать после перезагрузки системы


Читать дальше →
Всего голосов 41: ↑35 и ↓6+29
Комментарии28

Информация

В рейтинге
Не участвует
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность