• Как я автоматизировал разворачивание приложений на Linux на коленке с помощью Bash скриптов и Java

      Когда вы написали серверное приложение, его нужно где-то развернуть. У нас в компании сейчас это реализовано с помощью VPS на Linux, bash скриптов, и небольшой Java программы. Это эволюционный процесс, и как по мне, получилось весьма неплохо.


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


      КДПВ — архитектура системы, для части которой автоматизируем развертывание:


      Читать дальше →
    • Из Java-разработчика — в директора филиала IT-школы

        Разрешите представиться! Меня зовут Иван и я перешел с разработчика в IT-управленцы, но не до конца ушел в управление, а еще и пишу код.


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


        Переход из разработчика в управленцы


        Мой бекграунд


        Я с 9-го класса пишу код и не представляю свою жизнь без разработки (мне сейчас 28 лет). Мне нравится и процесс программирования, и конечный результат. Когда люди пользуются моим творением и оно как-то облегчает им жизнь — это круто.

        Читать дальше →
      • E-Dobavki — веб-сервис поиска пищевых добавок на Java и Spring Boot, написанный моими студентами

          Введение


          Так получилось, что последние почти два года я преподаю программирование в одной из IT школ Киева. Занялся я этим Just For Fun. Когда-то я вел блог по программированию, потом забросил. Но желание рассказывать полезные вещи заинтересованным людям никуда не делось.


          Мой основной язык — Java. Я писал на ней игры для мобильных, софт для радиосвязи, и различные веб-сервисы. И преподаю я именно Java.


          Здесь я хочу рассказать историю обучения последней своей группы. Как они прошли путь от начал обучения до написания работающего веб-сервиса. Полезного веб-сервиса по поиску пищевых добавок. Бесплатного, без рекламы, регистрации и СМС.


          Сам сервис вот — E-Dobavki.com.


          Читать дальше →
        • Как набить кучу шишек и выпустить игру

            Все началось в далеком 2013 году. Тогда игрушек на Android было хоть и много, но всяко меньше чем сейчас. И выпустив свою игру на тогда еще Android Market, можно было получить какую-никакую, а денежку. А поскольку мне нравится делать игры, сомнений не было — выпускаем игру. Мы — это маленькая команда из программиста, художника и тестировщика\генератора идей. Забегая наперед — шишек и граблей мы собрали предостаточно. В основном будет обзор технических моментов, поэтому статья будет полезна всем, кто как-либо связан с разработкой игр. Не повторяйте наших ошибок.
            Читать дальше →
          • Гуру слов, проблемы с Unity3d, и счастливый финал в итоге

              Идея игры и ее особенности



              Наверное, все играли в какие-то игры, где нужно составлять слова. Кто не знает, что такое кроссворды? А Города.? Еще популярная игра (не помню названия) — дается длинное слово (мне почему-то запомнилось "электрификация"), и из него составляются всевозможные слова ("электрик", "фикция") и т.д. В общем, таких игр есть множество — как и классических (настолки, листок и ручка), так и электронных.


              Но нам же всегда мало, мы хотим больше и лучше, не так ли?


              На Западе есть популярная настольная игра, где тоже нужно составлять слова. Называется Scrabble, здесь больше информации. Правила просты — на квадратном игровом поле изначально есть одно слово. Каждый игрок имеет определенные фишки с буквами. В свой ход он должен выложить одну фишку так, чтобы получилось новое слово (или несколько слов). Каждая буква имеет свою ценность (в баллах), поэтому некоторые слова более ценные, чем другие. Редкие буквы (например, "Ф") дают больше баллов.



              Мой друг много игрался в Скрэббл, и у него возникла идея — а почему бы не изменить правила игры, чтобы она стала динамичней? Вкратце это звучит так — добавь одну любую букву и собери новое слово.


              Сказано — сделано.


              Читать дальше →
            • Как я физическую головоломку на Libgdx писал

                Здравствуйте!

                Скриншот для затравки:

                Кто-то еще читает подсказки к картинкам?

                Как-то бесцельно сидя в интернете я наткнулся на игру «Цепи, шары и зомби». Не знаю почему, но она меня сильно зацепила. Простой и в то же время интересный геймплей и некоторая нелинейность — уровни можно пройти несколькими способами. Чем-то она напомнила мне небезызвестную Crazy Machines, которой я тоже когда-то болел.

                Поубивав зомби, я загорелся идеей написать свою игру — с поэтессами и преферансом шарами и зомби, только лучше (можно грабить корованы). Сказано — сделано. По итогу пары недель игра была сделана, и выложена в Google Play. Если вам интересно узнать детальней — прошу под кат.
                Читать дальше →
              • Фишки для Android

                  Вступление


                  Думаю, большинство из вас в детстве игрались в фишки. Помните, такие маленькие кружочки с рисунками? Они были на разные тематики. Лично я игрался в них не очень много, но еще застал их. И тут поступила идея сделать такую игру на телефон — на Android. Знания были, опыт тоже, и я приступил к реализации. Я расскажу немного о игровом процессе, и, конечно же, коснусь технических моментов — куда же без них на хабр-то?
                  Читать дальше →
                • Туториал по libGDX — создание пользовательского интерфейса. Часть 1

                    Разбираясь дальше с библиотекой libGDX, я дошел до пакета com.badlogic.gdx.scenes.scene2d.ui. Этот пакет предназначен для создания пользовательського интерфейса. И тут меня ждало разочарование: статьи-туториала нет. Поэтому я решил самостоятельно разобраться с пакетом, используя исходники и Javadoc документацию. То есть, это будет туториал по scene2d.ui, но уже не перевод. Я не буду здесь детально описывать конструкторы, методы, приводить подробные сигнатуры. Я постараюсь взглянуть с высоты «птичьего полета», поскольку зная принципы, вы всегда сможете узнать больше из документации. Но даже при таком подходе материала слишком много, поэтому я разобью его на две (возможно больше) статей.
                    Читать дальше →
                    • +9
                    • 45.8k
                    • 2
                  • Перевод туториалов по libGDX — часть 3 (пакет scene2d)

                      Это третья статья из цикла переводов туториалов libGDX.
                      Первая статья находится здесь
                      Вторая статья находится здесь

                      scene2d



                      Пакет scene2d представляет собой классы для реализации графа для двухмерной сцены, которые могут быть полезны для управления группой иерархически связанных актеров (актер — некоторая сущность, которая может быть нарисована и которая может обрабатывать события ввода — прим. переводчика). Этот пакет предоставляет поддержку для обработки управления, рисования с возможностью поворота и масштабирования актеров в системе координат относительно родительского актера. Этот пакет также предоставляет фреймворк для управления действиями актеров через некоторые промежутки времени (tweening). Пакет scene2d.ui предоставляет актеров, которые могут быть полезны при построении графического интерфейса пользователя.
                      Читать дальше →
                      • +15
                      • 32.4k
                      • 5
                    • Перевод туториалов по libGDX — часть 2 (рисование изображений)

                        Представляю вашему вниманию перевод второго туториала по libGDX. Оригинал находится здесь. Первая часть находится здесь.

                        Этот туториал дает представление как рисовать изображения используя OpenGL и как libGDX упрощает и оптимизирует этот процесс с помощью класса SpriteBatch.

                        Рисование изображений.



                        Изображение, полученное из его оригинального формата (например, PNG) и загруженное в GPU называется текстурой. Текстуры рисуются по некоторой спецификации, которая представляет собой описание геометрической фигуры и каким образом текстура накладывается на вершины этой фигуры. Например, геометрическая фигура может быть прямоугольником и каждый угол прямоугольника относится к соответствующему углу текстуры.
                        Читать дальше →
                        • +15
                        • 29.5k
                        • 2
                      • Перевод туториалов по libGDX — часть 1 (настройка проекта в Eclipse)

                        Эта статья — перевод первого туториала для проекта libGDX. Оригинал находится — здесь

                        От переводчика: недавно у меня появилось желание написать игру под Android. У меня есть некоторый опыт программирования на Java, но я почти не сталкивался с разработкой под Android. Тут я наткнулся на библиотеку libGDX, которая позволяет писать кросплатформенные игры. Также я наткнулся, что по ней не хватает русской документации, а конкретно — туториалов. Поэтому у меня появилось желание перевести туториалы. Это мой первый перевод, поэтому буду рад любым замечаниям и указаниям на неточности.

                        Настройка проекта


                        Примечание: есть проблемы с использованием Java 1.7 для Android-приложений. Убедитесь, что вы используете Java 1.6
                        Примечание: надо сделать несколько шагов для настройки приложения под Android. Смотрите ниже.

                        Эта статья описывает, как настроить Eclipse для разработки и запуска приложений как на настольном компьютере, так и на Android-устройствах.
                        Читать дальше →
                        • +8
                        • 29.7k
                        • 5