Как стать автором
Обновить
19
0
Сергей @wapmorgan

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

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

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

Время на прочтение8 мин
Количество просмотров15K
Последние две недели были особенно плодотворны темами, посвящёнными изучению IT в школе, в университете и самостоятельно. Интересен разброс мнений: от «обязательно идите в вуз, впитывайте знания, получайте корочку» до «ничему вас там не научат, лучше идите в индустрию и учитесь у старших коллег». Как действующий университетский преподаватель я, конечно, буду ратовать за вузовское образование, но с большими дополнениями и оговорками. Именно этим дополнениям и оговоркам хочется посвятить отдельную статью, надеюсь, небесполезную для интересующихся школьников и студентов, и способствующую целостному взгляду на образовательный процесс в нашей любимой области.
Читать дальше →
Всего голосов 96: ↑87 и ↓9+78
Комментарии148

Coder vs. Developer vs. Engineer — а какой Job Title у тебя, %username%?

Время на прочтение12 мин
Количество просмотров70K
Computer Scientist, Software Engineer и Coder заходят в бар.
— О, а вот и программисты! — окликает их бармен...


Я знаю людей, которые программируют уже не один десяток лет, но обижаются, когда их называют "программистами". А по запросу Coder vs Developer vs Software Engineer в гугле находится 113 000 000 ссылок: 1 2 3 4 5 6 7 8 9 … 113 000 000. Что интересно, можно найти совершенно противоположные мнения об одном и том же. С чем-то я согласен, а с чем-то в корне нет.

Последние же несколько лет так вообще постоянно подливают масло в огонь, появляются какие-то совсем странные программисты, которые называют себя Creative Technologist, Creative Coder и Interactive Developer.

Давайте же попробуем разобраться.
Читать дальше →
Всего голосов 148: ↑132 и ↓16+116
Комментарии129

Топ-5 самых впечатляющих книг, которые должен прочесть каждый разработчик ПО

Время на прочтение3 мин
Количество просмотров380K
Не так давно промелькнула ссылка на достаточно свежее (осень 2011) англоязычное голосование со скромным названием "самая впечатляющая книга, которую должен прочесть каждый разработчик программного обеспечения" и описанием:

Если бы вы могли вернуться в прошлое, к самому началу своей карьеры разработчика и сказать самому себе: «прочитай именно эту книгу», в самой начале своей карьеры разработчика, какую бы книгу вы рекомендовали?

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

Однако в данном небольшом посте я возьму на себя смелость перечислить ТОП-5 тех самых книг, победивших в голосовании, переведенных на русский язык. И дать небольшие комментарии, ведь книги действительно этого достойны. Да, лично я бы поменял некоторые места, однако положимся на «мнение зала» ресурса Stack Overflow.
Читать дальше →
Всего голосов 236: ↑219 и ↓17+202
Комментарии182

Взгляд изнутри: Flash-память и RAM

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

Предисловие


Новый Год – приятный, светлый праздник, в который мы все подводим итоги год ушедшего, смотрим с надеждой в будущее и дарим подарки. В этой связи мне хотелось бы поблагодарить всех хабра-жителей за поддержку, помощь и интерес, проявленный к моим статьям (1, 2, 3, 4). Если бы Вы когда-то не поддержали первую, не было и последующих (уже 5 статей)! Спасибо! И, конечно же, я хочу сделать подарок в виде научно-популярно-познавательной статьи о том, как можно весело, интересно и с пользой (как личной, так и общественной) применять довольно суровое на первый взгляд аналитическое оборудование. Сегодня под Новый Год на праздничном операционном столе лежат: USB-Flash накопитель от A-Data и модуль SO-DIMM SDRAM от Samsung.

Чудеса начинаются...
Всего голосов 60: ↑59 и ↓1+58
Комментарии37

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

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

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

Схема сети

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

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

Время на прочтение3 мин
Количество просмотров108K
Мозг шимпанзе в лондонском музее наукиСогласно поговорке, программисты — это устройства, преобразующие кофеин в код.

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

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

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

Читать дальше →
Всего голосов 300: ↑270 и ↓30+240
Комментарии287

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

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

Итак, в этой заметке я хотел бы поделиться своим негативным опытом использования ContentProvider'ов в качестве источника данных внутри приложения. Почему же собственно их использование для доступа к данным внутри программы неоправданно?
Читать дальше →
Всего голосов 12: ↑7 и ↓5+2
Комментарии7

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

Время на прочтение2 мин
Количество просмотров5.2K
Внезапно, у меня возникла задача выбрать товары в интернет-магазине вместе с сестрой. Казалось бы всё просто, только вот сестра находится на 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!

Далее чуть-чуть текста, скриншот и ссылки на расширения
Всего голосов 90: ↑80 и ↓10+70
Комментарии62

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

Время на прочтение3 мин
Количество просмотров88K
Навеяно статьей об обработке критических ошибок в 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)) {…}

В связи с этим решил написать небольшую статью о битовых операциях с примерами их использования.
Читать дальше →
Всего голосов 242: ↑203 и ↓39+164
Комментарии162

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

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

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

image

Читать дальше →
Всего голосов 15: ↑10 и ↓5+5
Комментарии28

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

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


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

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

Читать дальше →
Всего голосов 242: ↑212 и ↓30+182
Комментарии245

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

Время на прочтение1 мин
Количество просмотров10K
Меня искренне удивляют высказывания многих моих друзей о том, что чтение художественной литературы является пустой и бесполезной тратой времени. Они считают, что лучше изучить новую технологию, чем провести вечер с хорошей книгой.
Читать дальше →
Всего голосов 202: ↑165 и ↓37+128
Комментарии268

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

Время на прочтение20 мин
Количество просмотров3.7K
Константно-переменный дуализм.

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

Требуется подход не просто к настройкам и их организации, а к проблемам смены версий и преемственности настроек. Программы в вебе развиваются мелкими шагами, смена версий происходит часто. Такой же подход к работе с настройками относится и к другим программам, не связанным с вебом, но имеющим частую смену версий. Аналогичные рассуждения можно отнести к форматам всех данных в программах, не только к форматам хранения настроек.
Читать дальше →
Всего голосов 37: ↑33 и ↓4+29
Комментарии2

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

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

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

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

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

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

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

читать эти лаконичные мысли
Всего голосов 43: ↑29 и ↓14+15
Комментарии15

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

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

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

Читать дальше →
Всего голосов 43: ↑38 и ↓5+33
Комментарии38

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

Время на прочтение1 мин
Количество просмотров9.6K
Документальный фильм про Стива Джобса и его стартап, компанию NEXT, которую он основал после ухода из Apple. Фильм снят в 1986 году. Перевод на русский язык — канал GTV.

imageimageimageimage

Приятного всем просмотра!
Читать дальше →
Всего голосов 170: ↑142 и ↓28+114
Комментарии51

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

Время на прочтение14 мин
Количество просмотров66K
Введение. В современном мире существует большое количество задач, в рамках которых приходится обрабатывать большие массивы однотипных данных. Яркими примерами являются системы для анализа биржевых котировок, погодных условий, статистики сетевого трафика. Многие из этих систем используют различные реляционные базы данных, в таблицах которых содержатся такие объемы данных, что правильное составление и оптимизация запросов к этим таблицам становится просто необходимым для нормального функционирования системы. В этой статье описаны методы решения ( и сравнительные временные характеристики используемых методов ) нескольких задач по получению данных из таблиц СУБД MySQL, содержащих статистику о проходящем через маршрутизаторы одного из крупных российских сетевых провайдеров сетевом трафике. Интенсивность потока данных, поступающего с главного маршрутизатора такова, что ежесуточно в таблицы базы данных используемой системы мониторинга сетевого трафика поступает в среднем от 400 миллионов до миллиарда записей, содержащих информацию о транзакциях TCP/IP (рассматриваемый маршрутизатор экспортирует данные по протоколу netflow). В качестве СУБД для системы мониторинга используется MySQL.
Читать дальше →
Всего голосов 82: ↑74 и ↓8+66
Комментарии19

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

Время на прочтение5 мин
Количество просмотров3.7K
Уверен, что многим из вас, кто читает этот текст, знакомо понятие Текучий интерфейс. И даже если вы про него не слышали, уверен, что вы им пользовались и не раз. Это действительно удобно. Так о чем же идет речь?

<?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. Да что тут говорить, все современные фреймворки изобилуют подобными конструкциями. А вот что если использовать подобный механизм для построения всего сайта?

Читать дальше →
Всего голосов 61: ↑42 и ↓19+23
Комментарии36

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

Время на прочтение3 мин
Количество просмотров13K
Не так давно на хабре появились две весьма интересные дискуссии по проблемам подготовки ИТ-специалистов в современных российских вузах(1 и 2). Участники этих дискуссий критикуют отечественную систему высшего образования, так как она (1) очень сильно оторвана от реальной практики и (2) перегружена общеобразовательными предметами.
Очень многие негативно высказываются о существующей в отечественных вузах практике преподавания философии. Как человек, философию преподававший и проработавший на соответствующей кафедре почти 10 лет, не могу не признать, что столь резкая критика вполне обоснована и справедлива. Во многих российских вузах преподавание философии далеко не соответствует требованиям сегодняшнего дня. Ниже я попытаюсь предложить конструктивное решение проблемы и изложить свои соображения по поводу того, как сделать курс философии интересным для технарей вообще и ИТ-специалистов в частности.
Читать дальше →
Всего голосов 79: ↑62 и ↓17+45
Комментарии141
12 ...
26

Информация

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