Не знаю, троллинг ли или просто попытка некоторого упорядочения списка знаний, но очень хорошая попытка. Некоторая претенциозность и даже некоторый наезд на «программистов» делает эту статью более читаемой людьми. А это очень хорошо. Это значит больше людей сможет расширить свой горизонт познаний.
1 Знания основаны на фактах: время публикации статьи — 03:07. Чем не ночь?
2 Статья по ссылке — полный отстой. Написана с целью попантоваться, а не донести мысль и знания
3 Что-то вы часто приводите эту ссылку в комментариях — уж не свой ли бложик пиарите?
Главное понимать ограничения подхода «Наверняка я сделал глупо и не оптимально, но работает.». То что «работает» это главное только на прикладных задачах, не имеющих решающего значения и не могущих ничего натворить в принципе.
Берем си программу, в которой выделяется к примеру килобайт памяти, а потом там идет обработка строк функциями прямого доступа к памяти. При чем что бы туда не поступало больше 1000 букв, следит внешняя программа. Человек не знающий си решает переделает ее на утф (почти Ваша ситуация), что-то там где-то меняет, но программа все еще выделяет килобайт памяти и человек не видит ошибки, т.к. у него широкие, но неглубокие знания. При чем программа даже работает, т.к. то ли повезло и это не привело к критической ошибке, то ли тексты влезали — не суть. К чему это приведет на продакшене в критичной задаче — страшно подумать.
Или допустим типичная ошибка, допустим, яваскриптеров, решивших подправить код на php. У них есть код вставляющий число в базу число insert… intval($_POST['value']), нужно заодно вставлять и текст. Что делает прикладник? Он видит что intval «портит» значение до числа, и убирает его, профит? Профит, все работает, ровно до sql инъекции.
В яваскрипте ошибки менее критичны, но написанный оптимально яваскрипт выполняющий свою задачу на компе программера с широкими знаниями… легко может подвесить старый офисный комп бухгалтера. Или при поступлении неверных значений — вдруг отдать какие-то важные данные, запросив их с сервера.
В общем знания широкие нужны, но применять их надо с очень большой осторожностью и только в прикладных, не критичных задачах.
По мне, все перечисленное — это базовые знания. Не глубокие.
Досадно, что до сих пор можно встретить сайты с SQL-injection или с редактором, при помощи которого можно залить что угодно.
> аналитику не надо уметь пользоваться Visual Basic'ом в Excel'е
Особенно весело (так весело, что аж страшно) будет примерно через пол-года, когда макросы разростутся на пару тысяч строк и этой книгой (к тому же лежащей в расшареном каталоге) будет пользоваться весь отдел аналитики.
> Как-то раз сотрудник, которому приходилось часто переводить таблицы из Excel в html сказал, что делать это без DreamWeaver очень долго и сложно.
Очень часто сталкиваюсь с типом людей, которые основываются только на своем прошлом опыте, не пытаясь изучить что-то новое. В моей конторе изменяющиеся логи читали через far, когда уже давно изобрели tail -f, например. Зато в таких случаях прекрасно прокачивается скилл убеждения :)
Широкие знания позволяют сравнивать одно с другим и применять подходы одних областей знаний в других областях. Продолжая разговор про PHP я считаю, что для того, чтобы реально понимать его достоинства и недостатки стоит пописать на языках со статической типизацией, например, на Java. Также в общем-то во всем. Изучая функциональные языки вы сможете внедрять некоторых подходы этих языков не на синтаксическом, а хотя бы на семантическом уровне. JavaScript тоже изучать стоит ибо это еще более гибкий и свободный (но имеющий конкретную область применения) язык, чем PHP. Вообще по жизни стоит интересоваться много чем еще кроме своей профессиональной области знаний. Можно изучать живые языки, чтобы сравнить их с семантикой языков программирования. Можно изучать природу, чтобы, возможно, в конечном счете найти какую-то интересную аналогию и изобрести что-нибудь этакое компьютерное. Вообще наблюдений за отвлеченными темами часто приводит к интересным выводам и открытиям.
Интерпретатор PHP под Windows содержит ≈сотню файлов и занимает, как нетрудно убедиться, пятнадцать мегабайтов в архиве — даже тридцать, если речь идёт об инсталляторе.
Поэтому я делал бы на Node.js, интерпретатор которого представляет собою единственный файл node.exe из каталога http://nodejs.org/dist/latest/ и занимает чуть больше 4½ мегабайта.
А еще любой современный WYSIWYG редактор поддерживает копирование из Word и вставку чистого текста.
За примером далеко ходить не стоит, все можно сделать даже на демке.
вообще тема в яблочко. Встречали мне спецы которые не могли справиться с простыми задачами. И вообще — даже толком не знаю HTML, не то чтобы говорить о CSS, PHP и много других страшных слов. Но при этом могу сделать сайт или сервис любой сложности. Может он не будет супер-пупер оптимизирован, но он будет работать.
так быть или не быть спецом? тут скорее спец подразумевает наличие бумажки чтобы устроиться на работу, не более. что до меня — у меня вообще нет специальности и работаю я… да! работаю оффициантом в Лондоне в свои 25 лет. Жена, скоро ребёнок, денег хватае. А ИТ — как хобби, для души. Устраивать на работу в ИТ была идея, но отпала — как только устроишься сразу надо будет развиваться профильно, а я считаю что это губительно.
я могу и сайт сделать, и программу, и сервис, и игру. Т.е. ставишь задачу и решаешь, достигаешь цели. Сейчас хочу сделать приложение для телефонов на Responsive Design. И самое интересное — я про это ничего не знаю.
Надо ли мне быть спецом чтобы сделать приложение для телефона если я оффициант? Нет :)
By lamers for lamers