Обновить
-6
Алексей@java3000

Администратор windows умеющий в программирование

Отправить сообщение

Android и Data Binding: обработка действий

Время на прочтение5 мин
Охват и читатели9.4K
Не так давно закончили разработку приложения, в котором пришлось обрабатывать одинаковые действия (actions) в различных местах приложения. Казалось бы, стандартная ситуация, и, как всегда, разработчики — ленивые, клиент — сделайте все вчера, у нашего клиента есть свой клиент, и ему — всё нужно позавчера. А значит, сделать все нужно просто, красиво и, главное — меньше лишних строк кода.

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

Фея, корпорация зла и утка. Как реально делаются игры. Часть 2. Программист

Время на прочтение3 мин
Охват и читатели6.9K
Приветствую вас, господа! Сегодня мы вновь заглянем за ширму геймдева, скрывающую немытых, безобразных, но порой талантливых существ, именуемых в народе Инди-разработчиками, дабы постичь пути становления на этот скользкий путь и наконец-то обрести так всеми желанную творческую независимость, чтобы это ни значило!

image

Android string.xml — несколько вещей, которые стоит помнить

Время на прочтение3 мин
Охват и читатели31K

Доброго времени суток! Представляю вашему вниманию вольный перевод статьи от GDE (Google developer expert) Dmytro Danylyk. Собственно, вот оригинал. Статья описывает правильные подходы для работы со strings.xml и особенно полезно это будет разработчикам, которые разрабатывают мультиязыковые приложения. Прошу под кат.


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

MVP на стероидах: заставляем робота писать код за вас

Время на прочтение2 мин
Охват и читатели23K
В статье «Moxy — реализация MVP под Android с щепоткой магии» мы рассказывали, как побороть проблему жизненного цикла и разделить код своего Android-проекта на слои. Однако MVP (даже при умной кодогенерации view state в Moxy) заставляет писать огромное количество лишнего кода (создавать связанные друг с другом классы и интерфейсы presenter и view). На самом деле эту работу за вас должен делать робот! :) Настало время еще сильнее уменьшить boilerplate при помощи кастомизации шаблонов Android Studio под Moxy.

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

Таймер с ручным запуском (работа над ошибками)

Время на прочтение17 мин
Охват и читатели9.6K
Ванька Жуков, начинающий Android-пограммист, n-цати годов от роду, отданный в ученье неизвестно когда, не ложился спать. Дождавшись, когда коллеги и начальство уйдут к обедне, достал пузырек с тёмны… чаем, клавиатуру с заржавевшим выводом, запустил Android Studio и стал писать. Прежде чем вывести первую букву, он несколько раз пугливо оглянулся на окна Скайпа, и прерывисто вздохнул.



«Здравствуй, милый дедушка Хабр Хабрович! — писал он. — Пишу тебе письмо. Поздравляю вас со светлой Пятницей, и желаю тебе всего на выходных».
Читать дальше →

Секреты Progressive Web Apps: часть 1

Время на прочтение14 мин
Охват и читатели26K
Привет, Хабр! Мы продолжаем цикл статей по Progressive Web Apps. В прошлый раз мы познакомили вас с опытом разработчиков из Airberlin, ну а сегодня у нас в виртуальных гостях Jan Lehnardt, человек, стоящий за такими штуками, как Hoodie, Apache CouchDB и Greenkeeper i/o.

И пусть вас не смущает аббревиатура PWA (Progressive Web Apps): несмотря на то, что в заголовке есть Apps, принципы и технологии, используемые в PWA, применимы в целом к вебу и к приложениям. Лучшим вступлением к статье будет просмотр видео с Google I/O 2016, в котором Джейк Арчибальд рассказывает о PWA.



Я очень рекомендую посмотреть его, прежде чем продолжать читать статью, особенно если эта тема для вас в новинку.
Читать дальше →

Почему 0x00400000 является базовым адресом по умолчанию для EXE

Время на прочтение3 мин
Охват и читатели47K
Базовым адресом по умолчанию для DLL является 0x10000000, но для исполняемых файлов это 0x00400000. Почему именно такое особое значение для EXE? Что такого особенного в 4 мегабайтах?

Это имеет отношение к размеру адресного пространства, отображаемого одной таблицей страниц в архитектуре x86, и такую конструкцию выбрали в 1987 году.

Единственным техническим требованием для базового адреса EXE является кратность 64 КБ. Но некоторые варианты базового адреса лучше, чем другие.

Цель выбора базового адреса состоит в минимизации вероятности, что модули будут перемещены. Это означает, что следует предотвратить столкновение 1) с другими объектами, которые уже в адресном пространстве (что и вызовет перемещение); 2) а также с объектами, которые могут появиться в адресном пространстве позже (форсируя их перемещение). Для исполняемых файлов избегать конфликта с объектами, которые могут появиться позже, означает уход из района адресного пространства, который может быть заполнен библиотеками DLL. Поскольку сама операционная система помещает файлы DLL в старшие адреса и базовым адресом по умолчанию для несистемных DLL является 0x10000000, то базовый адрес для EXE должен быть где-то младше 0x10000000, и чем младше, тем больше места останется до того, как вы начнёте конфликтовать с библиотеками. Но насколько низко нужно заходить?
Читать дальше →

Подборка курсов по разработке игр от Microsoft

Время на прочтение1 мин
Охват и читатели36K


Разработка игр – одно из самых перспективных направлений в современном мире IT. Сегодня мы решили поделиться с вами подборкой самых востребованных, популярных и, что немаловажно, бесплатных курсов Microsoft, связанных с разработкой игр. Пять избранных курсов ждут вас под катом!
Читать дальше →

Игра для самых маленьких — простая идея, которую не стыдно включить в резюме

Время на прочтение6 мин
Охват и читатели49K

Предыстория


Мой сын, как, наверное, все дети программистов, получил свою первую клавиатуру ещё когда не умел сидеть. Сейчас ему чуть меньше года, но он уже понимает разницу между «игрушечной» и «настоящей» (папиной) клавиатурой — если колотить по кнопкам настоящей, то на экране меняется картинка, а компьютер иногда издаёт какие-то звуки.

КДПВ

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

Чтобы процесс освоения компьютера стал для детёныша более увлекательным, я решил написать ему простенькую игру. Будучи программистом со стажем, весь процесс решено было построить «правильно».

Требования


Заказчик (мой сын, возраст <1 года), как и все нормальные заказчики затруднился письменно изложить непротиворечивые и полные требования к продукту, поэтому пришлось помочь писать самому.

Функциональные:
  • Приложение работает в режиме полного экрана.
  • Можно нажимать на всё подряд, но самые доступные методы выхода или переключения программ должны быть заблокированы.
  • Визуальная обратная связь — цвет фона меняется при нажатии, в центре экрана отображается нажатый символ.
  • Звуковая обратная связь — приложение издаёт звук при нажатии на клавишу.
  • Предсказуемое поведение — цвет фона, символ и звук должны быть всегда одинаковыми для одной и той же клавиши.

Не функциональные:
  • Мне должно быть не стыдно за написанный код.
  • Код должен быть ценен сам по себе.
  • Архитектура и все решения должны быть «правильными» — как в заказном проекте.

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

В качестве языка программирования и среды разработки были выбраны C# и Visual Studio, так как они обеспечивали исполнителю наибольшую скорость работы.
Читать дальше →

Как набраться смелости и открыть магазин

Время на прочтение8 мин
Охват и читатели50K
Не нашел на хабре статьи из песочницы, благодаря которой получил инвайт, поэтому решил внести ее в персональный блог.

Сколько себя помню, был помешан на компьютерах. И программирование так прочно вошло в мою жизнь, что несколько лет я и думать не мог о том, чтобы зарабатывать чем-то, кроме кодинга. Казалось, брось я программирование, деньги кончатся.
Последние лет пять я кодил. Кодил ночами, кодил круглосуточно. Устал. Надежды на отдых не было совсем. Каждый новый день начинался с того, что я представлял себе: что нужно сделать, что я должен сделать. Озверение пришло неожиданно и пришло в тот момент, когда я все-таки смог вырваться в отпуск.
Я сидел в беседке в одном из поселков близ Джубги и страдал бессонницей. Горы смыкались над головой, в голове бродила усталость. В ту ночь я в полной мере ощутил, что так дальше жить нельзя, что моя любовь — путешествия.
И именно в ту ночь внезапно пришло озарение: надо открыть интернет-магазин.
Но как открыть магазин, когда за душой нет ни гроша?
Читать дальше →

Как наши книги попали на полки магазинов

Время на прочтение2 мин
Охват и читатели49K
image

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

Дистрибьюторы


Расскажу немного подробнее. Магазины отказываются работать с авторами напрямую ввиду того, что у автора одна, ну или максимум 3 книги, а в магазинах продаются тысячи книг.
Читать дальше →

Переход стартапа в публичную форму чреват некоторыми негативными последствиями

Время на прочтение4 мин
Охват и читатели2.4K
IPOВ давние времена каждый предприниматель мечтал сделать свой стартап публичным и сделать успешной компанией. Сегодня темп перехода стартапов в публичную форму (IPO - Initial Public Offering) вышел из мертвой зоны, но все же темп значительно ниже, чем даже половина этой величины 15 лет назад. Умные предприниматели теперь стараются избежать публичности, из-за непредсказуемости и проблем в характере работы публичной компании.
Читать дальше →

7 признаков стартапа на миллиард

Время на прочтение5 мин
Охват и читатели11K
"«Хватит. Я больше не желаю слушать этот вздор. Матрацы никогда не заменят гостиниц» — Уилсон прервал разговор. Мы пытались возразить, но он был непреклонен. Фред Уилсон был 15-м инвестором, который отказал выслушать нас до конца" — вспоминает Брайан Чески, основатель Airbnb.

Когда мы проектировали стартап Grrow.me, то задалась одним вопросом. Какие признаки делают проект миллиардным?
Открыв эти признаки, мы решили следовать им в своём проекте и поделиться с вами.

1. Одной ногой из будущего

15 инвесторов Airbnb – отказали Брайану Чески, Джо Геббиа и Нэйтану Блечарзике. Они посчитали идею сервиса бредом – ну действительно, кто будет сдавать свою комнату незнакомым людям? Сейчас стартап стоит 20 миллиардов.

Что не учли эти 15 инвесторов? Они просто смотрели вокруг и не видели людей, кто сдаёт комнаты – этого просто почти никто не делал. Они не смогли увидеть будущее шеринг экономики. Будущее разглядеть не просто. Сложившиеся стереотипы и устои не позволяют многим смотреть за горизонт.

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

Своими руками. Как я сделал сервис сбора статистики цен на туры

Время на прочтение4 мин
Охват и читатели15K
Работа — работой, но иногда хочется отдохнуть. Предположим, вы собрались в отпуск в жаркие края. Перед вами сразу возникает несколько вопросов, основные из которых:

1) Куда поехать отдыхать
Действительно, нужно перечитать множество источников, чтобы определиться, где сейчас (или когда вы там собрались) тепло, нужна ли для въезда в страну виза, сколько стоит путёвка и т.д.

2) Когда поехать отдыхать
Допустим, вы знаете, что хотите провести свой отпуск в Египте, но не знаете когда. Самый важный вопрос для многих — когда дешевле всего туда ехать? Так же важно знать, какая там погода и т.д.

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

Высосанные из пальца стартапы, которые ничего не решают

Время на прочтение9 мин
Охват и читатели46K
image

Иногда складывается такое впечатление, что сегодня у каждого уважающего себя хипстера-компьютерщика или гуманитария-затейника должен быть свой стартап. Желательно несколько. Иначе братва не поймет. Без приставки co-founder, co-executive, co-creator ты — никто. Лучше не иметь квартиры, чем не иметь стартапа. Бомжа, у которого нет своего угла, зато есть своё дело — все поймут и простят. Ещё и запишутся в ученики. А вот быть, как 5-10 лет назад, уже нельзя — прослывешь консерватором, который довольствуется малым. Парень, где твои мечты? Где твои аббревиатуры CTO и CEO?
Читать дальше →

История одной IT-компании, которая так и не пришла к успеху

Время на прочтение5 мин
Охват и читатели19K
Частенько встречаются статьи на тему «что необходимо для создания успешного IT бизнеса», «основополагающие факторы успеха IT компании» и все в этом же духе. Одни убеждены, что для старта необходимы инвестиции, другие делают упор на команду. Существует сто пятьсот советов и такое же количество «историй успеха». По этой причине у меня появилась идея рассказать историю одной компании (реальные имена и названия будут изменены, дабы не тыкать пальцами). История больше похожа на неуспех, несмотря на наличие большинства факторов, которые должны были привести к успеху, но не все пошло на пользу.


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

История одной IT-компании, которая так и не пришла к успеху (Ч.3)

Время на прочтение18 мин
Охват и читатели20K

Пролонгация


Денежная инфекция поражает воображение. © Павел Шарпп

2013 год. Пришло время оценить результаты работы за прошлый год. Сделано много — похвалиться нечем.
CEO прочитав какую-то из очередных «умных» книг (а может и посетив семинар) понял в чем у нас загвоздка. Появились понятия о капитализации, экзитах, опционах, акциях, бюджетах, прогнозах, гипотезах и об инвестиционных раундах.


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

Билл Гросс. Самая большая причина успеха стартапов

Время на прочтение5 мин
Охват и читатели10K
Смотреть видео: The single biggest reason why startups succeed by Bill Gross

Я хочу поделиться с вами некоторыми удивительными результатами ответа на вопросы:

  • Что делает компании успешными?
  • Какие факторы больше всего важны для успешного стартапа?


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

Как избежать гибели стартапа в зародыше

Время на прочтение6 мин
Охват и читатели4.6K
Как избежать гибели стартапа в зародыше: 6 путей не дать погибнуть своим идеям в тяжелые времена



«Черт! Это была одна из идей моего стартапа».

Это была моя моментальная реакция, когда я пару месяцев назад увидел новости об однолетнем стартапе, который был приобретён за 30 миллионов долларов. Я придумал такую же идею для стартапа 2 года назад, живя в общаге, во время моей учебы в колледже. Черт возьми, ведь есть уже десяток успешных компаний, построенных на идеях, которые родились в моей комнате в общежитии и сразу же были отброшены.
Читать дальше →

Старые песни о главном, или Как привлечь больше покупателей

Время на прочтение5 мин
Охват и читатели4K


Ты создал продукт. Он отвечает потребностям потребителя. Но как ты собираешься запустить его на рынок?

Однажды Роб Уоллинг, создатель сервиса Drip сказал мне: «недостаточно только производить то, что людям нужно». Это правда. После запуска продукта вам нужен стабильный поток людей, заинтересованных в его покупке.

Я получаю сотни сообщений от создателей, которые разработали продукт, но не смогли найти покупателей. Почему это так сложно?
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Десктоп разработчик, Администратор серверов
Младший
От 110 000 ₽
Java
Java Spring Framework
RESTful WebServices.
PostgreSQL
SQL
Hibernate
Linux
Базы данных
Microsoft SQL Server
Разработка программного обеспечения