Найти в Дзене
#РазмышленияВслух Сегодня в противовес рассказам о клевых инструментах разработчика хочу порассуждать о других, зачастую полезных, но, сука, таких неудобных инструментах, что ты используешь их только по причине отсутствия альтернативы и ровно до тех пор, пока альтернативу не находишь. Представим себе - по учебе или по работе возникает необходимость в какой-то программе. Ты заходишь на сайт, качаешь инсталлятор (~100 Kb, ерунда). Запускаешь. И понеслась. Инсталлятор тебе ставит программу загрузчик (хаб, стор, маркетплейс, можете называть эту приблуду как угодно). Через эту срань ты начинаешь ставить нужную тебе программу (не сразу, потому что в меню загрузки еще надо разобраться и нужно не забыть поснимать кучу предустановленных по умолчанию, но нахер тебе не нужных флагов). Ок, пошла установка. Иона идет и идет и идет и идет и идет и идет и идет. И идет! А место на диске все тает и тает и тает и тает. И тает! И вот от свободных 150 Гб осталось 50, а ты просто поставил прогу для работы. Ведьмак третий, сука, весит меньше. И потом ты эту прогу запускаешь. И ждешь, пока она загрузит кучу дополнительных пакетов, все покэширует, сохранит. Это еще полчаса и еще 50 Гигов. Причем, несмотря на то, что ты все ненужные галки поснимал, половина из того, что подгружется, тебе также нахер не упала, но прога из-за кривой архитектуры и неповоротливости работать без этого великолепия просто не будет. И вот сидишь ты такой и ждешь, когда начнешь уже работать. Хорошо, если после этого все будет работать нормально. Ок, перетерпели и ладно. Но нет, ты запускаешь и оно глючит. Ну естественно, не может махина в 100 гигов нормально работать даже на неплохом железе. И вот настает счастливый день. Ты находишь альтернативу! Не такую навороченную, зато шуструю, покрывающую твои потребности на 99.9% и занимающую на диске 1.1Гб. Ты с улыбкой удаляешь старого монстра-левиафана с компа, процесс деинсталляции заканчивается и... На диске как было 10ГБ свободно, так и осталось. Ах да, забыл сказать, разрабов таких приложений не учили чистить систему за своим говнокодом после деинсталляции. И ты начинаешь лазить по системе и искать, где эти файлы. А они, сука, ВЕЗДЕ! Засрано просто ВСЕ пространство диска. Еще минус несколько часов из жизни на чистку любимого компа от хлама. После этого ты устанавливаешь сделанную прямыми руками, за меньшие деньги или вообще бесплатно, программу, которая делает все то же самое, но лишена ВСЕХ недостатков. Как такое возможно? А я скажу. Такое возможно, когда разработкой занимаются не любящие свое дело крутые профи, а "эффективные менеджеры", которым важно не качество продукта, а сроки. Главное выкатить вовремя. Пусть недоделанный, зачастую неработающий совсем (привет расширение C# версии 2.0 для VS Code) "продукт", но зато раньше конкурентов. Вот и получается, что времени на приведение системы в порядок нет, кодовая база загнивает, на нее второпях лепят заплатки, те тоже прогнивают, и мы имеем то, что имеем. Крупные корпорации могут залить это все деньгами и человеко-часами, в результате такие проекты могут принимать устрашающие масштабы. К сожалению, пропорционально росту масштаба падает Usability, но все всё равно пользуются. Кто по привычке, кто потому что поменять - еще дороже (попробуйте IT отдел на 100 человек пересадить на новый язык или IDE). Но есть самородки (часто из Open Source и Free Software движения), которые редко (потому что их мало), но метко выдают программные шедевры, которые ты используешь и кайфуешь. В память о Visual Studio, Unity и Windows. Когда-то вы были топ...
1 год назад
Данный пост я не смог отнести ни к одной рубрике. Речь пойдет об очень простой, но очень важной вещи, которую я почему-то понял относительно недавно. И как часто оно случается, когда что-то попадает в поле твоего зрения - ты начинаешь видеть это повсюду. Обратите как нибудь внимание - если вы готовите серьезную покупку (например автомобиль) и изучаете конкретную марку - обязательно начнете видеть эту марку чаще на улицах. А возможно даже заметите, что во дворе у вас каждая четвертая машина этой марки. Или если выбираете имя ребенку - точно начнете слышать, как мамочки на площадках отовсюду зовут своих детей ИМЕННО ЭТИМ ИМЕНЕМ. Так получилось и с идеей, о которой я сегодня расскажу. Она завладела моим вниманием и, и вот уже несколько людей, за блогами которых я слежу, эту мысль озвучивают. Идея проста - если хочешь начать какой-то проект - начни СЕЙЧАС. До жути банально, правда? Но почему-то очень мало кто так делает. А ведь, если подумать, то, начав сейчас, через год ты получишь прогресс длиною в год. А через пять лет - длиною в пять лет. А если начать через год, то через год будет ноль. Я когда плотно над этим подумал, вдруг осознал, что год с точки зрения течения жизни - это немного. Особенно с возрастом. Год в 35 пролетает намного быстрее года в 25. А опыт, который можно получить за год занимаясь чем-то - огромен! И даже если проект провалится, через год ты будешь при своих, но с колоссальным опытом за плечами! Скажу по секрету, так вышло и с этим блогом. Я откладывал старт несколько лет. А потом понял, что если бы начал несколько лет назад, как хотел, то имел бы уже многолетний опыт. Так что не откладывайте свои проекты. Легче со временем не станет. Если сейчас у вас учеба и сессия - потом будет работа и начальник. Если сейчас работа и начальник - потом будет жена(муж) и дети. Если сейчас жена(муж) и дети, то потом будут жена(муж) и дети-подростки. И так далее. Легче не станет, такова жизнь. Поэтому начинайте сейчас. Прямо сейчас! В комментариях жду идеи по названию рубрики для таких постов 😉
1 год назад
#ВечныйЧитатель На днях закончил читать книгу Бронни Вэр "Пять откровений о жизни". Вот аннотация книги: "Книга мемуаров самой известной в мире паллиативной сиделки, переведенная на 30 с лишним языков и прочитанная более чем миллионом человек по всему миру. В юности Бронни Вэр, поработав в банке, поняла, что ей необходима работа «для души». И хотя у нее вначале не было ни опыта, ни образования, она устроилась работать паллиативной сиделкой. Несколько лет, которые она провела рядом с умирающими, оказали на нее очень глубокое влияние и определили направление ее жизни. Вдохновленная историями и откровениями своих умирающих пациентов, Бронни Вэр опубликовала интернет-пост, где описала пять самых распространенных вещей, о которых люди жалеют на пороге смерти. В первый же год этот пост прочитали более трех миллионов человек по всему миру. По просьбе многих читателей Бронни написала эту книгу, где она подробнее рассказывает о своей жизни, о взаимодействии с людьми на пороге смерти и о том, как следует жить, чтобы умереть с легким сердцем." Книга бестселлер, но на меня произвела неоднозначное впечатление. Сам основной посыл хорош, истории героев цепляют, иногда до глубины души. Читается книга легко, и слог у автора хороший. Не понравились мне отношение автора к жизни. Несколько раз мне хотелось по ходу прочтения сказать "прекрати уже страдать херней и займись делом". Как я понял многие близкие говорили ей такие вещи, она дико от этого страдала, она очень ярко эти страдания описывает, но ничегошеньки не меняет в своей жизни на протяжении очень продолжительного времени (десятилетий). Она катается по стране на раздолбаном джипе, бомжует, перебивается случайными заработками и так и живет до глубокой зрелости. Она мечтает об отношениях, но разрывает эти самые отношения с парнем, которого "дико любит", но их жизненные пути слишком разные, потому что он ест мясо, а она веганка (эта причина указана первой в списке). В общем, автор - одна из тех людей, жизненный уклад которых не вписывается в мою картину мира. Картину, в которой чтобы чего-то добиться, нужно работать, а не посылать лучи любви и добра вселенной и окружающим. Тем не менее, книгу я нашел очень полезной по двум причинам. Первая - это истории героев и выводы, которые они сделали перед смертью. Это ценно, несколько мыслей я даже выписал в конспект. Вторая - полезно знакомиться с точкой зрения людей, которые мыслят не так, как ты. Это очень расширяет кругозор. И да, я позицию автора в очень многих вопросах не разделяю, иногда книга меня даже раздражала, и мне хотелось ее закрыть и бросить (скажу по секрету, несколько абзацев в конце книги я-таки пробежал по диагонали), но теперь я понимаю мотивацию таких людей, их ход мысли. Я стал лучше разбираться в людях. Это однозначно win. И эта причина, вероятно, даже перевешивает лично для меня первую. В общем, рекомендую.
1 год назад
#РазмышленияВслух. Продолжая начатую здесь тему. Хочу сегодня порассуждать на тему функциональных языков в роли первых языков программирования. Первое, что стоит отметить - я не встречал людей, которые начали свой путь в программирования с функционального языка. Если Вы такой - напишите мне, я с радостью с Вами пообщаюсь. Поэтому все нижеследующее - лишь мое скромное субъективное мнение, основывающееся, тем не менее, на достаточно богатом опыте преподавания и программирования. Итак, для тех, кто не в теме - функциональное программирование - это отдельная парадигма, в корне отличающаяся от императивного. Для успешного программирования на функциональных языках требуется иной ход мысли. И зачастую, для усвоивших императивный подход данный ход мысли остается непостижим. Это можно сравнить с попыткой правши писать левой рукой. Ты, конечно, что-то напишешь, но настрадаешься и при первой возможности возьмешь ручку в правую руку. Ну и результат, очевидно, будет в лучшем случае, посредственным. И для меня пока открытым остается вопрос - данная неспособность постичь функциональный подход связана с привычкой или устройством мозга? То есть, удалось бы побороть эту неспособность, если бы первым языком был функциональный, и была бы столь же выражена в этом случае неспособность постичь императивный подход? Не знаю, но очень интересно. Делитесь мыслями на этот счет. А пока несколько слов про известные мне функциональные языки. Haskell. Это моя вторая любовь (после C#). Возможно, причина в том, что мне попался хороший учебник (Уилл Курт, "Программируй на Haskell" - образец учебника по программированию, имхо), но более вероятно другое. Haskell - это лаконичный, последовательный, строгий, изящный и в то же время богатый язык. Программировать на нем - как обедать в хорошем ресторане. Вряд ли удастся делать это часто, но однажды попробовав, ты захочешь повторить. И я думаю, что Haskell может стать хорошим первым языком, при наличии грамотного преподавателя. Lisp. Надеюсь, среди читателей не слишком много адептов данного языка (если вы есть, то не кидайтесь сильно тапками (я конечно потерплю (при условии, что вы не отпишитесь (но это не точно)))). А если серьезно, мне импонирует идеология Lisp (как ее понимаю я (все есть список (простите, я опять не удержался))), но уж очень он недружелюбен к программисту. Может это у меня так сложилось, но для меня кодить на лиспе - боль (при всей моей глубокой симпатии к языку). Но, если рассматривать его как первый язык, то это может стать хорошей школой, при наличии грамотного наставника. К тому же, он может воспитать хорошее чувство структуры кода, а этого многим неофитам не хватает. Так что Lisp как первый язык - may be. Вот такой получился спич. Готов к конструктивной критике и диалогу в комментариях. 🤝
1 год назад
#ВечныйПобедитель №3. Заключительная часть истории про поступление. Итак, у меня был диплом областной олимпиады, а значит я получил право БВИ в ВГУ. Обеспечив себе тем самым тыл, я решил попытаться покорить вершину повыше и "замахнулся", как говорили тогда в моем окружении, на мехмат МГУ. Я навел справки (я хз как, учитывая, что интернета не было, я уже не помню) и выяснил, что мой диплом дает мне максимальный балл на письменном экзамене по математике (по сути самом сложном из испытаний). Оставалось сочинение и устная математика. К ним нужно было готовиться. Также я имел возможность получить БВИ, если бы закончил школу с золотой медалью. У меня были все шансы ее получить (я был отличником), и этот вариант я тоже держал в голове. И я начал готовиться. Весь остаток 10-го и весь 11-й класс был направлен на это. Я приходил из школы и садился за математику (не забывая и об остальных предметах). И все складывалось неплохо. Мне удалось с помощью Татьяны Владимировны раздобыть книги по поступлению, примеры вступительных в МГУ, задачники повышенной сложности. Подготовка шла полным ходом. К сожалению, с золотой медалью меня прокинули (притом в аттестате у меня одни пятерки), но об этом я расскажу отдельно как-нибудь. Поэтому оставался только вариант со сдачей вступительных. И вот мы собрались и поехали в Москву. Поехали заранее, чтобы было время освоиться и еще подготовиться, благо у нас было где остановиться - в Москве жил тогда мамин брат, мой дядя. Здесь стоит сказать отдельное спасибо моим родителям. Учитывая наше тогдашнее финансовое положение, я хз, как они смогли все организовать (сейчас я понимаю, как это было непросто). По приезду был сразу приобретен учебник по подготовке к устной математике в МГУ (прям целевой, то что надо). Мы подали документы, в приемной комиссии нам рассказали о формате экзаменов. За устный можно было получить до 10 баллов, за сочинение - до 5, но мне сразу сказали, что поставят либо 3, либо "неуд", на большее не рассчитывай. Я в душе подумал "ага, щас, они еще моих сочинений не читали, я то точно получу минимум 4" (я тогда уже успел немного словить звезду). Как же сильно я ошибался... Я напишу об этой истории отдельно, она того заслуживает, это очень поучительно. В общем, все баллы складывались в кучу и по ним шел отбор. Десятка у меня уже была. На устном экзамене я получаю 7 баллов. Это был фактически провал, потому что 5 было уже "неуд". Но это отдельная история. За сочинение я получил 3 (как удивительно!). Итого в сумме 20. Я смотрел на свои баллы и понимал, что это - "полупроходной" балл. То есть 50 на 50. И вот день зачисления. Из этого сделали отдельное событие, всех абитуриентов и их родителей пригласили в МГУ, посадили в большую аудиторию. Нас приветствовал сам Садовничий (глубоко мною уважаемый). И вот доходит дело до "полупроходных". Таких как я было человек 10 и на всех бюджетных мест уже не хватало. Декан факультета (по моему тогда ио декана был Владимир Николаевич Чубариков) по очереди поднял нас всех, спросил, откуда мы приехали. А потом переглянулся с Виктором Антоновичем и спросил: "Ну что, найдем места?". "Найдем, конечно" - ответил ректор. Это означало только одно - нас взяли и я отныне студент мехмата МГУ! Несколько выводов, которые я сделал из этой истории: 1. Если в соревновании тебе трудно, помни, что сопернику также трудно. Я думал, что на области я пролечу как фанера над Парижем. Но, оказалось, что трудно было не только мне. 2. Не бойся ставить большие цели. И пытайся к ним прийти. Все великие вещи делаются людьми, которые когда-то были простыми детьми, но в какой-то момент не побоялись попытаться. Часто ты даже ничего не потеряешь, если попытаешься. Вот такая вот история в трех частях. А в одном из следующих постов я расскажу, как я все это про*бал...
1 год назад
Если нравится — подпишитесь
Так вы не пропустите новые публикации этого канала