• Почему Go — это плохо продуманный язык программирования

    • Перевод
    Это перевод статьи юзернейма tucnak с Medium, которая получила обширное обсуждение на reddit.com/r/programming.

    image
    Окей, заголовок действительно несколько громкий, признаю. Cкажу больше: я прусь от громких заголовков, все из-за внимания. В этой блогозаписи я постараюсь доказать тот факт, что Go это ужасно продуманный язык (спойлер: это так). Я уже играюсь с Go уже на протяжении нескольких месяцев, первый helloworld собрал, кажется, в июне. Математик из меня никакой, но с тех пор прошло уже что-то около 4 месяцев и я даже успел залить на Github несколько репозиториев и собрать немного звезд! Стоит также упомянуть, что у меня совершенно нет опыта применения Go в продакшне, так что любые мои слова о «поддержке кода» или «деплое» не стоит принимать за единственноверную истину.

    Я люблю Go, я полюбил его как только впервые попробовал его. Я потратил несколько дней на то, чтобы принять идиоматику, смириться с отсутствием дженериков, разобраться с откровенно странным способом обработки ошибок и вы знаете, всеми этими классическими проблемами, так или иначе связанными с Go. Я прочел Effective Go, много статеек из блога Dave Cheney, следил за всеми новостями из мира Go. Я даже могу сказать, что я достаточно активный участник сообщетсва! Я люблю Go и ничего не могу с этим поделать — Go просто замечательный. Тем не менее, я считаю, что Go это ужасный плохо продуманный язык, который делает совершенно не то, что «продает».
    Читать дальше →
  • Приложение для замены SMS и Email уведомлений на мобильных устройствах

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

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

      Мы хотим создать платформу, которая станет альтернативой Email и SMS уведомлениям на мобильных устройствах.

      На сегодняшний день мы выпустили приложения для Android и iOS и опубликовали API для управления своими аккаунтами и отправки текстовых сообщений и изображений.
      Читать дальше →
    • Незаменимые ресурсы для изучения иностранных языков

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



        Читать дальше →
        • +18
        • 22,8k
        • 6
      • Разворачиваем СвоёОблако в облаке. Установка CoreOS

        • Tutorial
        Меня всегда интересовали облачные технологии. В том числе и наиболее трендовые из них — это децентрализация, кластеризация, оптимизация и распределенние всего: вычислительных ресурсов, данных, пончиков и власти. Поэтому я не мог пройти мимо CoreOS, о которой в IT-сообществе сейчас много разговоров, и которая стала для меня отправной точкой для экспериментов.

        Чтобы совместить приятное с полезным, я стал искать подходящее приложение, на котором, с одной стороны, было бы интересно применить облачные технологии, а с другой, — могло бы пригодиться в будущем. Поэтому, я решил развернуть инсталляцию OwnCloud на базе CoreOS.
        Теперь я расскажу, к чему это привело, и по ходу действия приведу ссылки, чтобы интересующийся мог углубить свои знания в предметной сфере. Но если возникнут вопросы — смело задавайте их в комментариях.
        Читать дальше →
        • +14
        • 35,8k
        • 3
      • Очень субъективный обзор JS фреймворков. AmpersandJS, часть 0

        От переводчика: когда я начал разбираться с MVC-фреймворками для фронт-энда, каким-то чудом попалась на глаза эта статья Henrik Joreteg. Сейчас дошли руки перевести ее для Хабра, тем более, что об AmpersandJS на Хабре вообще не слышно. Попробую организовать цикл статей по этому инструменту ребят из &yet, мне кажется, он достоин внимания.

        котики и велосипеды

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

        Angular.js


        за

        1. очень легко начать использовать. можно просто вставить тег script, добавить немного ng- атрибутов в ваше приложение, и вы волшебным образом получаете нужное вам поведение
        2. Angular хорошо поддерживается его основной командой разработчиков, многие из которых работают в Гугле на постоянной основе
        3. большая аудитория/сообщество

        Читать дальше →
      • 50 цитат о программировании всех времён

        • Перевод
        Перевёл после прочтения комментариев к статье «О ненависти к C++». В цитатах можно найти ответы на большинство возникших там вопросов.

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

        49. Lisp — это не язык, а строительный материал.
        — Alan Kay

        48. Ходить по воде и разрабатывать программы, следуя спецификации, очень просто… если они заморожены.
        — Edward V Berard
        Читать дальше →
      • Если жесткий диск сломался

          О чем статья



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

          Обычно это означает, что на жестком диске образовались так называемые bad blocks (бэдблоки), и о возврате такого порченого винчестера наш дальнейший рассказ.
          Читать дальше →
        • Ремейк Caesar III: математическая модель города

            Я помню как играл первый раз в Цезарь 3, это удивительно умная и сбалансированная игра, создает чувство, что город живет своей жизнью и после завершения миссии. Можно провести часы, наблюдая за городом и не вмешиваться в его жизнь: плебеи будут бегать по городу в поисках работы, а патриции жаловаться на неважные условия жизни, торговцы, школьники, лодки, жрецы — этот мир замирает лишь в минуты пауз, давая игроку возможность продумать следующий шаг. Исследуя внутренние алгоритмы игры, я не перестаю удивляться с какой точностью авторы сложили кусочки мозаики, под названием «баланс». За время, проведенное над восстановлением кода оригинальной игры скопилось достаточно материала по макромеханике игры, которым я хочу поделиться с хабрасообществом.


            Plebs are needed!
          • DNSSec: Что такое и зачем

            Предисловие


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

            Читать дальше →
            • +46
            • 32,3k
            • 8
          • Практическое применение DNSSEC

            • Tutorial


            В статье описываются недостатки существующей структуры DNS, полный процесс внедрения DNSSEC на примере доменов .com и .org, процедура создания валидного самоподписанного SSL-сертификата подписанного с помощью DNSSEC.

            Читать дальше →