Верхняя записьПриветствую Вас!
Нейтраль
[info]pavel_koryagin

Приветствую всех впервые заглянувших ко мне. Вот, пожалуйста, ответы на частые вопросы:

О чём этот журнал? Здесь разбираю типичные ошибки программистов (особенно Веб-программистов) и публикую задачки на ту же тему. В этом журнале я не пишу в стиле «Литдыбр», только по делу.

Если я Вас зафрендил, что это значит? Это значит, что я хочу читать Ваш журнал. К френженью я отношусь как к RSS-читалке. Знаю, что другие воспринимают это как-то иначе, но я — так.

С уважением, Павел Корягин. pavel@koryagin.com


Короткие пути
Нейтраль
[info]pavel_koryagin

Я, наконец, нашёл кое-какое разрешение для противоречия о ценности и вреде коротких путей. Удалось развести ценность и вред по разным ситуациям:

 

- Не надо выбирать короткий путь в обучении. В обучении лучше вообще путей по-максимуму попробовать, сколько лезет.

 

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


Я хочу, чтобы мои люди росли, команда развивалась
Нейтраль
[info]pavel_koryagin
Я хочу набрать таких людей, которые могут и хотят учиться. Так все говорят, но я сейчас конкретизирую.

Я набираю тех, кто работет в мейнстриме: PHP+JS+MySQL — от этого мы никуда не уйдём. Трудно найти человека с другим опытом. Но при этом мы должны внедрять современные технологии, чтобы апгрейдить свои бизнес-процессы и свои скиллы. Внедрять технологичные фреймворки (или производить их; Nette видели? мне нравится), внедрять SASS, HAML, CoffeScript.

В моём видении бэкенд-программисты должны расти в сторону Erlang и/или Go (я думал о сайтах на C++, но сейчас появился Go, лишённый родовой травмы C/C++ в виде header-файлов, которые уже много лет не дают разогнать его компиляцию до мгновенной).

Фронтенд — CoffeScript + jQuery и ExtJS. Посмотреть на Dart. Здесь jQuery является тем местом, где в мейнстрим попало нечто, что уже сейчас прекрасно и ещё много лет будет нас радовать.

Верстальщики должны расти в сторону прокачки способностей к самостоятельному построению грамотного дизайна (а не только резки) и фреймворкам, вроде Twitter Bootstrap. С поддержкой всех устройств, поисковых ботов, незрячих людей и graceful degradation. И всё это на лету, без явного требования и контроля со стороны менеджера.

С этого нельзя начать. Но к этому можно легко и главное с удовольствием прийти от мейнстримных технологий.

Почему нельзя начать? Вы можете изучить любую из этих технологий в качестве первой, но Вас никто с этим не возьмёт на работу. А необходимой интенсивности опыт получают только там.
Метки:

Как научиться делать сайты методом тыка
Нейтраль
[info]pavel_koryagin
Вопрос:
Чисто интуитивно недавно пришёл к выводу что мне не помешало бы уметь своими руками делать какие то хотя бы начальные проекты, в том числе и сайты.

Можешь посоветовать какие либо хорошие источники инфы дабы войти в курс дела по сайто строению?

Нужны так сказать основы, на более глубокую работу я не целюсь.

Предлагаю начать сразу с практики, методом тыка + гугления:
Читать дальше... )

ООП
Нейтраль
[info]pavel_koryagin

Все любят ООП и я уж думал, что все им владеют.
Тем не менее, для того, чтобы понять практический смысл полиморфизма, программируя на PHP, запретите себе на один какой-то достаточно сложный проект пользоваться get_class() и instanceof. То есть вы должны перестать мочь писать ветвления с учётом класса. Эта задача должна быть решена по-другому.
Когда справитесь - снимайте ограничение, если вообще захочется.
Если Вы начинали с C++ или Delphi - это хорошо. Там, впрочем, тоже есть RTTI, однако он там не так сподручен, как в динамически-типизированных языках.

Запись сделана с помощью приложения LiveJournal для Android.


Предсказуемость людей из больших выборок
Нейтраль
[info]pavel_koryagin
При профилировании продукта случайно получил список путей, по которым зашедший бот ищет известные ему уязвимости.

Ну, не факт, конечно, что именно уязвимости. Может, статистику собирает для небесной канцелярии. Но всё же.

Список )

Надёжно или быстро
Нейтраль
[info]pavel_koryagin

Есть в пикладном программировании такая ловушка: мы должны рассчитывать на то, что компьютер будет работать корректно, но в то же время мы должны писать код, устойчивый к ошибкам.

 

Это противоречие. И его надо осознавать именно как противоречие.

 

Примеры )

Дни рождения
Нейтраль
[info]pavel_koryagin

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

Запись сделана с помощью приложения LiveJournal для Android.


Заметки на полях
Нейтраль
[info]pavel_koryagin
2012 пришёл с необходимостью нанимать программистов. Причём сразу много.

Наняли. Посмотрев на успехи парней, вспомнил, зачем я хотел свою Школу...

Одна из тренировок, через которые нужно прогонять начинающих: выдавать несколько проектов с хорошими, но в очень разных стилях, исходниками. И ебать не отпускать, пока самостоятельно не впишут свой кусок, в том же стиле в каждую. Включая отступы, tab/space, место операторной скобки, отбивку операторов и аргументов. И чтоб свою IDE сами настраивали.

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

Это не всё, разумеется. Это то, на что хватило запала написать, пока под впечатлением.

Ссылка
Нейтраль
[info]pavel_koryagin
Обалденный ЖЖ http://scinquisitor.livejournal.com/

Upd. Хотя статьи, посвящённые борьбе с чем-либо, там чуть менее чем полностью унылы. Не пинайте меня так, как будто я их рекомендовал.

Вы читаете журнал [info]pavel_koryagin