Pull to refresh
19
0
Сергей @wapmorgan

User

Send message

Сети для самых маленьких. Часть нулевая. Планирование

Reading time7 min
Views2.1M
Это первая статья из серии «Сети для самых маленьких». Мы с товарищем thegluck долго думали с чего начать: маршрутизация, VLAN'ы, настройка оборудования.
В итоге решили начать с вещи фундаментальной и, можно сказать, самой важной: планирование. Поскольку цикл рассчитан на совсем новичков, то и пройдём весь путь от начала до конца.

Предполагается, что вы, как минимум читали о эталонной модели OSI (то же на англ.), о стеке протоколов TCP/IP (англ.), знаете о типах существующих VLAN’ов (эту статью я настоятельно рекомендую к прочтению), о наиболее популярном сейчас port-based VLAN и о IP адресах (более подробно). Мы понимаем, что для новичков «OSI» и «TCP/IP» — это страшные слова. Но не переживайте, не для того, чтобы запугать вас, мы их используем. Это то, с чем вам придётся встречаться каждый день, поэтому в течение этого цикла мы постараемся раскрыть их смысл и отношение к реальности.

Схема сети

Начнём с постановки задачи. Есть некая фирма, занимающаяся, допустим, производством лифтов, идущих только вверх, и потому называется ООО «Лифт ми ап». Расположены они в старом здании на Арбате, и сгнившие провода, воткнутые в пожжёные и прожжёные коммутаторы времён 10Base-T не ожидают подключения новых серверов по гигабитным карточкам. Итак у них катастрофическая потребность в сетевой инфраструктуре и денег куры не клюют, что даёт вам возможность безграничного выбора. Это чудесный сон любого инженера. А вы вчера выдержали собеседование и в сложной борьбе по праву получили должность сетевого администратора. И теперь вы в ней первый и единственный в своём роде. Поздравляем! Что дальше?
Читать дальше →

Почему программисты работают по ночам

Reading time3 min
Views108K
Мозг шимпанзе в лондонском музее наукиСогласно поговорке, программисты — это устройства, преобразующие кофеин в код.

Если спросить первого попавшегося программиста, когда он наиболее продуктивен, — скорее всего, он назовёт ночь. Кто-то пораньше, кто-то попозже. Популярен вариант встать в 4 утра и сделать работу до начала дневной суматохи. А некоторые предпочитают ложиться в 4 утра.

Цель всего этого — избавиться от отвлекающих факторов. Но можно было бы просто закрыть дверь… Что же такого особенного в ночи?

Я думаю, что всё сводится к трём вещам: расписанию творца, сонному мозгу, и яркому экрану компьютера.

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

Тёмная сторона ContentProvider'ов

Reading time2 min
Views13K
ContentProvider — класс Android для обмена данными между приложениями. Именно так и написано в явадоках: A content provider is only required if you need to share data between multiple applications. Но кто же читает документацию, пока всё работает? Очевидно, только тот, кто набил достаточно шишек, наступая на всевозможные грабли.

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

Channel.me → совместный просмотр сайтов

Reading time2 min
Views5.3K
Внезапно, у меня возникла задача выбрать товары в интернет-магазине вместе с сестрой. Казалось бы всё просто, только вот сестра находится на 800 км вдали от меня.

Кидать ссылки друг другу или шарить один из рабочих столов я посчитал неэффективным. Но нашёлся революционный сервис, который похож на Google Docs, но только для совместного посещения сайтов — Channel.me.



Ближе к делу: демо-канал для хабрапользователей | демо-канал №2
Комментарий от создателей по поводу хабра-эффекта в демо-канале:
The demo-channel is a bit crowded… Looks more like a stress test :-)
Our virtual server is running at 160% and with 20Mb/s traffic… cool!

Далее чуть-чуть текста, скриншот и ссылки на расширения

Битовые операции в PHP на примерах

Reading time3 min
Views89K
Навеяно статьей об обработке критических ошибок в PHP. Обратил внимание, что несмотря на то, что коды ошибок в PHP специально заточены под битовые операции, тем не менее, что в примерах статьи, что в комментариях, для проверки кодов ошибок используются обычные операторы сравнения.

Например, встречались такие варианты:
if ($error['type'] == E_ERROR || $error['type'] == E_PARSE || $error['type'] == E_COMPILE_ERROR){…}
или
if(in_array($error['type'], array(E_ERROR, E_PARSE,  E_COMPILE_ERROR)) {…}

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

CINEMA 3D — технологические особенности и возможности применения

Reading time5 min
Views87K
Привет всем!

Сегодня мы расскажем вам, друзья, про передовую технологию от LG Electronics – CINEMA 3D. Наши разработчики – LG Display – называют ее «пассивной» 3D-технологией. Почему?
Читайте дальше.

image

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

По следам разрушителей мифов или Почему Android тормозит, а %мобильная ОС% нет?

Reading time10 min
Views175K


Добрый день, Хабр!

Мой предыдущий перевод статьи про аппаратное ускорение в Android вызвал бурное обсуждение в комментариях, основным мотивом которого был вопрос «так почему же тормозит Android?». Аналогичная ситуация наблюдается по всему интернету, и потому я привожу ниже еще один очень интересный и свежий перевод (снова из Google+), где автор Andrew Munn (о нем ниже) анализирует настоящие причины тормозов Android. С удовольствием прочитал этот пост сам и горд возможностью первым поделится им с хабрасообществом.

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

Зачем программисту читать художественную литературу

Reading time1 min
Views10K
Меня искренне удивляют высказывания многих моих друзей о том, что чтение художественной литературы является пустой и бесполезной тратой времени. Они считают, что лучше изучить новую технологию, чем провести вечер с хорошей книгой.
Читать дальше →

Система настроек и смена версий программ: эволюция жизнеспособных форм

Reading time20 min
Views3.8K
Константно-переменный дуализм.

Настройки у программ существуют давно, от самых древних ассемблерных программ, имеющих в своём коде константы в качестве настроек. Обновление таких программ происходило с полной заменой кода, поэтому изменение системы настроек не влекло отрицательных последствий. В худшем случае, приходилось переучиваться пользованию интерфейсом. Положение стало меняться при преемственности типов данных и настроек программ. В своё время Microsoft уделяла огромное внимание совместимости программ и данных в операционных системах, в чём была их сильная сторона. Да и сейчас поддержка режима XP Mode — это продолжение политики совместимости. Применительно к веб, пользователям часто встречаются ситуации, когда данные и настройки у них остаются от прежних версий (в куках, в сторонних базах данных), а версия программы — на сервере или скрипт на клиенте — изменяется. Возникает проблема совместимости версий программ и данных и необходимость выработки некоторой политики поддержки совместимости. Новая версия может не устроить по совместимости с браузерами (из-за багов или неполной поддержки), тогда откат к прежней на время исправления багов не должен сопровождаться потерей или искажением настроек, при том, что количество их может меняться с изменением версии.

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

Семантическое управление версиями 1.0.0-rc.1

Reading time6 min
Views17K
В мире разработки программного обеспечения, существует страшное место, называемое «ад зависимостей». Чем больше ваша система, тем больше шанс, что в один из дней вы попадете в эту ловушку.

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

Как распоряжаться своими идеями

Reading time4 min
Views929
это КДПВМанера жестикулировать, сильно подвижная мимика лица и огонь в глазах выдавали взволнованность этого, ещё молодого человека. Те, кто умеют рассказывать о человеке по его внешнему виду и поведению, отметили бы, что однодневная щетина хоть и не портит его, но все же получила отгул от бритвы. Джинсы одеты лишь потому, что они практичны, а нацепленный на сорочку бейдж бесполезен под закрывающей его полой пиджака. Те, кто послушают его, могут сказать, что этот молодой человек охвачен идеей, он верит в неё и верит в то, что она должна стать успешной. Эксперт венчурной компании сказал бы, что он всего лишь один из многих, чьи «идеи на миллион» лишь блестят, не являясь золотом. А кто-то, совсем не выделяющийся, скажет через пару десятков лет, давая интервью в своем кожаном кресле, что хорошая идея обязательно приходит в несколько голов одновременно, и скромно заметит как он рад, что у него получилось пройти тернистый путь, прежде чем добиться сегодняшнего успеха. Но о том, где подслушал идею он никогда никому не скажет.

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

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

читать эти лаконичные мысли

Слава 1809 — как разбираются наручные часы и из чего состоят

Reading time1 min
Views40K
image

На канале GTV дебютируют новые устройства — наручные часы. Сегодня предлагаем посмотреть: как разбираются и из чего устроен механизм наручных часов — Слава 1809.

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

Канал GTV: Документальный фильм про Стива Джобса и NEXT. 1986г. (русский перевод)

Reading time1 min
Views9.6K
Документальный фильм про Стива Джобса и его стартап, компанию NEXT, которую он основал после ухода из Apple. Фильм снят в 1986 году. Перевод на русский язык — канал GTV.

imageimageimageimage

Приятного всем просмотра!
Читать дальше →

Оптимизация запросов MySQL с использованием пользовательских переменных

Reading time14 min
Views66K
Введение. В современном мире существует большое количество задач, в рамках которых приходится обрабатывать большие массивы однотипных данных. Яркими примерами являются системы для анализа биржевых котировок, погодных условий, статистики сетевого трафика. Многие из этих систем используют различные реляционные базы данных, в таблицах которых содержатся такие объемы данных, что правильное составление и оптимизация запросов к этим таблицам становится просто необходимым для нормального функционирования системы. В этой статье описаны методы решения ( и сравнительные временные характеристики используемых методов ) нескольких задач по получению данных из таблиц СУБД MySQL, содержащих статистику о проходящем через маршрутизаторы одного из крупных российских сетевых провайдеров сетевом трафике. Интенсивность потока данных, поступающего с главного маршрутизатора такова, что ежесуточно в таблицы базы данных используемой системы мониторинга сетевого трафика поступает в среднем от 400 миллионов до миллиарда записей, содержащих информацию о транзакциях TCP/IP (рассматриваемый маршрутизатор экспортирует данные по протоколу netflow). В качестве СУБД для системы мониторинга используется MySQL.
Читать дальше →

PHP: Расширенный текучий интерфейс

Reading time5 min
Views3.8K
Уверен, что многим из вас, кто читает этот текст, знакомо понятие Текучий интерфейс. И даже если вы про него не слышали, уверен, что вы им пользовались и не раз. Это действительно удобно. Так о чем же идет речь?

<?php 

class Images {
	
	public $width;
	
	public $height;
	
	public function SetWidth($value) {
		$this->width = $with;
		return $this;
	}
	
	public function SetHeight($value) {
		$this->height = $value;
		return $this;
	}
	
}

$images = new Images();
$images->SetWidth(100)->SetHeight(100);

?>


Вот небольшой пример. Мы можем в строчку, последовательно, производить действия. Этот же принцип лежит в основе популярной библиотеки jQuery. Да что тут говорить, все современные фреймворки изобилуют подобными конструкциями. А вот что если использовать подобный механизм для построения всего сайта?

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

Курс философии для студентов ИТ-специальностей: каким он должен быть?

Reading time3 min
Views13K
Не так давно на хабре появились две весьма интересные дискуссии по проблемам подготовки ИТ-специалистов в современных российских вузах(1 и 2). Участники этих дискуссий критикуют отечественную систему высшего образования, так как она (1) очень сильно оторвана от реальной практики и (2) перегружена общеобразовательными предметами.
Очень многие негативно высказываются о существующей в отечественных вузах практике преподавания философии. Как человек, философию преподававший и проработавший на соответствующей кафедре почти 10 лет, не могу не признать, что столь резкая критика вполне обоснована и справедлива. Во многих российских вузах преподавание философии далеко не соответствует требованиям сегодняшнего дня. Ниже я попытаюсь предложить конструктивное решение проблемы и изложить свои соображения по поводу того, как сделать курс философии интересным для технарей вообще и ИТ-специалистов в частности.
Читать дальше →
12 ...
27

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity