• Android Development Tutorial. Часть 2/?

    • Перевод
    Ларс Вогель — евангелист Eclipse.
    Под катом Вы обнаружите продолжение перевода его статьи, которая описывает процесс создания Android-приложений с помощью Eclipse. Используется Eclipse 3.6, Java 1.6 и Android 2.3 (Gingerbread).
    Часть 1
    Читать дальше →
  • Android Development Tutorial. Часть 1/?

    • Перевод
    Ларс Вогель — евангелист Eclipse.
    Под катом Вы обнаружите перевод его статьи, которая описывает процесс создания Android-приложений с помощью Eclipse. Используется Eclipse 3.6, Java 1.6 и Android 2.3 (Gingerbread).
    Часть 2
    Читать дальше →
  • Архитектура Android

      Автор перевода и источник: Максим Юдин

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

      Для разработки приложений под платформу Android потребуется набор инструментов и библиотек API — Android SDK, последнюю версию которого вы можете найти здесь.

      На представленном ниже рисунке показана архитектура ОС Android.



      Читать дальше →
    • Как программистам не дают больше ничем заниматься

      • Перевод


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

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

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

      Это очень любопытный феномен, который я наблюдал неоднократно, во многих ситуациях и организациях, и не только со мной. Дошло до того, что теперь в некоторых проектах я активно избегаю писать код (или притворяюсь, что не умею), потому что хочу добиться доверия со стороны пользователя или заказчика (например), чтобы он разрешил мне заниматься планированием и составлением технических заданий. Но как только я что-нибудь напишу, то сразу становлюсь в команде «разработчиком». И останусь им навсегда.
      Читать дальше →
    • Полусинтетический организм с шестью основаниями ДНК теперь умеет размножаться

        По крайней мере с момента появления последнего общего предка всего живого на Земле примерно 3,5 млрд лет назад генетическая информация хранится в четырёхбуквенном алфавите, который распространяется и считывается в виде двух базовых пар. Это четыре азотно-углеродно-водородные основания: аденин (А), тимин (Т), цитозин (С) и гуанин (G). В силу своего химического состава они связываются в базовые пары в строгом порядке, не допускающем вариантов: только A-T и С-G. В такой четверичной системе закодирована вся жизнь на Земле.

        Главная цель синтетической биологии как науки — создание новых жизненных форм и новых функций у существующих организмов. Логичный путь к достижению этой цели — разработка полусинтетических организмов с расширенным набором базовых пар. Кроме четырёх оснований живой природы они могут содержать пару синтетических оснований, образующих третью искусственную базовую пару: X-Y.

        Предыдущие попытки создать такой полусинтетический организм достигли апогея в 2016 году. Тогда генетикам удалось вывести штамм Escherichia coli, которая извлекала необходимые синтетические трифосфаты из окружающей среды и использовала их для репликации плазмид с синтетическим основанием. Это был первый случай репликации полусинтетической ДНК, но всё-таки такой полусинтетический организм был не совсем полноценным. Просто хранения и передачи синтетической базовой пары недостаточно. Чтобы нести какую-то пользу, она должна быть полностью функциональной, то есть способной в конечном итоге через РНК на экспрессию белков. И это будут белки, создать которые не способна ни одна естественная форма жизни в четверичной системе.
        Читать дальше →
      • WebAssembly: начало новой эры

        • Перевод
        Веб ожидает большое будущее.
        Вчера Брендан Айк “взорвал” сообщество веб-разработки: веб получит новый низкоуровневый бинарный компилируемый формат, который будет работать гораздо лучше, чем JavaScript.
        Google, Microsoft, Mozilla, а также несколько независимых специалистов работают над новым проектом в W3C WebAssembly Community Group, и то, над чем они работают, совсем не маленькая вещь.
        Читать дальше →
      • Сайты-майнеры научились прятать браузер на компьютерах пользователей


          Всё бóльшую популярность у злоумышленников получает партнёрская программа Coinhive по майнингу криптовалюты в браузерах пользователей (и другие JS-майнеры). Ничего не подозревающие юзеры заходят на сайт — и не обращают внимания, что у них резко возрастает нагрузка на CPU (Coinhive майнит Monero на алгоритме CryptoNight, который создаёт большой блок в памяти и предотвращает внутренний параллелизм, поэтому майнинг исключает использование ASIC и наиболее эффективен именно на CPU).

          Злоумышленники продолжают взламывать сайты и размещать скрипты для майнинга. То же самое продолжается с расширениями для браузеров. Недавно они внедрили майнер CryptoLoot даже в скрипт CookieScript.info, который помогает другим сайтам показывать предупреждение об использование кукисов по требованию Евросоюза — это самый популярный бесплатный сервис такого рода, его используют тысячи других сайтов, иначе им грозит штраф от Евросоюза до $500 000.

          На деятельность злоумышленников можно было смотреть с усмешкой: ну сколько они там сгенерируют за две минуты, которые пользователь проводит на сайте? Эфемерная природа майнинга в браузере оставалась главным недостатком такого рода зловредов. Но специалисты Malwarebytes Labs отмечают, что владельцы «майнинг-ботнетов», к сожалению, сумели устранить этот недостаток. Теперь майнинг на компьютерах пользователей продолжается и после того, как они покинули заражённый сайт. И даже после закрытия браузера.
          Читать дальше →
        • Как мы контролируем качество кода в Браузере для Android. Лекция Яндекса

            Автор этой лекции — Константин Заикин kzaikin, руководитель группы разработки Яндекс.Браузера для Android в Санкт-Петербурге. Он рассказал об инструментах Android-разработчика и всей команды, а также о том, как справляться с legacy-кодом, публиковать большой проект вовремя и улучшать качество кода.


            — Друзья, привет. Я очень рад, что вас так много сегодня пришло. Я приехал из Питера, в Яндексе работаю около шести лет. Успел засветиться в Картах, Такси, Метрике и Поиске. Уже два года я работаю над Яндекс.Браузером для Android.

            Читать дальше →
          • О разработке одного desktop-приложения на Python

              Всем привет. В этой статье я хочу рассказать о разработке программы с открытым исходным кодом для оффлайнового хранения заметок — OutWiker. Этим проектом я занимаюсь в свободное время, первая версия программы вышла в далеком 2010 году, и OutWiker до сих пор продолжает развиваться. Так уж исторически сложилось, что кодом я занимаюсь практически в одиночку (хотя изредка получаю полезные отдельные патчи), но зато пользователи активно участвуют в переводе программы на свой родной язык и иногда присылают стили оформления для страниц, которые затем я включаю в сборку. А уж о том, сколько интересных идей они присылают, и говорить не стоит.


              Что такое OutWiker


              Когда-то я писал об этой программе на Хабре, но это было так давно, что прежде чем говорить об особенностях внутреннего устройства и процесса разработки, нужно сказать, что представляет собой программа с точки зрения пользователя. Все ссылки, связанные с проектом даны в конце статьи. Итак, OutWiker — это программа для хранения заметок в виде дерева, в англоязычном интернете такой софт обычно называют outliner (поэтому у программы такое название). Среди более известных «коллег» OutWiker с подобным функционалом можно назвать Zim, WikidPad, CherryTree, и множество других (ну и, разумеется, org mode для Emacs). Логичный вопрос с точки зрения пользователя — чем OutWiker отличается от других представителей древовидных записных книжек. На данный момент, по прошествии такого количества времени с момента начала разработки, я уже не готов развернуто сравнить весь этот софт. В стародавние времена я перепробовал десятки outliner-ов, штук пять использовал достаточно долгое время, но везде чего-то не хватало, хотелось одну возможность взять из WikidPad, другую — из викидвижка, который может работать оффлайново и т.д. Поэтому в качестве ответа на такой вопрос просто перечислю основные особенности, которыми обладает OutWiker.



              Читать дальше →
            • 33 независимых блога о UI-дизайне, веб-разработке и программировании

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

                Под катом вы найдете ссылки на блоги, рекомендованные резидентами разных платформ: Quora, Stack Overflow, Hacker News, Reddit и др. Авторы этих блогов занимают самые разные должности в ИТ-экосистеме: разработчики, тестировщики, дизайнеры, управленцы, и пишут как статьи для начинающих, так и более продвинутые материалы.

                Другие наши тематические подборки:


                Читать дальше →
                • +11
                • 18,6k
                • 3
              • Как сделать свой блокчейн. Часть 1 — Создание, Хранение, Синхронизация, Отображение, Майнинг и Доказательная работа

                • Перевод
                Доброго всем! Мы тут потихоньку начали исследовать новое совсем для нас направление для обучения — блокчейны и нашли то, что оказалось интересным в рамках нашего курса по Python, в том числе. Чем, собственно, и хотим поделиться с вами.

                Читать дальше →
                • +16
                • 43,9k
                • 9
              • [DotNetBook] Ссылочные и значимые типы данных, особенности выбора

                • Tutorial
                С этой статьей я продолжаю публиковать целую серию статей, результатом которой будет книга по работе .NET CLR, и .NET в целом. Тема IDisposable была выбрана в качестве разгона, пробы пера. Теперь коснемся разницы между типами. Вся книга будет доступна на GitHub: DotNetBook. Так что Issues и Pull Requests приветствуются :)

                Это — выжимка из главы про Struct / Class и их разницу.

                Особенности выбора между class/struct


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

                Примечание


                Глава, опубликованная на Хабре не обновляется и возможно, уже несколько устарела. А потому, прошу обратиться за более свежим текстом к оригиналу:




                Читать дальше →
              • Советский HI-FI и его создатели: Шушурин — Ламм — автор народного усилителя и герой американского High End

                  В одной из статей цикла “легендарные усилители” я упомянул Владимира (Шушурина) Ламма и его ламповый УМЗЧ Lamm ml 2.1, что вызвало раздраженную реакцию некоторых любителей “теплой lammповости”. Причиной негодования почитателей инженера стала моя критика в адрес характеристик усилителя. Справедливости ради, нужно отметить, что Шушурин (ныне Lamm) известен не только благодаря этому устройству. Его вклад в развитие усилительной аппаратуры несоизмеримо больше, чем создание одной спорной ламповой легенды. Для радиолюбителей Страны Советов его фамилия долгое время значила, пожалуй, даже больше, чем для “ламповых” аудиофилов сегодня.



                  Дело в том, что Владимир Шушурин был автором одной из первых советских схем стерео УМЗЧ, подходящего под нормы HI-FI-стандарта (опубликованной в журнале «Радио» в 1978 г.). Многочисленные читатели этого журнала получили возможность самостоятельно создать такой усилитель в годы тотального дефицита качественной техники в СССР. Многотысячная армия советских радиолюбителей воспроизвела эту схему, а также создала бесчисленное количество вариаций на тему УМЗЧ Шушурина. В 80-х будучи руководителем Львовского СКБ бытовой аппаратуры, Владимир реализовал несколько серийных моделей HI-FI усилителей, которые производились под брендом “Амфитон”.
                  Читать дальше →
                • Как написать свой первый Linux device driver

                  Здравствуйте, дорогие хабрачитатели.

                  Цель данной статьи — показать принцип реализации драйверов устройств в системе Linux, на примере простого символьного драйвера.

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

                  Это моя первая статья, пожалуйста не судите строго!

                  P.S

                  Получилось слишком много букв, поэтому я принял решение разделить статью на три части:

                  Часть 1 — Введение, инициализация и очистка модуля ядра.
                  Часть 2 — Функции open, read, write и trim.
                  Часть 3 — Пишем Makefile и тестируем устройство.

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

                  Итак, начнем.
                  Читать дальше →
                • Android Architecture Components. Часть 1. Введение

                    image

                    На Google I/O 2017, было представлено набор библиотек под названием Android Architecture Components. В нескольких словах — это ряд вспомогательных библиотек, которые призваны помочь с такими вещами как, проектирование, тестирование и сопровождение приложений. То, что команда разработки Android начала акцентировать внимание на архитектуре не может не радовать, поскольку проблема является действительно актуальной. Ведь изначально не было предоставлено никаких требований или гайдлайнов по проектированию, и разработчику приходилось отталкиваться от своего предыдущего опыта. Что, в свою очередь, вызывало сложности в сопровождении проекта, а также сомнительные решения для специфических для ОС ситуаций. По факту это не первые шаги в этом направлении. Ранее уже Google представил репозиторий android-architecture с примерами применения разных архитектурных концептов. Надеемся, что развитие будет дальше и может на следующем Google I/O мы сможем увидеть полноценный фреймворк.
                    Читать дальше →
                  • Директор по здравому смыслу: как перестать все контролировать и начать работать в команде

                      Эта статья — вольный пересказ моего доклада на прошедшем Хайлоаде.

                      Я возглавляю компанию, в которой работает 75 человек, а начинали мы 10 лет назад впятером.


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


                      Читать дальше →
                    • Вы уволили самого талантливого сотрудника. Надеюсь, теперь вы довольны

                      • Перевод
                      Недавно довелось прочитать статью под названием «Мы уволили самого талантливого сотрудника. Это лучшее решение, которое мы когда-либо делали». [Очень популярная статья, которая получила массу положительных оценок на Medium — прим. пер.]

                      Давайте присядем, вы и я. Нужно поговорить. Если вы не читали статью по ссылке, то уделите 10–15 минут и прочитайте, впитайте её целиком.

                      Готовы? Отлично. Теперь разберём этот текст, потому что он значит гораздо больше, чем там написано. Если вы прочитали статью, то понимаете, что автор описывает проблемного сотрудника под вымышленным именем «Рик». Рик — это местный гений с огромным количеством знаний в предметной области, он входит в состав ключевых разработчиков продукта.

                      На первый взгляд, это история о технаре, который возомнил себя божьим даром для компании. Он решил, что руководители должны поклоняться земле, по которой он ходит и быть благодарны за одно его присутствие, а руководство вышвырнуло его пинком за дверь, потому что его репутация обналичивала чеки, за которые талант не мог заплатить.
                      Читать дальше →
                    • Проект завяз: ныряем с головой

                        Ой, что это только что пролетело? Еще один год вашей жизни в ожидании обещанного карьерного и профессионального роста, доли, опциона и полной финансовой независимости. Упс! Ещё один! Поздравляю, вы — в завязшем проекте.

                        Как же вы сюда попали? Выбрали кривую короткую дорожку с молодой перспективной командой мечты и мега-интересной инновационной задачей? Нужно просто быть смелым, дерзким, умелым, и вот он, успешный успех торчит изо всех щелей. Молодые миллионеры уже ждут вас в своем клубе.

                        А может быть, вы предпочли надежную федеральную трассу карьерного роста во всемирно известном ИТ-гиганте, готовы учиться и расти от джуниора до ведущего спеца? Ехать долго, зато, доедете наверняка.

                        Каждый вариант по-своему хорош: на кривой дорожке можно завязнуть криво, а на федеральной трассе — федерально. Сейчас расскажу как.


                        Читать дальше →
                      • Не по ТЗ



                          Умоляю, уберите скорее от экранов перфекционистов и беременных своей чудесной идеей заказчиков. Пост содержит боль. И вообще, проконсультируйтесь с вашим психотерапевтом.
                          Читать дальше →