Инфографика: Жизненный путь Билла Гейтса

На DOU появилась замечательная заметка о жизненных путях трех великих айтишников нашего времени: Билла Гейтса, Стива Джобса, Марка Цукерберга. Описание жизни каждого выполнено в виде инфографики, легко воспринимается и кому-то может пригодится как источник мотивации.

В этой заметке будет показана жизнь Билла. В следующих двух — Стива и Марка. Обязательно посмотрите :)

Жизнь Билла


    Как стать хорошим программистом?

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

    how-people-see-programmers

     

    1. РАЗЛОЖЕНИЕ ЗАДАЧИ НА СОСТАВЛЯЮЩИЕ

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

    Continue reading


      Интервью с разработчиком. В гостях Лев Меренков.

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

      И открывает наш цикл старый мой  друг — Лев Меренков.lev-merenkov

      — Здравствуй, Лев! Благодарю тебя, что согласился пообщаться с нами. Всегда интересно послушать чью-то cool-story :). Расскажи пожалуйста вкратце о себе: где учился, где работаешь, чем занимаешься и как вообще пришел в программирование?

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

      После окончания учебы я сменил много мест работы. Работал и в больших украинских банках, и в крупных международных фирмах за рубежом, и в украинских офисах известных IT-компаний. Для себя я сделал вывод, что только в фирмах, имеющих разработку программных продуктов своим главным  профилем, программист имеет возможность развиваться и ощущать себя в комфортной обстановке. Continue reading


        Преимущества IT-шника

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

        businessman showing idea

        1. Создавать будущее

        Об этом мало кто задумывается, но так оно и есть — программисты и IT-инженеры создают, то, чего еще нет на рынке и появится через год, два, а может пять. Новые операционные системы, социальные сети, мобильные приложения и так далее до бесконечности. Чтобы создать какой-то продукт, который будет популярен в массах через год, нужно писать его как минимум год назад. Конечно, все зависит от объема приложения, аудитории и так далее. Приятно в профессии IT-шника, даже лучше сказать программиста то, что он создает или пишет, то, чего еще нет и то, чем еще не пользуются; но он уже знает об этом и видит как оно станет используемым и популярным. Осознавать это достаточно приятно, чтобы люди не говорили, но факт остается фактом. Создавать то, чего еще нет — это круто!
        Continue reading


          Характеристики плохого программиста

          Human Heads
          По моему опыту существует несколько черт, присущих плохому инженеру-программисту:

          1)    «StackOverflow – робот»:
          Когда этот человек сталкивается с ошибкой он первым делом лезет в поисковик Google и применяет первое попавшееся ему решение. Здесь проблема заключается совсем не в копировании с сайта Stackoverflow. Если я не ошибаюсь, это прекрасный ресурс, если не самый лучший. Проблема заключается в неосознанном использовании его без понимания последствий. Ситуация такова, что происходит применение решений этого сайта без полного понимания контекста и осознания, относится ли это решение к текущей проблеме. Чаще всего происходит следующее: я часто встречал людей, которые убеждены в том, что  тот код, который они находят на онлайн-форумах правильнее, чем тот код/система, который они разрабатывают.
          Continue reading


            Рекомендации по именованию переменных и методов

            92430

            1. Используйте достаточно короткие и длинные имена переменных в каждой области видимости кода. В большинстве случаев, длина составляет 1 символ для счетчиков в цикле, 1 слово для условия или переменной цикла, 1-2 слова для методов, 2-3 слова для классов, 3-4 слова для глобальных переменных.

            2. Используйте специфические имена для переменных. Например, имена «value», «equals», «data» не являются валидными именами где бы их не использовали.

            3. Используйте смысловые имена для переменных. Имя переменной должно передавать точный смысл её содержимого.

            Continue reading


              Performance Test: Map

              Продолжаем рассматривать Java Collection Framework (предыдущая статья) и переключаемся на дерево классов Map, а именно на список наиболее распространенных реализаций интерфейса Map. Давайте для начала вспомним как выглядит упрощенная иерархия классов дерева Map.

              Screen Shot 2014-07-17 at 9.27.16 PM

              Continue reading


                Уолтер Айзексон — Стив Джобс

                Безумцы, которые думают, что смогут изменить мир, на самом деле его меняют

                Хочу сделать обзор этой действительно сильной книги о величайшем лидере в мире компьютеров, дизайна и продаж – Стивене Джобсе. Сразу скажу, что не являюсь ярким фанатом Apple, из их устройств имею ноутбук MacBook, на котором пишу данную статью и планшет iPad2, который изначально подарил своей жене.

                image001.jpg.jpeg

                Это книга-биография, которая была начата Айзексоном ещё при жизни Стивена Джобса в последние годы, когда тот уже боролся с раком. Джобс сам попросил Уолтера написать её. В книге рассказывается кто такой Джобс, откуда он взялся и как он основал компанию Apple со Стивеном Возняком. О том, как на протяжении нескольких десятилетий Джобс создавал продукты Apple. И то, как именно он создавал продукты, меня больше всего поразило в данной книге. Айзексон сделал неимоверный труд, описав жизнь Джобса в переплетении с его личной жизнью и работой в Apple, Atari, Next, Pixar. Герои книги — это коллеги, семья, родители Джобса и даже известные музыканты, политики. Автор собрал рассказы и интервью разных людей и самого Джобса, поэтому она выглядит не субъективной.

                Continue reading


                  Многострочное сообщение в JOptionPane

                  При разработке графического интерфейса на Swing, порой, возникает необходимость выводить небольшие сообщения для пользователя. Для этого уже существует встроенная возможность в виде класса JOptionPane, который содержит массу всевозможных статических методов на все случаи жизни. Он используется, как правило, для коротких сообщений или вопросов в одну строку.

                  Например:

                  Короткое сообщение

                  JOptionPane.showConfirmDialog(MainFrame.this, "Вы уверены, что хотите выйти?", "Выход", JOptionPane.YES_NO_OPTION);

                  Continue reading