Обновить
432
0
Ershov Aleksandr@Cord

Lead SEM API Developer, Team Lead

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

Балмер едет в Москву

Время на прочтение1 мин
Охват и читатели491
Однаждый Стив Балмер просматривал список ближайших конференций и увидел слово «Москва». Он соединился с секретаршей:
— Мэри, а что у меня за поездка в Москву? Там ведь правят медведи?
— Да, господин Балмер.
— Хм, — призадумался Балмер, потом добавил — Хорошо, приготовь мне кофе, — и отключился.

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

см. альтернативный финал DileSoft

Притча о двух волках

Время на прочтение1 мин
Охват и читатели626
Когда-то давно старый индеец открыл своему внуку одну жизненную истину.
В каждом человеке идет борьба, очень похожая на борьбу двух волков. Один волк представляет зло — зависть, ревность, сожаление, эгоизм, амбиции, ложь… Другой волк представляет добро — мир, любовь, надежду, истину, доброту, верность…

Маленький индеец, тронутый до глубины души словами деда, на несколько мгновений задумался, а потом спросил: — А какой волк в конце побеждает?

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

Духовные ценности

Время на прочтение1 мин
Охват и читатели738
Когда-то давным-давно на Земле был остров, на котором жили все духовные ценности.
Но однажды они заметили, как остров начал уходить под воду. Все ценности сели на свои корабли и уплыли.

На острове осталась лишь Любовь. Она ждала до последнего, но когда ждать уже стало нечего, она тоже захотела уплыть с острова. Тогда она позвала Богатство и попросилась к нему на корабль, но Богатство ответило:
– На моем корабле много драгоценностей и золота, для тебя здесь нет места.

Когда мимо проплывал корабль Грусти она попросилась к ней, но та ей ответила:
– Извини, Любовь, я настолько грустная, что мне надо всегда оставаться в одиночестве.
Читать дальше →

Основы мастерства

Время на прочтение6 мин
Охват и читатели1.7K

Боритесь со сложностью


Как известно, мозг человека может одновременно рассматривать 7±2 элемента. Поэтому очень важно стремиться к снижению сложности ПО. Вот некоторые конкретные рекомендации:
  • Разделите систему на подсистемы на уровне архитектуры, чтобы концентрироваться в каждый конкретный момент времени на меньшей части системы.
  • Тщательно определяйте интерфейсы классов, чтобы можно было игнорировать
    внутреннее устройство классов.
  • Поддерживайте абстракцию, формируемую интерфейсом класса, чтобы не
    запоминать ненужных деталей.
  • Избегайте глобальных данных, потому что их использование значительно увеличивает процент кода, который нужно удерживать в уме в любой момент
    времени.
  • Избегайте глубоких иерархий наследования, потому что они предъявляют
    высокие требования к интеллекту.

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

Личность программиста

Время на прочтение5 мин
Охват и читатели38K
«Чтобы стать экспертом в практической или научной области, нужны огромный труд и долгое время. Если человек добросовестно трудится каждый час рабочего дня, когда-нибудь он проснется одним из самых компетенткых специалистов своего поколения.»
Ульям Джеймс


Мы с вами много говорим о том, как нужно строить архитектуру ПО, как следует выбирать имена для переменных, каким образом лучше документировать код и почему, и т.д.

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

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

Бессонная ночь

Время на прочтение1 мин
Охват и читатели610
Сегодня я в гостях у незнакомки.

Начинаю исследовать ее тело. Сначала робко, но постепенно волнение уходит, и я действую все увереннее и напористее. Я ощущаю, как начинаю чувствовать ее. Она постанывает все чаще и чаще.

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

Уже близко… и вот, свершилось! Она страстно и продолжительно стонет. И вдруг замолкает. В этой блаженной тишине, нам не нужно слов, мы и так понимаем друг друга.

Я исправил в ней баг, и закрываю профайлер. Уже светает. Можно заснуть.

Задача о придворных.

Время на прочтение1 мин
Охват и читатели1.3K
Король не доверяет своим придворным. Он составил полный список всех придворных и приказал каждому из них следить за кем-нибудь одним из остальных. При этом, первый придворный из списка следит за тем, кто следит за вторым. Второй следит за тем, кто следит за третьим, и так далее. Предпоследний следит за тем, кто следит за последним. Последний следит за тем, кто следит за первым.

Вопрос: четное или нечетное число придворных у короля?

Комментировать или не комментировать?

Время на прочтение6 мин
Охват и читатели1.4K
«Ясно, что на некотором уровне комментарии должны быть полезны. Думать иначе означало бы полагать, что понятность программы не зависит от того, сколько информации о ней уже известно читающему программу человеку. Б. Шейл.»
Действующие лица:
ФРАСИМАХ Неопытный пурист теории, который верит всему, что читает.
КАЛЛИКЛ Закаленный в боях представитель старой школы — «настоящий»
программист.
ГЛАВКОН Молодой, самоуверенный, энергичный программист.
ИСМЕНА Опытная разработчица, уставшая от громких обещаний и просто
желающая найти несколько работающих методик.
СОКРАТ Мудрый опытный программист.

Мизансцена:
Завершение ежедневного собрания группы
— Желает ли кто-то обсудить еще что-нибудь, прежде чем мы вернемся к работе? — спрашивает Сократ.
— Я хочу предложить стандарт комментирования для наших проектов, — говорит расимах. — Некоторые наши программисты почти не комментируют свой код, а всем известно, что код без комментариев нечитаем.
— Ты, должно быть, еще менее опытен, чем я думал, — отвечает Калликл. — Комментарии — это академическая панацея, и любому, кто писал реальные программы, известно, что комментарии затрудняют чтение кода, а не облегчают. Естественный язык менее точен, чем Java или Visual Basic, и страдает от избыточности, тогда как операторы языков программирования лаконичны и попадают в самое яблочко. Если кто-то не может написать ясный код, разве ему удастся написать ясные комментарии? Кроме того, комментарии устаревают при изменениях кода.
Доверяя устаревшим комментариям, ты сам себе роешь яму.
Читать дальше →

Конструирование ПО, метафоры, предварительные требования

Время на прочтение15 мин
Охват и читатели10K

Пробный топик, представляет собой нарезку основных абзацев из книги из первой главы. Объем ужат в 4 раза, последовательность изложения и смысл по возможности сохранены. Очень приветствуется фидбэк.

Почему именно абзацы из книги, а не своими словами? Потому что во многих случаях сказать лучше очень сложно. И потом, чистые тезисы читать скучно — надоедает на второй странице.
Если топик понравится — готов стараться описать в статьях всю книгу, с каждым разом все уменьшая объем и увеличивая плотность информации.

Конструирование ПО


Что такое конструирование ПО?


Разработка ПО — непростой процесс, который может включать множество компонентов. Вот какие составляющие разработки ПО определили ученые за последние 25 лет:
— определение проблемы;
— выработка требований;
— создание плана конструирования;
— разработка архитектуры ПО, или высокоуровневое проектирование;
— детальное проектирование;
— кодирование и отладка;
— блочное тестирование;
— интеграционное тестирование;
— интеграция;
— тестирование системы;
— корректирующее сопровождение.

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

Анонс блога

Время на прочтение1 мин
Охват и читатели818
Создал блог после опроса, готовлю статьи-конспекты «Совершенного кода» Макконнелла.

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

Присоединяйтесь, читайте, пишите!

Классные онлайн-игрушки

Время на прочтение1 мин
Охват и читатели526
Есть немало классных игрушек онлайн.
К сожалению, не доводилось видеть хорошего списка. Предлагаю создать таковой.

Вот несколько любимых:
  • Dolphin Olympics. Позволяет выделывать классные финты дельфином.Tower Desktop. Построение лабиринтов из башен для потоков врагов. Сильная игрушка, в нее играют тысячи.
    Очень милая игрушка для успокоения нервов «Поддержи оленя», классно нарисовано: http://vvw.ru/foto2007/november/08/oleni.html
    Для разминки мозгов — набор головоломок: http://vvw.ru/foto2007/november/02/game.html
    И приколка на удержание квадрата от соприкосновения с четырьмю другими (проверка реакции): http://www.wwk.kiev.ua/squares.html

Связь кармы и рейтинга топиков

Время на прочтение1 мин
Охват и читатели669
Карма новая = Карма старая + (рейтинг топика/порядок рейтинга)*(случайное число на основе текущей кармы от 1 до 5)
пример
47 + (76/100)*4 = 50,04

Информация

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