Как стать автором
Обновить
0
Иван & Иван @GKelpiread⁠-⁠only

Пользователь

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

Что сегодня авторы предлагают инвесторам? Разбор полетов

Время на прочтение4 мин
Количество просмотров819
Давно уже собирался отписаться по результатам инвестиционного предложения, но не оформлялась мысль. Вот пришла, благодаря этому посту, про ошибки соискателей на инвестиции.

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

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

Оптимизация Drupal

Время на прочтение17 мин
Количество просмотров30K
Вступление
Drupal – довольная распространённая CMS и это отложило на неё свой отпечаток – базовая поставка Drupal является не готовым решением для определённого вида сайта, а фундаментом для его создания. Существуют “сборки” на базе Drupal специализированные под определённые виды сайтов, например: новостные сайты. Но подобные сборки в данный момент мало распространены и плохо поддерживаются. В связи с этим при создании Интернет сайта на основе стандартной поставки Drupal используется большое количество готовых дополнительные модулей и тем оформления для Drupal, либо разрабатываются новые модули и темы специально для создаваемого Интернет сайта. Последним этапом работ по созданию сайта является его оптимизация, которую условно можно разбить на 4 шага:
  • встроенная оптимизация Drupal;
  • оптимизация Drupal с помощью модулей;
  • оптимизация конфигурации и обслуживания Drupal;
  • оптимизация сервера.

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

Организация распределенного дискового хранилища с возможностью неограниченного расширения с применением технологий LVM и ATAoE

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

Задача


Когда диски были маленькие, а Интернет большой, владельцы частных FTP-серверов сталкивались со следующей проблемой:
На каждом жестком диске создавалась папочка Video или Soft, и получалось так, что добавив новый жесткий диск, приходилось делать на нем папочки Video2, Soft2, etc.
Задача поменять жесткий диск на диск большего объема приводила к тому, что данные нужно было куда-то переносить, все это происходило нетривиально и с большими downtime'ами.
Разработанная нами система в 2005 году позволила собрать надежный и быстрый массив в 3 терабайта, масштабируемый, расширяемый, в режиме онлайн, добавляя диски или целые сервера с дисками.
Цена всего решения составляла 110% от стоимости самих дисков, т.е. по-сути, бесплатной, с небольшим overhead.

Вот примерная схема устройства нашего хранилища:


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

Самая маленькая игра в мире (58 байт)

Время на прочтение3 мин
Количество просмотров55K
Для тех, кто читал статью в песочнице: добавил раздел «Можно ли сделать игру меньше?».

Прочитав историю одного байта, вспомнил свою историю.

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

Первый прототип, размером 80 байт, был готов на следующий день. (Поскольку о контроле версий тогда я даже не догадывался, то остается верить воспоминаниям). С этого момента началась моя борьба за байты. Помню, довольно быстро размер был уменьшен до 65 (или около того), дальше каждый байт давался все с большим и большим трудом. К концу лета результат был 58 байт.

Сюжет и управление


Вы несетесь по трассе на грузовике с двумя прицепами. Слева от вас разделительная полоса, справа обочина укрытая травой. На дороге встречаются люди и деревья (может ямы). Ваша задача: не сбивать людей и не врезаться в деревья (не попадать в ямы).
Управление: стрелки влево-вправо — поворот; Esc — пауза.

Скриншоты и код

BlogEngine.NET 1.5. Русифицированная сборка с темами и расширениями

Время на прочтение5 мин
Количество просмотров2.4K
Собрал для себя дистрибутив блогового движка BlogEngine.NET (версия 1.5.0.7), готовый к развертыванию на хостинге за секунды и русифицированный так, как мне нужно (начиная от slug'ов до множества доработок перевода в спецфайле и самом коде, включая расширения), с различными расширениями и с большим пакетом тем, но подумал, что, возможно, еще кому-нибудь он пригодится.
Далее: для тех, кто не знает, что такое BlogEngine.NET и с чем ее едят — возможно, будет интересен рассказ о нем, для тех, кто «в теме» — список сделанных в движке изменений.

Что такое BlogEngine.NET?


BlogEngine.NET — это легкий и достаточно функциональный open-source движок для блогов, написанный с использованием технологии ASP.NET. Он может работать как с базами данных (Microsoft SQL, Microsoft SQL Express, MySQL), так и с XML-файлами в качестве хранилища (по умолчанию). При обычных размерах блога разницы в производительности не наблюдается.
Пример BlogEngine «из коробки» со стандартной темой — блог разработчика движка.
Читать дальше →

10 гигабайт под Silverlight-приложения бесплатно!

Время на прочтение3 мин
Количество просмотров1.3K
Как многие знают, недавно произошло значительное событие для Silverlight-разработчиков – выход третьей версии этой RIA-платформы. Описание всех нововведений Silverlight 3 занимает несколько страниц и послужит еще материалом для многих статей. Но в этой статье речь пойдет не об этом, а о сервисе Microsoft Silverlight Streaming, который предлагает вам 10 гигабайт бесплатного пространства для ваших silverlight-приложений!
Суть состоит в том, что уже через несколько минут после создания silverlight-приложения, вы можете воспользоваться удаленным хостингом для его поддержки. Вы можете вставлять ссылки на него в свои страницы и проекты, не нагружая свои серверы запросами и траффиком. Эдакий CDN для silverlight-приложений. Быстрый, простой и бесплатный!
Читать дальше →

AMQP по-русски

Время на прочтение4 мин
Количество просмотров109K
Сегодня довольно мало информации о протоколе AMQP (Advanced Message Queueing Protocol) и его применении, особенно на русском языке. А вообще это — замечательный, уже достаточно широко поддерживаемый открытый протокол для передачи сообщений между компонентами системы с низкой задержкой и на высокой скорости. При этом семантика обмена сообщениями настраивается под нужды конкретного проекта. Такие решения существовали и ранее, но это первый стандарт, для которого существует большое количество свободных реализаций.

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

Сегодня тема доставки информации в реальном времени является крайне актуальной (достаточно вспомнить хотя бы Twitter, Google Wave). И здесь системы передачи сообщений могут служить внутренним механизмом обмена данными, который обеспечивает доставку данных (изменений данных) клиентам.

Я не ставлю своей целью сегодня рассказать о том, как писать приложения для AMQP. Хочу лишь немного рассказать о том, что это совсем не страшно, не очень сложно, и действительно работает, хотя стандарт находится еще в развитии, выходят новые версии протокола, брокеров и т.п. Но это уже вполне production-quality. Расскажу лишь базовые советы, чтобы помочь “въехать” в протокол.
Читать дальше →

Использование OpenDNS для блокирования нежелательного контента в домашней сети

Время на прочтение2 мин
Количество просмотров28K
Решил написать после прочтения топика «imhonet.ru + opendns».

OpenDNSЭто маленькая заметка со скринами о возможностях сервиса OpenDNS, с которыми очень многие не знакомы из-за недостатка времени на регистрацию и чтение на английском.

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

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

www.askdev.ru — русский аналог stackoverflow.com

Время на прочтение3 мин
Количество просмотров3K
image
Хочу представить проект, который, с одной стороны, является русским аналогом stackoverflow.com и альтернативой форумам — с другой. Но почему же аналог, а не клон? И чем он отличается от форумов?
Эти и другие вопросы мне задавали не один раз — на них я и попробую ответить.

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

История двух нитей

Время на прочтение3 мин
Количество просмотров2.6K
На собеседовании в ИТ-компании было предложено ответить на следующий вопрос.

Задача. Дано такой код:

		static int counter = 0;

		void worker()
		{
			for (int i = 1; i <= 10; i++)
				counter++;
		}


Процедуру worker() запускают из двух нитей. Какое значение будет содержать переменная counter по завершении работы обеих нитей и почему?

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

Я не называю нити потоками, что бы не путать потоки выполнения (thread) и потоки данных (stream).

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

Мегапланирование

Время на прочтение1 мин
Количество просмотров1.2K
Мегапланирование
В Ворктреке с сегодняшнего дня появилась возможность планирования событий. События можно создавать на один день или на отрезок времени.
Также, можно создавать повторяющиеся события:
  • ежедневные, например, зарядка в 7 утра
  • еженедельные, французский по средам
  • ежемесячные, чистка аквариума в последний понедельник месяца
  • и ежегодные, дни рождения

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

Вещание видеофайлов с помощью VLC multicast

Время на прочтение2 мин
Количество просмотров10K
Помимо вещания спутниковых каналов, может возникнуть необходимость вещания файликов.

Вот мой пример Gentoo Linux + VLC
Читать дальше →

Коротко об основном

Время на прочтение2 мин
Количество просмотров16K
Так как открылся блог IPTV, то думаю стоит рассказать вначале что это такое, что я и постараюсь сделать. Сразу предупреждаю, что буду пытаться описать все на пальцах доступным языком :)
Читать дальше →

Курс молодого бойца cisco: искусство владения консолью

Время на прочтение3 мин
Количество просмотров46K
Введение: многие начинающие настройщики сетевого железа боятся консоли (CLI, Command Line Interface) как огня. Ещё бы: ни тебе всплывающих подсказок по наведенному мышиному курсору, ни тебе красивых картинок, а лишь непонятные буквы на черном (зеленом, белом) фоне. Боязно…

Однако, консоль является мощнейшим инструментом, не овладев которым называть себя настройщком cisco нельзя.

При помощи консоли можно:
1. Задать начальную конфигурацию.
2. Восстановить потерянные пароли (для разных железок по-разному. Но поиском на сайте cisco.com легко найти процесс по ключевым словам “password-recovery (название железки)” )
3. Настроить нестандартные топологии
4. Включить скрытые возможности
5. Проверить правильность настроек командами show
6. Отладить процесс командами debug

Помните: при помощи консоли можно всё, при помощи GUI – не всё, а только то, что запрограммировали и разрешили.

Как же овладеть искусством быстрой настройки через консоль?

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

Задачка на мультикаст с маршрутизаторами cisco

Время на прочтение1 мин
Количество просмотров7.8K
По материалам 5ой Российской Олимпиады cisco, где мне довелось проучаствовать в придумывании и тестировании задачек для финалистов, родилась такая непростая задачка:

Рассмотрим простейшую схему:

image

есть маршрутизатор cisco, за одним интерфейсом расположен компьютер с программой, принимающей потоковую передачу (например, VLC Player), за другим — передающая станция, вещающая поток (например, видео) на некоторый мультикастовый адрес.

Вы можете менять мультикастовый адрес потока, на который вещает сервер.

Задача1: можно ли заставить компьютер принять поток, не прибегая к мультикастовой машрутизации?
Задача2: можно ли заставить принять поток с условием, что вы вообще не знаете, что такое мультикаст, как работает и как настраивается?

ЗЫ Эту нетипичную задачку (второй вариант) из 30 человек решили 1.5 человека. Интересно, решите ли вы, ведь ваш уровень существенно выше CCNA, к коим относятся все участники Олимпиады.

ЗЫ Если вы желаете высказаться, но являетесь лишь читателем habra, заходите на форум на сайте www.anticisco.ru, где в разделе «Задачки на сообразительность» она продублирована. Регистрация на сайте простая.

Multicast routing для IPTV

Время на прочтение8 мин
Количество просмотров224K
Один очень близкий мне человек, поклонник Хабра, захотел внести вклад в развитие блога Cisco. Являясь яростным поклонником того, что создает эта корпорация, он захотел поделиться опытом. =) Надеемся росчерк пера удался.

Относительно недавно мне посчастливилось познакомить и даже поконфигурять multicast routing для IPTV. Изначально, я с этой темой была совершенно не знакома, и это заставило меня вылакать горлышко от цистерны водки перекопать огромное количество документации, чтобы войти в курс дела.

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

Мне не удалось обнаружить такую статью. Это побудило меня написать эту статейку для тех, кто также как и я столкнется с вопросом, что это за зверь IPTV и как с ним бороться.
Я хочу смотреть IPTV

Вещание видеофайлов с помощью VLC multicast. С теорией.

Время на прочтение4 мин
Количество просмотров55K
По просьбам переписываю статью с добавлением теоретический знаний. Итак, пара определений:
Читать дальше →

Язык программирования Форт

Время на прочтение5 мин
Количество просмотров33K
Первая реакция у многих людей, с которыми мне приходилось говорить о Форте: «Это, наверное, разновидность Фортрана?». К сожалению, уровень осведомленности околокомпьютерного сообщества насчет этого совершенно непохожего на остальные языка программирования достаточно низок. В этой статье мы попробуем разобраться с тем, что представляет собой Форт, и почему этот язык программирования не используется повсеместно.

Окунемся в историю Форта (Forth). В начале 1970х годов Чарльз Мур занялся разработкой программного обеспечения для микроЭВМ, управляющей работой радиотелескопа. Поскольку программирование на Ассемблере привело к неуправляемости разработки довольно сложной программы, а для использующейся микроЭВМ из-за аппаратных ограничений не было языка высокого уровня, Чарльз Мур приступил к созданию компактного и мощного языка программирования, позволившего с блеском решить поставленные перед ним задачи. Успех нового языка программирования определился тем, что на ограниченных ресурсах устройства была создана быстрая и функциональная программа, позволившая делать намного больше, чем первоначально планировалось в техническом задании.

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

Перевод: эффективный способ работы с памятью в Compact Framework

Время на прочтение5 мин
Количество просмотров1.2K
Оригинал статьи находится в блоге Роба Тиффани.

Кто-нибудь ещё помнит старые добрые времена DOS, когда мы проводили время, пытаясь выжать более 640Кб для драйверов, программ, резидентов и даже Windows? Такие вещи как QEMM, HIMEM, EMM386.EXE пробуждают у меня теплые воспоминания.

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

Программирование для мобильных платформ (КПК)

Время на прочтение4 мин
Количество просмотров5K
Введение.
Сейчас КПК и другие мобильные прибамбасы есть уже наверное у каждого десятого. То есть у многих. А раз есть КПК — значит, нужны и программы к ним ). Также очень часто встречается ситуация, что нужная программка для наладонника есть, но она платная). А еще может быть, что Вам самим захочется добавить какие-нибудь функции для Вашего любимого девайса. В этом Вам поможет наш небольшой обзор. Писать будем на языке С# в всенародно любимой Visual Studio 2005. Вы увидите, что писать такие приложения совсем несложно и процесс не очень отличается от написания программ для обычных компьютеров x86.
Читать дальше

Информация

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