О том, что мне нравится.

Я вот подумал, что я частенько брюзжу, понимаете ли в Ruby нету скобок вокруг аргументов, а в iPhone функции не возвращают коды ошибок… Со стороны вероятнее всего выглядит, как будто старпер вылез из замшелой конуры и рассказывает о том, что мол солнце раньше было ярче и трава зеленее.

Так что, решил, коротенько написать что же мне нравится из программистского (или около программитского)

— Хотя я всего немножко поигрался с Ruby, в конечном счете мне язык понравился. Гибкий и очень быстрый для прототипирования (особенно Ruby on Rails).

— Очень нравится документация в MSDN (описание Windows API). Там все расписано до последней запятой, зачастую с примерами на нескольких языках. Плюс, когда ищешь в Google она чаще всего идет первой или второй строкой

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

— Нравится C#. В основном из-за того, что после C/C++ простые вещи на нем пишутся со скоростью пули (когда не нужно заморачиваться с memory management, поиском библиотек и другими прелестями). Хотя я понимаю, что аргумент ну абсолютно невесомый.

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

— Нравится куча хорошо отлаженого и достаточно вылизанного open source кода, который можно использовать (и тем самым сохранить месяцы, если не годы работы)

— Нравится, что все больше становится бесплатного (и качественного софта для разработки).

Вот такие пироги… Но трава таки раньше была зеленее 🙂

25 комментариев to “О том, что мне нравится.”

  1. Oleg:

    Исправьте, пожалуйста, орфографию. http://tsya.ru/

  2. Мой путь очень похож. И мне определенно нравились(тся) все те же вещи.
    Теперь в iOS SDK мне нравится забота обо мне, как о пользователе системы, с помощью которой я создаю и для которой я создаю. Это может звучать странно, но со временем, как только становишься частью экосистемы, то правила и ограничения здорово помогают развиваться.

    Извините, что нет примером. Это все сложно отловить и пока только на уровне ощущений, но в сравнении с другими системами из прошлого.

    Здорово, писать мелкие приложения, которым пользуются 90% твои друзей и знакомых (да, это возможно!), а не один друг админ или программист. Если нужно, то могу предоставить примеры, но без спроса это была бы самореклама 🙂

    Спасибо.

    • Victor Ronin:

      Примеры всегда приветствуются. Даже в виде саморекламы. Главное, чтобы это было не совсем уж спамом.

  3. Михаил:

    Виктор, не ожидал от вас… Посмотрите http://tsya.ru/

    • Victor Ronin:

      🙂 Поправил.

      Зря не ожидали 🙂 В школе я в одном из полугодий по русскому языку получил двойку.

  4. Определенно трава была зеленее 🙂 Мне нравится удобство создания небольших приложений в C#, например, но однозначно не нравится шлейф фреймворков и библиотек, которые тоже надо таскать с собой. Мало где видел хорошо настроенные машины с WSUS-ами и прочими плюшками, так что приходится заниматься сопутствующими вещами (обновления SQL SERVER EXPRESS), например.
    Очень нравится NSIS 🙂

    • Victor Ronin:

      Насчет C#, как уже написал — таки да, нравиться.

      А вот NSIS, поднял мою бровь… Я может его не вкурил, но после моего недельного опыта, я чуть волосы не стал рвать.
      А вот WIX — это наше все 🙂

  5. CAE:

    MSDN — идеал документации? Когда вместо вменяемого списка возможных ошибок предлагается звать GetLastError и, значит, самому написать десяток тестов на разные ситуации, чтобы выяснить какая именно ошибка будет выдана при отсутствии файла, а какая при отсутствии пути, это, конечно, «верх идеала».
    Зайдите в любой фришный man на clib и удивитесь полноте информации по вызову функции. Местами даже приведены особенности переносимости. Про великодержавный perlport я просто молчу!
    Так что есть гораздо более кошерные примеры…

    • Victor Ronin:

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

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

      М… Не спорю, есть библиотеки которые документированны лучше, чем MSDN. Но MSDN мне импонирует тем, что достаточно высокое качество выдержанно на просто гигантском количестве API.

  6. ctype:

    о. а я по-бурчу:
    — мсдн , да. неплох. хотя сам виндовс апи корявый несколько, правда замечу, что chm формат самый удобный для док (хоть что-то у микрософт получилось такое, что удобно пользовать под линуксом )
    — C# — очень неоднозначный, ну сам язык более менее, а вот фреймворки не очень, очень много глюков при разработке крупных проектов, одна радость, что можно рефлектором читать исходники , а ildasmом править, что и пришлось пару раз делать

    из нравиться :
    — юниксы, вот уже полтора года как перелез и до сих пор радуюсь, насколько толково все сделано для программиста
    — vim , меня очень шокировало, что древняя-древняя консольная программка может быть много удобнее и приятнее, чем супер-пупер навороченные ide.

    • Victor Ronin:

      насчет Windows API — я согласен. Многие его куски оставляют желать лучшего.

      а что нравиться в unix’е? честно говоря мое знакомство с *nix… ну как бы сказать, ну оочень поверхностное.

      • Alexander:

        А вот зря, *nix система — это реально система для программиста.

      • ctype:

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

        • Alexander:

          Еще винда может просто упасть после установки какого нибудь софта и лежать трупом. Причем в схожей ситуации *nix поднимается с нормальными руками быстро, а вот винда может упираться очень долго, хотя бы потому что не так просто понять в чем прикол то.

          • ctype:

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

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

            • Victor Ronin:

              Ясно.

              Одна из вещей, которая меня вывела из себя, то что после переключения разрешения экрана, оно автоматом не возращает старое разрешение через X секунд (как делает винда).

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

              • ctype:

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

                • Victor Ronin:

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

                  • ctype:

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

        • Victor Ronin:

          Понял.

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

          • ctype:

            есть такое дело. издержки «немонолитности» системы.
            у меня пару месяцев две оси параллельно использовались, т.е. работу-работать я уже мог, а вот всякие сканеры-принтеры-сетки пришлось делать постепенно

    • CAE:

      Тоже побурчу 😉 vim — это новьё. Вы сядьте хотя бы за nvi, который в bsd-классике. А лучше за vi из какого-нибудь non-stop unix… Кучи удобств как не бывало. Хотя работать (и плодотворно!), безусловно, можно.