bash.im ithappens.me zadolba.li

Образование

12372

Наступая на свежие грабли

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

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

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

Мне могут возразить про новые решения взамен устаревших — возможно, так, но помните: «устаревшие» писали, возможно, ещё для процессора 80286, 25 МГц, 512 КБ RAM, экономя каждый такт и байт, а вы щедро разбрасываетесь гигабайтами и гигагерцами. Итог предсказуем: огромный неповоротливый монстр из кривых и сырых библиотек классов, худо-бедно ворочающийся на суперновой девелоперской тачке, но виснущий у пользователей.

Слово RFC вообще многие видят впервые. Некоторые, правда, что-то слышали про ITIL: так вот, те RFC — это другие RFC. Правильно, зачем нам читать унылый формальный документ на английском, когда можно на форуме поискать тему «как работает сервер ХХХХХ?» Ну, несколько ключевых команд не реализовали, ну, некоторые стандартные «расширили», ну, потом пользователи плюются — так это потому, что пусть нашу программу используют, а не какую-то там!

Общего представления об интернет-протоколах они могут вообще не иметь: считают, что HTTP отличается от SSH только номером порта, например. Не знают, что доменное имя www.site.ru совсем не обязательно означает веб-сайт на сервере site.ru и совсем не обязательно на российском.

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

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

Вот если бы это ещё наша система образования поняла…

12366

Фурье (не путать с фурри)

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

— Да я вообще не понимаю, зачем мне вся эта ерунда! (Учится парень на прикладной математике и физике, там же, где и я, только курсом помладше.) Я вот прогать хочу, я с пятого класса этим занимаюсь, а у нас там проги мало, а куча дерьма какого-то: теорфизика, матан да вычмат!

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

— Да ну вот, на вычмате мы матрицы раскладываем… (Минута жалоб.) И на кой оно мне?..

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

12362

Разберись или разорись

Не айтишник — будь добр, не разбирайся в айти?

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

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

А чем отличается айти? Говорите, смартфон? Пожалуйста. Знаю товарища, которого в магазине уговаривали из-за прохудившегося аккумулятора поменять весь аппарат. Уверяли, что если заменить только аккумулятор, увеличения продолжительности работы от одной зарядки не будет. А когда я объяснил ему, что его пытаются раскрутить на дорогую покупку, отмахивался: вот этот первокурсник за прилавком — специалист, а ты, с дипломом за плечами — кто? Ну и что, что чинить сам умеешь. Профессиональным продавцом ведь не являешься! Ну, вообще-то, ему ещё и самому аппарат новый очень хотелось. Ладно. Но когда за примитивную операцию вроде замены дисплея берут в пять раз дороже, чем стоит запчасть в магазине «поменяй сам», а за замену шлейфа или гнезда питания — в двадцать раз? И это ещё не самая маленькая маржа. Когда в офисе опсоса специально обученный человек навязывает неоптимальный тариф, а телефонные мошенники — подписку на ненужную услугу? Когда всучивают «защитную» наклейку, которая на поверку оказывается просто голограммой, и человек, прекрасно разбирающийся в другой области, но являющийся полным нубом в принципах работы СВЧ-приёмопередатчиков, эту наклейку покупает? Наконец, когда в салоне связи предлагают платную услугу по созданию аккаунта в Google Play или App Store, и не факт, что не записывают пароль куда-то у себя?

Хотите, чтобы вас не обманули? Разбирайтесь во всём!

12359

Не тронь юзера, хлеб приносящего

Как я был удивлён, когда прочитал пост про вредителя, который гордился своими «достижениями»! Я раньше и не думал, что в нашем племени есть такие.

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

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

Так вот, поганец. Желаю тебе, чтобы у тебя случилась такая же ситуация. Позор таким, как ты! Мы должны помогать людям, учить их. Именно этим мы и занимаемся, именно за это получаем свой хлеб. А таких, как ты, надо с позором гнать из IT, подстёгивая ссаными тряпками.

12339

В облаках многолетнего опыта

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

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

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


Препод что-то рассказывает нам, показывая на экране одного из компов (о проекторах тогда даже и речи не шло). Мы, соответственно, стоим вокруг него кучкой, морщась от перегара. И тут препод замечает на клаве какой-то мусор. Далее со слов одноклассника, стоявшего ближе всех к компу:

— И тут он такой: «О-о-о, пуши-и-инка!» — и пфу-у-ух на неё! Я чуть сознание не потерял…


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


В то время (шёл 2000 год) компов почти ни у кого не было, знаний о них — тоже. Мои одноклассники компы увидели, похоже, только на этих занятиях. А у меня за плечами уже было два года отличнейших компьютерных курсов (жаль, что таких сейчас днём с огнём не сыщешь) и приличный объем проглоченной и перелопаченной литературы о компах (для того моего уровня серьёзнейшие вещи типа книжек Фигурнова). Я не хочу хвастаться, но это было так. На информатику я ходил лишь потому, что препод не разрешил пропускать занятия, несмотря на мою корочку о курсах.

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

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

— Ты что делаешь? Ты зачем так сделал? Ты мне помехи на компьютере создаёшь!

Дальше продолжать работу от смеха не смог.


Это я вот к чему вспомнил? Да к тому, что у нас ни в школе на информатике, ни тем паче на нынешних «компьютерных курсах» не учат ничему полезному — только как «нажать туда», «открыть то» и «сделать это». Этому и обезьяну научить можно. Я с теплотой вспоминаю два года учёбы на курсах, где я узнал много полезного, чем пользуюсь до сих пор (Офис, к примеру, я знаю именно оттуда), и где я продолжил бы учиться уже программированию, если бы компьютерный класс этой конторы не закрылся в нашей школе (да и вообще, по-моему, закрылась и сама контора). Пока наших детей будут учить вот такие учителя, а сами дети не возьмутся за что-нибудь сложнее «контактиков» и игрушек и не будут учиться думать головой, у нас будут юзвери, боящиеся компа и поражающие админов и саппортов своими перлами.

12337

Чему я могу научиться сегодня?

Работая в IT более десяти лет, я повидал всякое. О многом из этого «всякого» уже множество раз было писано-переписано здесь, на IT happens. Встречаются и безалаберные пофигисты, и откровенные ламеры, мнящие себя гениями IT, и простые хорошие сотрудники техподдержки, сисадмины, программисты…

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

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

Но так быть не должно — и вот почему. Одно дело, когда информационные ресурсы или устройства не работают по вине администратора, который не рассчитал, недосмотрел, не подготовился — и совсем другое дело, когда «тыжадмина» дёргают по малейшим, самым незначительным поводам, вроде отсутствия звука, нежелания принтера печатать и так далее. Что стоит самому выполнить минимальный набор действий, прежде чем кричать караул и писать служебки во все инстанции? А всего-то и надо — проверить подключение кабелей, воткнуть наушники в другой компьютер, зачастую даже — просто перезагрузить устройство. Но нет, зачем это делать — ведь есть «тыжпрограммист», которому «за это» платят зарплату, который просто по роду деятельности обязан это уметь. Ну так он-то и умеет, и знает — но вы покажите мне админа, который бегает к менеджеру с вопросом, как провести переговоры с провайдером, к бухгалтеру — как купить новый компьютер или сервер, к юристу — как заключить договор найма квартиры или страхования машины… Я не говорю за всех — может, и есть такие. Но убеждён, что большинство нормальных айтишников старается решить эти вопросы самостоятельно, ищет что-то в интернете, советуется с друзьями и коллегами. И заметьте — речь идёт не об узкопрофессиональных вопросах вроде управления проектами, нюансов бухучёта или тонкостей судебного процесса, а о самых обычных, можно сказать, банальных, вещах, с которыми каждый человек сталкивается если не ежедневно, то достаточно часто.

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

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

Желаю всем успехов, взаимопонимания и уважения.

12331

Царица всех профессий

Эй, ребята, а не зазнались ли вы? Не слишком ли горды своей профессией? Я, конечно, всё понимаю, но этого я не понимаю. Если честно, сейчас вы мне напомнили вузовских преподавателей с гуманитарного факультета. Женщина, что вела лекции по философии, была твёрдо уверена и стремилась убедить всех, что она — Б-г и Судья, Альфа и Омега. Уверяла нас, что философия — наука, что это не просто наука, а царица всех наук, что именно благодаря философии начала развиваться математика (да и вообще наука). Любую другую, противоречащую её «религии» и «культу», преподаватель отвергала и называла чуть не еретиками тех, кто был с ней не согласен. Ваше мировоззрение чем-то напоминает её. Если бы она пришла в лечебницу, то там она была бы больной, а не пациентом, если можно так выразиться. Налицо были видны все её комплексы и отклонения психики.

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

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

Да, есть профессии, которые я считаю некомпетентными и бессмысленными, но, наверное, мне ещё не дано их понять. Придёт время, и всё встанет на свои места.

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

12329

С обжимкой в руках и тоской в глазах

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

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

Вы не сможете научить юзеров, потому что они не хотят учиться. Но не потому, что они такие тупые — поверьте, они всё прекрасно знают и понимают, — а потому, что вы выполняете за них их работу. Зачем учиться работать, если гораздо легче набрать номер и сказать заветную фразу: «Ой, а у меня не работает, а оно глючит, а ка-а-ак…», если после этого придёт этакий джинн от мира IT и выполнит все желания, пока юзер будет хлебать чай и жрать конфеты? А вот если юзер научится выполнять работу, да ещё и будет её выполнять, то работать придётся уже ему, и переложить свои обязанность на мальчика на побегушках с обжимкой в руках и тоской в глазах, уже — ах, как жаль! — не получится.

Я видел много тётенек-бухгалтеров, которые паниковали от любого месседжбокса и смотрели на окно Экселя, как корова на новые ворота, но стоило им только поблочить контактики/котяток, как эти тётеньки тут же проявляли высокое мастерство владения прокси-серверами, анонимайзерами и прочими способами обхода блокировки, да так, что дивились даже бывалые сисадмины. Многие из этих тётенек имели стаж борьбы с админами ещё с 90-х годов и могли искусно довести последнего до инфаркта. Как только админ начинал идти против их воли, компы начинали гореть и глючить, винда улетала в синий экран, винты начинали стучать и умирали, а сеть тормозила безбожно. Так на моей памяти были доведены до увольнения трое человек, пока не выяснилось, что вся бухгалтерия, секретарша и обе юристки могут, будучи разбуженными посреди ночи, по памяти рассказать о 200 ключах реестра и особенностях настройки пяти моделей роутеров, но при свете дневном они все становились классическими юзерами-блондинками, тупее которых только баобаб. А послушный, хоть и немного затраханный админ бегал и печатал за них ведомости, проводил товары…

12323

Дефрагментировать до прилива байтов

Попал ко мне компьютер с криво разбитыми дисками: огромный D: и крохотный С:. Надо переразбивать. Как? Всемогущий Гугл знает всё. Лезу, нахожу статью: «Как увеличить размер диска C: за счёт другого логического раздела». Сохраняю на рабочий стол. Закрываю Огнелиса. На рабочем столе лежит сохранённый файл. Только вот имя отображается не полностью:

Как увеличить размер…

Вот вы бы о чём подумали?