Те же грабли разбор частых ошибок новичков в программировании


Оглавление (нажмите, чтобы открыть):

7 типичных ошибок неопытных программистов

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

Неумение кататься на велосипедах

Неожиданно, да?) На самом деле я хотел сказать, что в эпоху дот-нетов, мак буков и web 2.0 всё (ну или почти всё) уже написано. На любой более-менее популярный язык программирования – по несколько фреймворков и сред разработки, в том числе множество бесплатного, но качественного софта и огромное количество CMS’ок и движков сайтов, для коих, в свою очередь, тысячи плагинов, расширяющих их функционал.
Но начинающие программисты часто либо забывают про этот факт, либо его игнорируют. Они, может быть, и понимают, что кто-то уже решил задачу, которая перед ними стоит, и предлагает решение абсолютно бесплатно, но это почему-то не останавливает их от изобретения велосипедов, которые в большинстве случаев оказываются менее качественными, чем уже изобретенные. А ведь вместо придумывания лучше найти хороший пример с открытым кодом и сосредоточиться на других задачах.

Использование неподходящих средств разработки

Знаете, некоторые прям-таки с гордостью заявляют, что пишут веб страницы в блокноте windows. По их мнению, этим фактом они подчеркивают некий аскетичный стиль программирования, которому следуют, а на самом деле – еще раз демонстрируют свою глупость. Опять же, в наше время существует множество удобных сред и средств разработки, которые упрощают написание кода, заранее проверяют в нём ошибки, выдают подсказки и прочее, и прочее. Зачем пренебрегать имеющимися благами программирования? Видимо для того, чтобы сделать больше ошибок и потратить лишнее время на отладку — иных причин я не вижу. Используйте блокнот, как блокнот.

Вопросы, на которые уже 100 раз ответили

Перед тем, как начать спрашивать что-либо на форумах и в сообществах, просто поищите ответ на свой вопрос. Если Вы начинающий программист, то наверняка кто-то до Вас уже интересовался тем, что Вам не понятно. Сначала ищите информацию в мануалах, документациях, форумах, разделах FAQ, а только потом, в случае неудачи, спрашивайте у других.

Костыли

У новичков код пестрит неочевидными ходами и решениями. Некоторые из них появляются в результате того, что при тестировании программа начинает вести себя не так, как ожидается. Вместо того, чтобы докопаться до сути проблемы, неопытный программист на скорую руку начинает вставлять в код заплатки, которые уродуют программу.Доходит до смешного. Например, на сайте была форма, куда пользователь должен был ввести число от 0 до 999. Вместо того, чтобы получить из поля данные и проверить, действительно ли это число находится в заданном диапазоне, человек сделал проверку на количество символов не больше трех.В итоге в логике программы становится трудно разобраться. Ещё сложнее становится вносить изменения и расширять функционал.

«Этого точно никогда не будет»

Любимая тема новичка – игнорировать обработку некорректных входных данных. Мотив – «этого точно никогда не будет» 🙂 А ведь будет наверняка! Закон программистской подлости – случится именно то, чего ты не предусмотрел. Надо быть готовым, что там, где должны ввести год рождения, будут вводить все, что угодно, кроме нужных четырех цифр. При этом еще нужно придумать правильные ограничивающие условия.

Некрасивый код

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

Не получилось с первого раза – ищем простой путь

Наверное, все за собой замечали: по какой-то непонятной причине программа работает некорректно, а в чем дело — мы никак определить не можем. Тогда мы и начинаем подставлять костыли из пункта 5. Например, есть файл с объявлениями констант и функциями, который используют разные модули программы. В одном модуле этот файл забыли включить, что в ходе выполнения привело к выводу ошибки интерпретатором о том, что не нашлась константа с таким-то именем. Вместо того, чтобы разобраться, где она объявлена и почему не нашлась, мы берем и ещё раз объявляем её в проблемном модуле. Это — очень плохое решение. Не делайте так, ищите корень проблемы.

Учимся на своих ошибках и не забываем: хорошо написанная программа – плюс один в карму!)

Тем, кто хочет стать программистом, рекомендуем профессию «Веб-разработчик».

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

Неумение кататься на велосипедах

Неожиданно, да?) На самом деле я хотел сказать, что в эпоху дот-нетов, мак буков и web 2.0 всё (ну или почти всё) уже написано. На любой более-менее популярный язык программирования – по несколько фреймворков и сред разработки, в том числе множество бесплатного, но качественного софта и огромное количество CMS’ок и движков сайтов, для коих, в свою очередь, тысячи плагинов, расширяющих их функционал.
Но начинающие программисты часто либо забывают про этот факт, либо его игнорируют. Они, может быть, и понимают, что кто-то уже решил задачу, которая перед ними стоит, и предлагает решение абсолютно бесплатно, но это почему-то не останавливает их от изобретения велосипедов, которые в большинстве случаев оказываются менее качественными, чем уже изобретенные. А ведь вместо придумывания лучше найти хороший пример с открытым кодом и сосредоточиться на других задачах.

Использование неподходящих средств разработки

Знаете, некоторые прям-таки с гордостью заявляют, что пишут веб страницы в блокноте windows. По их мнению, этим фактом они подчеркивают некий аскетичный стиль программирования, которому следуют, а на самом деле – еще раз демонстрируют свою глупость. Опять же, в наше время существует множество удобных сред и средств разработки, которые упрощают написание кода, заранее проверяют в нём ошибки, выдают подсказки и прочее, и прочее. Зачем пренебрегать имеющимися благами программирования? Видимо для того, чтобы сделать больше ошибок и потратить лишнее время на отладку — иных причин я не вижу. Используйте блокнот, как блокнот.

Вопросы, на которые уже 100 раз ответили

Перед тем, как начать спрашивать что-либо на форумах и в сообществах, просто поищите ответ на свой вопрос. Если Вы начинающий программист, то наверняка кто-то до Вас уже интересовался тем, что Вам не понятно. Сначала ищите информацию в мануалах, документациях, форумах, разделах FAQ, а только потом, в случае неудачи, спрашивайте у других.

Костыли

У новичков код пестрит неочевидными ходами и решениями. Некоторые из них появляются в результате того, что при тестировании программа начинает вести себя не так, как ожидается. Вместо того, чтобы докопаться до сути проблемы, неопытный программист на скорую руку начинает вставлять в код заплатки, которые уродуют программу.Доходит до смешного. Например, на сайте была форма, куда пользователь должен был ввести число от 0 до 999. Вместо того, чтобы получить из поля данные и проверить, действительно ли это число находится в заданном диапазоне, человек сделал проверку на количество символов не больше трех.В итоге в логике программы становится трудно разобраться. Ещё сложнее становится вносить изменения и расширять функционал.

«Этого точно никогда не будет»

Любимая тема новичка – игнорировать обработку некорректных входных данных. Мотив – «этого точно никогда не будет» 🙂 А ведь будет наверняка! Закон программистской подлости – случится именно то, чего ты не предусмотрел. Надо быть готовым, что там, где должны ввести год рождения, будут вводить все, что угодно, кроме нужных четырех цифр. При этом еще нужно придумать правильные ограничивающие условия.

Некрасивый код

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

Не получилось с первого раза – ищем простой путь

Наверное, все за собой замечали: по какой-то непонятной причине программа работает некорректно, а в чем дело — мы никак определить не можем. Тогда мы и начинаем подставлять костыли из пункта 5. Например, есть файл с объявлениями констант и функциями, который используют разные модули программы. В одном модуле этот файл забыли включить, что в ходе выполнения привело к выводу ошибки интерпретатором о том, что не нашлась константа с таким-то именем. Вместо того, чтобы разобраться, где она объявлена и почему не нашлась, мы берем и ещё раз объявляем её в проблемном модуле. Это — очень плохое решение. Не делайте так, ищите корень проблемы.

Учимся на своих ошибках и не забываем: хорошо написанная программа – плюс один в карму!)

Тем, кто хочет стать программистом, рекомендуем профессию «Веб-разработчик».

Четыре ошибки новичков в программировании

Всем привет! Меня зовут Андрей, я фронтенд-разработчик в RAMBLER&Co, ранее в Иннове. Программированием я занимаюсь около года, до этого около двух лет занимался HTML-вёрсткой. Расскажу о том, какие ошибки я совершил за эти три года, чтобы вы (если вы новичок) их не повторяли.

Ошибка №1: изучение основ языка вместо основ программирования

Свой путь в веб-разработке я начинал с книги по HTML/CSS, которую мне дал почитать знакомый программист. В конце книги был дополнительный раздел с основами языка JavaScript. Разумеется, я начал его читать и ничего не понял. Помню как увидел пример простого цикла for (var i = 0; i и долго недоумевал, как это вообще работает. В итоге у меня сложилось неправильное впечатление о языке: я решил, что JS ужасный язык и его нельзя изучать.

Впоследствии я пробовал PHP, Python и даже С#, разобрался с циклами и другими базовыми вещами, но плохое впечатление от JS так и осталось, пока я не решил снова попробовать его изучить.

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

Ошибка №2: неправильные ожидания от ВУЗа

Закончив школу, я, как и подавляющее большинство сверстников, поступил в местный (омский) ВУЗ. Специальность называлась «Математическое обеспечение и администрирование информационных систем». Почему я выбрал её? Я прочёл на Хабре статью о том, какие специальности лучше всего подходят для обучения программированию, и МОиАИС была в этой статье на первом месте.

Мастер Йода рекомендует:  Пишем PHP код, устойчивый к ошибкам PHP

Спустя три месяца обучения я перестал ходить на занятия. Я шёл в ВУЗ с мыслью о том, что меня там научат промышленному программированию. Увы, занятия по программированию вела далёкая от мира разработки преподавательница, а математика занимала большую часть программы (это не плохо, просто у меня со школы неприязнь к математике).

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

Ошибка №3: распыление вместо концентрации

«О, дайджест последних новостей. ого, туториал по вёрстке табов на css! А тут ещё и статья о реакте для новичков. А здесь пишут, что нужно использовать ангуляр вместо реакта. » — и у вас уже открыто 50 вкладок в браузере и вы лихорадочно читаете всё, что попадётся. А потом обнаруживаете, что уже час ночи и в общем-то надо бы пойти спать, но в очередь на чтение ещё 20 статей. Наверняка многие из вас сталкивались с такой ситуацией.

Проблема в том, что распыляясь на кучу разных тем, вы получаете мало профита. Намного эффективнее не пытаться охватить всё и сразу, а ставить какие-то небольшие цели и добиваться их. Например, вместо того, чтобы следующим вечером снова пытаться прочесть и запомнить 20 статей на разные темы, поставьте себе цель «разобраться с принципами работы промисов» и прочитайте те же 20 статей, но о промисах. Так вы гарантированно разберётесь в теме и не потратите время зря.

Ошибка №4: знания языков и фреймворков недостаточно

Когда я освоил вёрстку на достаточно хорошем уровне, я решил двигаться дальше — во фронтенд и программирование. «Изучу JavaScript и какой-нибудь фреймворк — и дело в шляпе, буду крутым программистом». Сейчас я пишу приложения на JS, Реакте и Редаксе, но этого недостаточно для «крутого программиста».

Языки и фреймворки — это лишь инструменты, помогающие в решении задач. Работа программиста заключается в проектировании достаточно простого и гибкого решения какой-либо проблемы. Чтобы спроектировать хорошее решение, недостаточно знать язык программирования. Нужно обладать инженерным мышлением. Я понял это отчасти благодаря курсам Хекслета, которые я сейчас с удовольствием прохожу. Эти курсы действительно учат не каким-то отдельным инструментам, они учат подходам и правильному мышлению.

Ошибки вебмастеров: не наступайте на одни и те же грабли

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

В этой статье мы расскажем про ошибки вебмастеров. Практически каждый начинающий создатель сайта совершают их по незнанию. Узнайте, что это за грабли, и как на них не наступить.

Неграмотная структура

Структура сайта – это категории и подкатегории, из которых он состоит. Если изначально создать структуру неправильно, потом её будет затруднительно переделать. Изменение структуры сайта обязательно негативно скажется на продвижении сайта.

Структура сайта должна соответствовать таким требованиям:

  • Категории, из которых состоит структура, должны быть частью основной тематики.
  • Все категории должны быть чётко тематически разграничены.
  • Нельзя делать более третьего уровня вложения, это негативно скажется на продвижении сайта. Это значит, что может делать подкатегории в категориях, но нельзя делать подкатегории в подкатегориях (тавтология, но вникните во фразу).

О структуре сайта мы рассказывали здесь.

Неправильно настроенные постоянные ссылки

Ошибки вебмастеров в этой части не так страшны, как неправильная структура, однако могут нанести вред продвижению. Структура постоянных ссылок – это закономерность, по которой будут формироваться ссылки материалов. Постоянные ссылки должны соответствовать следующим требованиям:

  • Ссылки материалов обязательно должны быть написаны латинскими буквами. Если необходимо на русском языке, то нужно использовать транслит.
  • Ссылки должны содержать в себе категорию, в которой содержится запись. Это позволит поисковикам правильно представить структуру сайта.
  • Ссылка должна иметь в себе название записи. Это сделает продвижение более эффективным.

Массовая покупка ссылок

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

Неопределённая тема

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

Почему мы наступаем на одни и те же грабли?

Иногда ко мне обращаются люди, с которыми постоянно случаются одни и те же неприятности.

Например: «Меня все время предают друзья», «Мои мужья мне изменяют», «Мне не везет с друзьями, мои лучшие подруги находят других подруг», «Мою машину постоянно бьют на стоянке» и тому подобное.

Как психолог, я всегда задаю вопрос: если ваш друг придет к вам и расскажет, как уже пятый раз чинит телефон, что вы ему скажете?
Что спросите, чтобы уточнить информацию?

А может это случайность? Или может не умеет пользоваться телефоном? Вариантов множество.

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

А вот, когда слушаем другого, то возникает мысль о некой логике процесса.
Со стороны то, легче увидеть то, что происходит у других.

Почему наступаем на одни и те же грабли?

Был случай, лет 10 назад. Обратилась женщина с просьбой.
Помочь проследить ситуацию, в которой ее муж теряет автомобиль. Не один.
Умная и мудрая женщина. Она продолжает ко мне обращаться, с очень интересными ситуациями.
И рассказывая свою историю, она сама нашла цепочку закономерностей.
Первый автомобиль отобрали, накачав мужчину, ее мужа, наркотиками и заставив поставить подпись под дарственной.
Через неделю мужчина, покупает новый автомобиль. А через месяц, опять остается в живых. Без машины. Машина разбилась. А мужчина живой.
Интересная ситуация.
Я задала лишь один вопрос: «Чем муж занимается?»
Женщина, после этого вопроса, посмотрев на меня, встала, достала деньги из кошелька, и ушла, сказав лишь:
« Я все поняла, спасибо».

Ситуации с граблями бывают разными.
Еще ситуация:
Муж жену выгоняет из дома, ну, психопат он. Что делает жена?
Уходит?
Нет! Наоборот, оправдывает. И опять получает тумаков.
Взрослый мужчина, муж жене ясно говорит, «Убью, если слово против скажешь..»
А ей нормально.
Прощает.
Так в чем же ее проблема?! Или его?!

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

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

Почему же женщины не избегают боли в отношениях?

Ведь давно известно, что боль – это инструмент инстинкта самосохранения.
Боль – это защита организма от разрушения.
Отличается ли физическая боль от душевной?!

Разница лишь в том, что на грабли в Индии, вряд ли будем наступать. Это связанно с диареей и различными инфекциями, которые могут привести к летальному исходу.
Поэтому, путешественник запасается впрок различными средствами гигиены, лекарствами, изучает индийские лекарства, так на всякий случай.

А вот, с душевной болью, все иначе.
Нравится?!
Или надежда умирает последней?!
Душевную боль человек очень хорошо помнит! Как не помнить! Столько рассказов! Сочувствия! Жалости! По – любому раскладу, он стал центром Вселенной.
Да, да, это о скрытой выгоде, быть несчастным!
Гордиться собой! Мученик! Великая мученица!
Это все они виноваты, а моя хата с краю!
Те, кто пытается и делает все, чтобы помочь осознать привычку наступать на грабли, становятся врагами.
На самом деле, человеку страшно покидать эту своеобразную зону комфорта.
Иногда, спрашиваю:
«Вы уверены, что хотите выйти из болота? Бывает, в этом болоте комфортно, безопасно, привыкли к запахам, к кочкам, к мхам. Выйдите оттуда и надо будет адаптироваться, а адаптация за один день не приходит…»

Честно, ясно, предлагаю подумать…
Потому что, трудно менять привычки.
Привычнее – попадать на те же самые грабли.

И вот опять: «Устала, больше не могу».
Страшно создавать новую реальность.
Поэтому и выбирает человек привычное.
Жить в комфорте, а комфорт для него — это зона дискомфорта.

Человек – управленец своей жизни!

Легко говорить!
Тяжелее претворить!

Говорят: «Человек-хозяин своих привычек». А не наоборот.

И боль, грабли, можно использовать, как пинок двигаться вперед.
А вы, как думаете?
Как вы наступаете на грабли?
Если есть желание – поделиться, — поделитесь.

Как перестать наступать на одни и те же грабли?
Ваши варианты…
Благодарю вас за внимание и за комментарии к этому моему размышлению
С Уважением, Белянина Галина

[Психология] Анализ ошибок, но опять на те же грабли

Resharper #41 Отправлено 16 июл 2013 — 14:30

Друзья,
На самом деле тему можно назвать «Почему я такой олень», но для исправления ситуации это будет не очень конструктивно. 🙂
Вопрос больше касается не конкретных тактик. Речь пойдёт о психологии, темпераменте, да и вообще «профпригодности».

Итак, допущена ошибка. Слился. О статистике и эффективности речь не идёт. Просто есть ошибочные действия. Даже не конкретные действия — а ошибочное поведение в целом.
Для определённости выделим конкретные классы ошибок:
— попёр на рожон, думая что проскочу опасный участок;
— стрелял по заведомо непробиваемой цели или со слишком большого расстояния;
— поддался азарту, расстреливая слабого противника, оставаясь открытым для более сильных;
и т.д.

В ангар сразу не выходим, думаем, смотрим, крутим карту. Идём на форум, читаем вики, смотрим гайды, ругаем себя, бьём по лбу.
Казалось бы — причины понятны. Сделали выводы, запомнили, учли, зарубили на носу.

Внимание, казалось бы, мобилизовано, НО! Следующие бои (рандом) — ситуация другая, карта другая, разобранная ошибка не повторяется — просто потому, что не создаётся условий для её воспроизведения.

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

Вопрос первый: это проблемы с памятью? Я, кстати, серьёзно. 🙂 У всех способности к запоминанию разные, а способности к своевременному «вспоминанию» — тем более.

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

UPD: переименовал тему

Сообщение отредактировал Resharper: 17 июл 2013 — 15:03

Resharper #42 Отправлено 19 июл 2013 — 08:35

mad_trader (16 Июл 2013 — 14:57) писал:

Верно. Добавлю ещё вот что.
На КВ-1 всё медленно, но всё более-менее получается. Открыл с КВ всех «старших братьев», взял с КВ-1С 75% экипаж, посадил на Черчилль.
У меня на нём никогда играть не получалось, а тут, по контрасту с КВ-1 — вообще печаль. Умираю так быстро, что своей пукалкой я не успеваю причинить сколько-нибудь значимый урон.
Думаю, проблема в том, что на КВ-1 если я кого-то встречал, то при прочих равных противник выносился быстрее. Поэтому прожить дольше удавалось просто из-за того, что устранялись сами стволы и засвет.

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

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

Вот вам и психология: прятаться не хочется, хочется поддержать атаку.

«Грабли» на маркетинговом пути: типичные ошибки

Грамотный маркетинг – залог успеха в завоевании рынка. Какие ошибки чаще всего мешают бизнесменам добиваться впечатляющих результатов? Об этом расскажет маркетолог, эксперт по развитию бизнеса Светлана Курако.

Мастер Йода рекомендует:  Рейтинги телесериалов сообщит Facebook

1 ошибка: отсутствие УТП

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

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

2 ошибка: отсутствие продвижения в социальных сетях

На данный момент соцсети для сегмента B2С стали одними из лидирующих каналов по продажам. Но, тем не менее, многие бизнесмены воспринимают их как развлекательную площадку, а не потенциальный рынок сбыта с многомиллионной аудиторией. Не имея же страниц в социальных сетях, компания теряет связь с потребителями.

3 ошибка: отсутствие работы над личным брендом

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

Данные люди должны постоянно мелькать в инфополе: выступать на конференциях, писать статьи в СМИ, проводить тренинги, выпускать свои книги или брошюры. Это повышает уровень доверия и лояльность аудитории.

4 ошибка: отсутствие четкого портрета ЦА

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

Например, можно открыть не еще одну обычную булочную, а ту, в которой будет продаваться безглютеновая выпечка или десерты, сделанные полностью из сырых продуктов, без выпекания, и т.д. Это позволит не только ориентироваться на четко обозначенный сегмент ЦА, но и понять, как найти нужных людей в соцсетях и правильно презентовать им товар – а значит, легко привлекать их через рекламу. Данная аудитория понимает ценность безглютеновой выпечки, следовательно, работать с ней проще.

5 ошибка: отсутствие трансляции ценностей

Компании недостаточно просто прописать ценности во внутреннем уставе или обозначить сотрудникам при найме на работу. Важно правильно доносить их до своей ЦА: показывать покупателям, каким образом ценности повлияют на их жизнь, что поменяется, что улучшится – причем понятным языком. Например: «Если вы будете есть именно эту выпечку, то проживете на 10 лет больше, у вас не будет частых перепадов настроения, улучшится самочувствие», и т.п.

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

6 ошибка: проекты пытаются конкурировать, снижая цены

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

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

7 ошибка: отсутствие дополнительных или дополняющих продуктов

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

Перед запуском важно провести детальный маркетинговый анализ рынка, своего продукта, целевой аудитории, обеспечить максимальное присутствие компании онлайн. Это позволит стартовать с большим отрывом от конкурентов!

Материал опубликован пользователем.
Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Ошибки начинающего программиста (часть 4)

17) Не ориентироваться на конечного пользователя

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

18) Выбор неправильных инструментов разработки

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

Не стоит использовать определенный инструмент только потому, что он популярен, а стоит выбирать тот, который максимально вписывается в решение проблемы. Для это необходимо постоянно проводить анализ того, какие инструментарии есть в наличии и как они вписываются в решение задачи. Не стоит избегать и новых инструментов, боясь потратить время на их изучение. Часто новые инструменты могут оказаться лучше и с их помощью может быть проще решить поставленную задачу. Это касается не только абсолютно новых инструментов, но и новых версий уже существующих фреймворков и библиотек.

19) Непонимание того, что проблемы с кодом могут привести к проблемам с данными

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

Если неправильно организовать управление этими данными, забыть про валидацию или проверку уникальности, либо сделать это некорректно и на первый взгляд правильная валидация будет пропускать неправильные данные. Все это может создать некоторые проблемы в целостности данных.

Чтобы избежать таких проблем важно использовать несколько слоев проверки данных на соотвествие заданным параметрам. Первый слой – это валидация на уровне интерфейса пользователя. Вторым слоем будет проверка данных на уровне базы данных. Для это необходимо использовать возможности БД, задавать ограничения:

  • Используйте NOT NULL для проверки на наличие данных как таковых, т.е. поле должно быть заполненно данными в любом случае.
  • UNIQUE проверяет значения на уникальность в отношении уже существующих в таблице записей. Например, это важно для таких данных как пользовательский идентификатор, который должен быть уникальным, т.к. по нему идет привязка других данных к конкретному пользователю.
  • PRIMARY KEY ограничивает одновременно значение ненулевым и уникальным. Каждая таблица в базе данных должна иметь такое поле для идентификации записей.
  • используйте FOREIGN KEY для привязки данных одной таблицы к значениям в другой таблице базы данных. Обычно это же поле является и PRIMARY KEY.
  • CHECK задает пользовательское выражение, которое должно быть true, чтобы данные были приняты. Например, если у вас есть обычный процентный столбец, значения которого должны быть в диапазоне от 0 до 100, то вы можете использовать проверку и принимать значения только из данного интервала.

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

20) Изобретение “колеса”

Тут есть некоторые сложности. В программировании некоторые колеса просто стоит изобретать. Программирование не является четко определенной областью. В нем так много вещей, которые меняется так быстро, а новые требования вводятся быстрее, чем вы успеваете освоиться в уже существующих. Однако, если вам действительно не нужно колесо, которое не используется в его типичной конструкции, не изобретайте его заново. Переосмыслите текущие существующие “колеса”. В программирование круто то, что многие “колеса” открыты и бесплатны. Вы можете с легкостью посмотреть их код и при необходимости изменить под свои потребности. При этом помните, что если вам необходимо всего одно “колесо” (функция) не стоит включать в проект весь “гараж” (читайте библиотеку).

21) Непонимание значения Code Review

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

22) Не используя систему контроля версий

Многие новички недооценивают использование систем контроля версий, таких как Git. И это часто становится преградой на пути их дальнейшего развития.

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

Чтобы в будущем легче было разобраться, необходимо писать краткие и понятные комментарии к коммитам из которых будет понятно какая функция была добавлена или изменена.

Так же актуальным является использование staging changes, patching selectively, resetting, stashing, amending, applying, diffing, reversing, которые добавляют широкие возможности в ваш рабочий поток. Изучайте и понимайте их, используйте их. Чем больше возможностей Git вы знаете, тем меньше в вас остается от новичка.

23) Неверное отношение к ошибкам

Новички не любят ошибки. Их часто раздражают эту мелкие красные надписи в консоли, что что-то пошло не так. Меняйте отношение к ошибкам. Ошибки – это не есть плохо. Расценивайте их как новые возможности чему-то научиться. Без ошибок нет прогресса. Появление ошибок учит вас обходить их, учитывать их, обрабатывать их, планировать их на уровне кода.

24) Не делать перерывов

Наверное главная ошибка новичков. Вы человек, которому свойственно уставать. Ваш мозг требует перерывов. Часто работая над проблемой можно забыть сделать перерыв, но он просто необходим. Интегрируйте небольшие перерывы в ваш рабочий процесс. Разомните тело, пройдитесь, подумайте над вашими дальнейшими действиями не перед экраном, а любуясь видом из окна. Это так же полезно для ваших глаз.

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

На этом все. До всречи в новых публикациях.

Анекдот №-9941475

Юзеp — человек, наступающий на гpабли.
Чайник — начинающий юзеp, ни pазу не наступавший на гpабли и потому
увеpенный, что гpаблей не существует.
Ламеp — юзеp, pегуляpно наступающий на гpабли, но по-пpежнему увеpенный
что гpаблей не существует.
Узкий специалист — юзеp, в совеpшенстве владеющий наступанием на одни и
те же гpабли.
Шиpокий специалист — юзеp, имеющий на лбу более двух шишек.
Пpогpаммеp — тот, для кого в наступании на гpабли важнее всего
pезультат. Устав наступать на чужие гpабли, изготавливает свои
собственные.
Пpодвинутый пpогpаммеp — пpогpаммеp, наступающий на каждые гpабли не
более двух pаз.
Копиpайт — концепция, огpаничивающая количество доступных для наступания
гpаблей финансовыми возможностями юзеpа.
Геймеp — тот, для кого в наступании на гpабли важнее всего пpоцесс.
Обычно не способен изготовить собственные гpабли.
Читеp — pазновидность геймеpа; наступает только на гpабли с поpолоновыми
насадками на pучке и обычно не больше одного pаза.
Хакеp — тот, кто способен наступить на гpабли, даже если они спpятаны в
саpай и запеpты на замок.
Хакеp-идеалист — благоpодный боpец за пpаво каждого наступать на
неогpаниченное количество гpаблей.
Microsoft — коpпоpация, всемиpный лидеp по пpоизводству гpаблей Билл
Гейтс — мифическое существо из пpогpаммеpского фольклоpа; злой дух —
покpовитель гpаблей.
Апгpейд — пpоцесс пеpманентной тpаты денег на покупку все новых гpаблей,
каждые из котоpых бьют больнее пpедыдущих.
Бета-веpсия — веpсия, в котоpой гpабли видны невооpуженным глазом.
Релиз — веpсия, в котоpой гpабли пpисыпаны листьями.
Совместимость веpсий — пpинцип, позволяющий новым гpаблям попадать точно
по шишке от пpедыдущих.
Ассемблеp — язык пpогpаммиpования, позволяющий наступать на гpабли
несколько миллионов pаз в секунду.
Локальная сеть — технология, позволяющая получить по лбу, даже когда на
гpабли наступает кто-то дpугой.
Интеpнет — технология, позволяющая наступить на гpабли, находящиеся на
дpугой стоpоне земного шаpа.
Сетевая конфеpенция — технология, позволяющая каждому наступить не
только на свои, но и на чужие гpабли.
Русские кодиpовки — подаpочный набоp гpаблей для пользователей
интеpнета.
Дpужественный интеpфейс — pезиновая накладка на pучку гpаблей.
Гибкий (настpаиваемый) интеpфейс — накладка на pучку гpаблей, котоpую
можно двигать, подгоняя под высоту своего лба.
Гpафический интеpфейс — гpабли, позволяющие pегулиpовать цвет и
интенсивность искp после удаpа по лбу.
Hенадежная система — гpабли, котоpые бьют вас даже тогда когда вы на них
не наступаете.
Hадежная система — гpабли, котоpые бьют вас по лбу, даже когда вы стоите
к ним спиной.
Многозадачность — концепция, позволяющая наступать на несколько гpаблей
одновpеменно.
Объектно-оpиентиpованное пpогpаммиpование — метод изготовления гpаблей
по пpинципу матpешки.
Мануал — книга, описывающая pазличные способы наступания на гpабли.
Hикогда не используется ламеpами и хакеpами. Пpодвинутые пpогpаммеpы
используют ее после того, как наступят на те же гpабли во втоpой pаз.
Техподдеpжка — служба, дающая советы, что делать после наступания на
гpабли. Обычно пеpвый ее совет — наступить на гpабли еще pаз и сpавнить
ощущения.

Мастер Йода рекомендует:  Лучшие языки программирования для Data Science

Те же грабли: разбор частых ошибок новичков в программировании

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

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

Если вы абсолютный новичок в области программирования то эта статья непременно будет вам интересна: Основы программирования для начинающих.

Ошибки программирования, более известные как «Баги» на жаргоне, бич любого разработчика программного обеспечения. Поскольку машины все чаще используются в автоматическом режиме, с бортовыми встраиваемыми системами или компьютерами, контролирующими их функционирование, программная ошибка может иметь серьезные последствия. Были случаи, когда космические челноки и самолеты, разбивались из-за ошибки в программном обеспечении во встраиваемом компьютерном оборудовании. Одна лазейка, оставленная в коде операционной системы, может обеспечить точку входа для хакеров, которые могут использовать эту уязвимость. К этим, ошибкам нужно относиться очень серьезно, так как мы все больше и больше полагаемся на компьютеры.

Основные виды ошибок в программировании

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

Тип ошибок программирования

Описание

Логическая ошибка

Это, пожалуй, наиболее серьезная из всех ошибок. Когда написанная программа на любом языке компилирует и работает правильно, но выдает неправильный вывод, недостаток заключается в логике основного программирования. Это ошибка, которая была унаследована от недостатка в базовом алгоритме. Сама логика, на которой базируется вся программа, является ущербной. Чтобы найти решение такой ошибки нужно фундаментальное изменение алгоритма. Вам нужно начать копать в алгоритмическом уровне, чтобы сузить область поиска такой ошибки.

Синтаксическая ошибка

Каждый компьютерный язык, такой как C, Java, Perl и Python имеет специфический синтаксис, в котором будет написан код. Когда программист не придерживаться «грамматики» спецификациями компьютерного языка, возникнет ошибка синтаксиса. Такого рода ошибки легко устраняются на этапе компиляции.

Ошибка компиляции

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

Ошибки среды выполнения (RunTime)

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

Арифметическая ошибка

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

Ошибки ресурса

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

Ошибка взаимодействия

Они могут возникнуть в связи с несоответствием программного обеспечения с аппаратным интерфейсом или интерфейсом прикладного программирования. В случае веб-приложений, ошибка интерфейса может быть результатом неправильного использования веб-протокола.

Интенсивное тестирование и фаза отладки неотъемлемая часть цикла разработки программного обеспечения, которое может помочь пресечь эти ошибки в зародыше, прежде чем произойдет полномасштабное развертывание программного обеспечения. Много ошибок можно избежать с помощью предварительного планирования во время стадии кодирования. Большинство ошибок можно исправить в процессе разработки программного обеспечения через практику и строгие процедуры отладки. Ошибки являются частью обучения, и их никогда нельзя полностью избежать, Тем не менее, у вас могут появляться новые ошибки, но повторять старые вы не должны!

Теория граблей

Еще из старенького

Юзер — человек, наступающий на грабли

Чайник — ничинающий юзер, ни разу не наступавший на грабли и потому уверенный что граблей не существует

Ламер — юзер, регулярно наступающий на грабли, но по-прежнему уверенный что граблей не существует.

Узкий специалист — юзер, в совершенстве владеющий наступанием на одни и те же грабли

Широкий специалист — юзер, имеющий на лбу более двух шишек.

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

Продвинутый программер — программер, наступающий на каждые грабли не более двух раз.

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

Геймер — тот, для кого в наступании на грабли важнее всего процесс. Обычно не способен изготовить собственные грабли.

Читер — разновидность геймера; наступает только на грабли с поролоновыми насадками на ручке и обычно не больше одного раза.

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

Хакер-идеалист — благородный борец за право каждого наступать на неограниченное количество граблей.

Microsoft — корпорация, всемирный лидер по производству граблей

Билл Гейтс — мифическое существо из программерского фольклора; злой дух-покровитель граблей.

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

Бета-версия — версия, в которой грабли видны невооруженным глазом.

Релиз — версия, в которой грабли присыпаны листьями.

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

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

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

Интернет — технология, позволяющая наступить на грабли, находящиеся на другой стороне земного шара.

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

Русские кодировки — подарочный набор набор граблей для пользователей интернета.

Дружественный интерфейс — резиновая накладка на ручку граблей

Гибкий (настраиваемый) интерфейс — накладка на ручку граблей, которую можно двигать, подгоняя под высоту своего лба

Графический интерфейс — грабли, позволяющие регулировать цвет и интенсивность искр после удара по лбу.

Ненадежная система — грабли, которые бьют вас даже тогда когда вы на них не наступаете.

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

Многозадачность — концепция, позволяющая наступать на несколько граблей одновременно.

Объектно-ориентированное программирование — метод изготовления граблей по принципу матрешки.

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

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

Брейнд-нейм — огромные грабли, имеющие собственное имя.

Операционная система — система, позволяющая контролировать совместное наступание на все грабли, приставленные к сараю.

А теперь, имея Словарь, переведите:

MS Windows 95 — многозадачная операционная система, имеющая графический интерфейс, разработанная корпорацией Microsoft под руководством Билла Гейтса.

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

ЭВМ — сарай где хранят грабли

Дельфи — фабрика быстрого производства граблей с поддержкой ООП.Для создания одной элементарной грабли достаточно нескольких щелчков мышкой.

18.12.2008, 16:55

Теория принятия решений Теория игр
Команды факультетов A и B определяют свои стратегии игры в первенстве университета по баскетболу.

Теория
помогите срочно нужна инфа про: 1) Фильтрация данных. Команды фильтрации. Когда начинает .

Теория C#.
Здравствуйте у меня завтра экзамен практику я сдам, а вот теорию сомневаюсь так как препод сказал.

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

Теория по 1С
Добрый день, уважаемые форумчане! Учусь на заочном отделении. В моей КР есть следующий вопрос по.

18.12.2008, 17:21 2

MS Windows 95 — многозадачная операционная система, имеющая графический интерфейс, разработанная корпорацией Microsoft под руководством Билла Гейтса.

многозадачность — концепция, позволяющая наступать на несколько граблей одновременно
операционная система — система, позволяющая контролировать совместное наступание на все грабли, приставленные к сараю.
графический интерфейс — грабли, позволяющие регулировать цвет и интенсивность искр после удара по лбу.
Microsoft — корпорация, всемирный лидер по производству граблей
Билл Гейтс — мифическое существо из программерского фольклора; злой дух-покровитель граблей.

MS Windows 95 —
Концепционная система позволяющая наступать на несколько граблей одновременно, и контролировать совместное наступание на все грабли приставленные к сараю, позволяющая регулировать цвет и интенсиврость искр после удара по лбу, разработанная корпорацией — всемирным лидером по производству граблей, под руководством злого духа-покровителя граблей — мифического существа из прогаммерского фольклора.

18.12.2008, 17:40 3 19.12.2008, 08:33 4

Компьютерная Библия:
1 В начале было слово, и слово было 2 байта, а больше ничего не было.

2 И отделил Бог единицу от нуля, и увидел, что это хорошо.

3 И сказал Бог: да будут данные, и стало так.

4 И сказал Бог: да соберутся данные каждые в свое место, и создал дискеты, и винчестеры, и компакт-диски.

5 И сказал Бог: да будут компьютеры, чтобы было куда пихать дискеты, и винчестеры, и компакт-диски, и сотворил компьютеры, и нарек их хардом, и отделил хард от софта.

6 Софта же еще не было, но Бог быстро исправился, и создал программы большие и маленькие, и сказал им: плодитесь и размножайтесь, и заполняйте всю память.

7 Hо надоело Ему создавать программы самому, и сказал Бог: создадим программиста по образу и подобию нашему, и да владычествует над компьютерами, и над программами, и над данными. И создал Бог программиста, и поселил его в своем ВЦ, чтобы работал в нем. И повел Он программиста к дереву каталогов, и заповедал: из всякого каталога можешь запускать программы, только из каталога Windows не запускай, ибо маст дай.

8 И сказал Бог: не хорошо программисту быть одному, сотворим ему пользователя, соответственно ему. И взял Он у программиста кость, в коей не было мозга, и создал пользователя, и привел его к программисту; и нарек программист его юзером. И сидели они оба под голым ДОСом, и не стыдились.

9 Билл был хитрее всех зверей полевых. И сказал Билл юзеру: подлинно ли сказал Бог: не запускайте никакого софта? И сказал юзер: всякий софт мы можем запускать, и лишь из каталога Windows не можем, ибо маст дай. И сказал Билл юзеру: давайте спорить о вкусе устриц с теми, кто их ел! В день, когда запустите Windows, будете как боги, ибо одним кликом мышки сотворите что угодно. И увидел юзер, что винды приятны для глаз и вожделенны, потому что делают ненужным знание, и поставил их на свой компьютер; а затем сказал программисту, что это круто, и он тоже поставил.

0A И отправился программист искать свежие драйвера, и воззвал Бог к программисту и сказал ему: где ты? Программист сказал: ищу свежие драйвера, ибо нет их под голым ДОСом. И сказал Бог: кто тебе сказал про драйвера? уж не запускал ли ты винды? Программист сказал: юзер, которого Ты мне дал, сказал, что отныне хочет программы только под винды, и я их поставил. И сказал Бог юзеру: что это ты сделал? Юзер сказал: Билл обольстил меня.

0B И сказал Бог Биллу: за то, что ты сделал, проклят ты пред всеми скотами и всеми зверями полевыми, и вражду положу между тобою и программистом: он будет ругать тебя нехорошими словами, а ты будешь продавать ему винды.

0C Юзеру сказал: умножу скорбь твою и истощу кошелек твой, и будешь пользоваться кривыми программами, и не сможешь прожить без программиста, и он будет господствовать над тобой.

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

0E И выслал Бог их из своего ВЦ, и поставил пароль на вход.

Добавить комментарий