Pull to refresh
0
Karma
0
Rating

User

  • Followers 8
  • Following 7
  • Posts
  • Comments

Рейдерский захват IT-компании: первая ласточка?

CopyrightIT-companies
Подниму немного контекста происходящего. На прошлой неделе в харьковскую компанию Zfort ворвались маски-шоу со всеми вытекающими: никого не выпускали, увели директора, и пр. Как обоснование действий было высказано возбуждение следствия по поводу скачивания запрещённого материала с сайта «чугуев.ком.уа».

К сожалению, маски-шоу, сами по себе, у нас в Украине уже не из ряда вон выходящее дело. Все понимают, что это один из способов заработать деньги к Новому Году детям на подарки. В частности, некоторые компании даже проводят инструктаж на тему того как себя вести в таком случае. И очень хотелось бы, чтобы на этом месте всё и закончилось, но нет.

Сегодня появилось официальное письмо директора компании Zfort с описанием происходящей ситуации.
Привожу его под катом
Total votes 179: ↑163 and ↓16+147
Views44K
Comments 161

Не тратьте своё время на дерьмовую работу в стартапе

Offices of IT companies
Под катом перевод огромной статьи, написанной Майклом Чёрчем и посвящённой стартапам. Статья вызвала необыкновенное бурление… мнений, скажем так, на разных сайтах и агрегаторах, поэтому я решил её перевести на русский и посмотреть на реакцию. Текст ОЧЕНЬ длинный, но также и очень интересный. И несколько пояснений перед чтением: в статье речь идёт об инженере в стартапе, именно с этой позиции всё рассматривать; некоторые финансово-экономические термины, возможно, не очень адекватно удались и я буду рад любым конструктивным поправкам.

То, о чём я хочу рассказать, справедливо для июля 2012 г. 15 лет назад необязательно было так же, и не факт, что будет справедливо через год. Но в данный момент это абсолютно верно для большинства людей в достаточной степени, так что я считаю обязанным высказаться. Нынешний мир ИК-стартапов (ИК=инвестиционный капитал / venture capital) — я его нежно называю ИК-стан — является, мягко говоря, тотально напрасной тратой времени для большинства вовлечённых людей.
Читать дальше →
Total votes 238: ↑221 and ↓17+204
Views40K
Comments 77

Книги, которые должен прочитать Java программист: от новичка до профессионала

ProgrammingJava
Translation

Книги, которые должен прочитать Java программист: от новичка до профессионала


[Примечание переводчика: термины градации «профессионализма» оставлены англоязычные в связи с трудностью их адекватного перевода на русский и несовпадением с привычными Junior-Middle-Senior-Lead. Перевод достаточно вольный — если знаний языка хватает, то лучше читать оригинал, как и советует автор. Оба языка для меня не родные, так что про ошибки сообщайте в личку — исправим. Здесь и далее в квадратных скобках примечания переводчика]

Я заметил, что в последние месяцы я рекомендую одни и те же книги как новичкам, так и опытным разработчикам. Поэтому я решил составить список этих книг. Они составили мне неплохую компанию в процессе моего роста от новичка до сегодняшнего уровня (какой-бы он не был :) )
Читать дальше →
Total votes 90: ↑77 and ↓13+64
Views641K
Comments 76

Создание нестандартного компонента с нуля. Часть 1

Development for Android

Вступление


Приветствую, коллеги!

Достаточно часто при разработке мультимедийных Андроид-приложений (далее просто “приложений”) мы сталкиваемся с задачей создания собственных компонентов, не предусмотренных в системе. Это могут быть всяческие ручки-переключатели, визуализаторы спектра и т. п. Некоторые из них могут быть получены простой заменой графического ресурса, поворотом канвы на 90 градусов и т. п. Но, иногда, все же приходится делать что-то свое “с нуля”.
В этой статье я собираюсь рассказать о создании компонента — простой клавиатуры фортепиано, при помощи наследования от класса View и реализации всех внутренностей “самостоятельно”. Почему в кавычках — увидите дальше.

В серии статей я постараюсь осветить такие вопросы, как:

  1. отрисовка компонента
  2. добавление скроллинга с использованием стандартных скроллбаров
  3. взаимодействие, использование селекторов для клавиш
  4. Сохранение состояния компонента при повороте экрана
  5. добавление подсветки при оверскролле
  6. передача параметры в XML
  7. pinch zoom


Первая статья будет о первых трёх пунктах.

Если Вам интересны эти темы, добро пожаловать под кат.
Читать дальше →
Total votes 64: ↑60 and ↓4+56
Views39K
Comments 5

История одного mBaaS (cloud backend) сервиса на примере QuickBlox

Development for iOSDevelopment for AndroidAPI
Привет Хабровчане! Если вы уже нарядили елку и думаете, какую бы новую аппликуху сделать во время праздников, то вам может быть полезным узнать больше о mBaaS (mobile backend as a service).

Пост будет интересен тем, кто уже использует или планирует использовать готовые серверные платформы в разработке своих мобильных приложений. Про QuickBlox уже писали на Хабре в общем, про code samples и SDK, про авторизацию-аутентификацию и HURL. Также нас упоминали в "Поверхностный обзор Javascript-enabled BaaS платформ".

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

Читать дальше →
Total votes 6: ↑6 and ↓0+6
Views11K
Comments 22

Перехват HTTPS-траффика между Android-устройством и внешним сервером

Инфопульс Украина corporate blogDevelopment for Android
Tutorial

Иногда бывает любопытно подсмотреть, что пересылают туда-сюда разные Android-приложения по HTTP и HTTPS протоколам. Иногда даже при разработке собственного ПО удобно видеть весь трафик в реальном времени. Для реализации этих задач давно придумано много хороших программ, таких, к примеру, как Charles или Fiddler2. На самом деле их намного больше, вот только две вышеуказанные дают возможность нормально просматривать не только HTTP, но и HTTPS.

Трудности начинаются тогда, когда речь заходит о перехвате трафика между Андроид-устройством и внешним сервером. В случае незашифрованного (HTTP-протокол) трафика всё весьма тривиально (вот и инструкция есть) — разрешаем Fiddler2 внешние соединения, в Андроиде устанавливаем прокси сервером адрес нашей машины с Fiddler2 — и вуаля, всё работает. А вот на настройку перехвата HTTPS-трафика у меня ушло чуть больше времени.
Читать дальше →
Total votes 51: ↑42 and ↓9+33
Views145K
Comments 17

AndroidKickstartr — создай современный проект в пять кликов

Development of mobile applicationsDevelopment for Android

На днях появился новый веб-сервис, позволяющий в несколько кликов создавать новый проект для андроид со всеми современными вкусностями сторонних библиотек.
Название AndroidKickstartr.com отлично описывает его задачу — максимально быстро и просто сконфигурировать новый проект, добавив туда все самое необходимое.
Читать дальше →
Total votes 58: ↑50 and ↓8+42
Views40K
Comments 38

Перевод: Чему я научился за 30 лет программирования

Programming
Sandbox
Оригинальная статья Джона Грэхем-Камминга.
Переведено и опубликовано с разрешения автора.


Я занимаюсь программированием уже более 30 лет, начиная с машин, уже устаревших (на процессорах Z80 и 6502) до современных, используя языки BASIC, ассемблера, C, C++, Tcl, Perl, Lisp, ML, occam, arc, Ruby, Go и многие другие.

Далее следует список того, чему я научился.
Читать дальше
Total votes 155: ↑127 and ↓28+99
Views77K
Comments 86

Поверхностный обзор javascript-enabled BaaS платформ

JavaScript
Sandbox
Будучи начинающим javascript разработчиком, я заинтересовался темой межплатформенной разработки мобильных приложений. В этой области, в настоящее время, балом правят Cordova (phonegap) www.phonegap.com, Appcelerator Titanium www.appcelerator.com, Mosync www.mosync.com.

Рано или поздно, после выпуска первых мини-приложений, основанных на этих системах, разработчику захочется создать что-нибудь Большое и Светлое, и хотелось бы, чтоб в этом новом приложении/сервисе были пользователи (c аватарами и проч.), push-notifications, user-generated-content и т.д… Но при этом, не хотелось бы тратить время и деньги на написание своей серверной инфраструктуры, а хотелось бы воспользоваться чем-нибудь недорогим, вплоть до бесплатного, и простым в освоении (и ещё чтоб «в облаке»!).

Как раз подобного рода тяжести и взяли на себя многочисленные Backend-as-a-Service (не путать с другими aaS). Я хочу кратко пробежаться по некоторым игрокам на этом рынке. Подчеркну, что меня в первую очередь интересовали те платформы, которые можно было бы легко и безопасно использовать с мобильным javascript (Phonegap/Titanium). Если платформа просто предоставляет REST API, этого мало, т.к. вопрос безопасности требует наличия некоторого специального ограничительного функционала: AccessControlList/permissions/masterKeys/etc. И вообще, желательно отдельный javascript SDK.

(Так как это «поверхностный обзор», я не буду подробно писать кому и зачем нужен BaaS и почему вместо всего этого не использовать старый-добрый PHP/MySQL на VPS или новый-добрый node.js в облаке)

Я начал поиск с www.programmableweb.com/apis/directory/1?apicat=Backend там перечислено почти 40 платформ, просмотрев их, я оставил для обзора те, что легко можно использовать с javascript:
Читать дальше →
Total votes 13: ↑11 and ↓2+9
Views20K
Comments 13

Аппаратное ускорение Canvas в Android

Luxoft corporate blogDevelopment of mobile applications
Предположим мы решили написать новое Android приложение. В силу же дизайнерских соображений, стандарные UI компоненты нам не подходят и мы будет рисовать много графики через Canvas или OpenGL ES. Последний способ несколько более трудоемкий, поэтому мы его пока рассматривать не будем. Нас интересует производительность вывода графики на Canvas. Можно ли её ускорить? Если зайти на официальный сайт андроида или блог разработчиков, то можно заметить, что начиная с Android 3.0 (API level 11), в платформе появилась возможность включать аппаратное ускорение Canvas для вывода 2D графики.

Вы можете подумать: "Супер! Я сейчас же добавлю флаг аппаратного ускорения в мое приложение!". Тем более, некоторые сайты утверждают, что приложение спокойно будет работать на Android 2.x — такие приложения просто будут игнорировать флаг ускорения. Другие же сайты говорят, что аппаратное ускорение включено по-умолчанию начиная с Android 4.0. На самом же деле все не так.

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

image
Читать дальше →
Total votes 29: ↑25 and ↓4+21
Views23K
Comments 10

Я не знаю ООП

ProgrammingООP
Я не умею программировать на объектно-ориентированных языках. Не научился. После 5 лет промышленного программирования на Java я всё ещё не знаю, как создать хорошую систему в объектно-ориентированном стиле. Просто не понимаю.

Я пытался научиться, честно. Я изучал паттерны, читал код open source проектов, пытался строить в голове стройные концепции, но так и не понял принципы создания качественных объектно-ориентированных программ. Возможно кто-то другой их понял, но не я.

И вот несколько вещей, которые вызывают у меня непонимание.
Читать дальше →
Total votes 412: ↑309 and ↓103+206
Views526K
Comments 870

Ремесло программиста. Золотые правила

Website developmentProgrammingPerfect code
imageДанный пост представляет собой выдержку «золотых правил» из примечательной книги Питера Гудлифа «Ремесло программиста».

Кто-то освежит память, кто-то сверится как с чек-листом, а кто-то заинтересуется и прочтет книгу. Т.к. пост получился достаточно объемным, можно добавить его в закладки и периодически к нему возвращаться.
Читать дальше →
Total votes 108: ↑90 and ↓18+72
Views27K
Comments 62

QuickBlox: Авторизация и аутентификация

Development of mobile applications
Привет Хабровцы! image

Сегодня я расскажу о методах аутентификации в QuickBlox. А так же затрону авторизацию и её аспекты.

Итак, любой запрос к API QuickBlox должен сопровождаться token. Любой кроме самого авторизационного запроса. В QuickBlox есть 4 возможных сущности авторизации:
  • приложение
  • пользователь
  • устройство
  • пользователь устройства
Читать дальше →
Total votes 5: ↑5 and ↓0+5
Views5.5K
Comments 5

ORM в Android c помощью ORMLite

JavaDevelopment for Android
На данный момент для платформы Android существует несколько решений, позволяющих реализовать ORM-подход для работы с базой данных, но основных два. Это ORMLite и GreenDAO.

Для новичков стоит сделать отступление и рассказать что такое ORM вообще. ORM — object-ralational mapping. Объектно-реляционное отображение означает, что программисту гораздо удобнее оперировать с объектами, которые он использует в своём приложении, нежели чем с таблицами, в которых хранятся данные в реляционных базах данных. Для связи реляционных СУБД с объектной моделью приложения используются ORM-технологии. Так для решения задач объектно-реляционного отображения в Android используют один из сторонних фреймворков. GreenDAO и ORMLite — являются библиотеками с открытым кодом.
Читать дальше →
Total votes 21: ↑18 and ↓3+15
Views69K
Comments 19

QuickBlox — backend для мобильных приложений

Self Promo
Здравствуйте, Хабраюзеры! image

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

8 июня на конференции mobile developer day #moco я буду рассказывать о нас и хотел бы, чтоб те, кто будут присутствовать, уже имели представление о нашем продукте.

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

Инфраструктура QuickBlox полностью расположена на Amazon Web Services. На хабре у меня есть несколько неплохих статей об этих сервисах, но главное то, что мы имеем огромные и почти безграничные ресурсы для масштабирования.

По REST API доступны следующие модули проекта:
  • Users
  • Ratings
  • Content
  • Chat
  • Messages
  • Location

Подробнее обо всех модулях будет рассказано в отдельных статьях, там же будут приведены куски кода под самые распространённые платформы, примеры вызовов API и другие полезности. В этой статье я пройдусь по модулям коротко.
Читать дальше →
Total votes 32: ↑30 and ↓2+28
Views3.6K
Comments 19

Переводим в код 5 действительно полезных шаблонов адаптивной разметки

Website developmentCSS
Приветствую всех.

Недавно наш хабраколлега опубликовал интересную статью об адаптивной разметке.
Уже не далеко то время, когда мы будем уделять верстке под все разрешения намного больше внимания, нежели делаем это сейчас. Посему считаю нужным подходить к этому периоду подкованным в данном вопросе, ну или хотя бы иметь четкое представление, что это такое и с чем его едят. Запасаемся смартфонами и таблетками.
Читать дальше →
Total votes 102: ↑100 and ↓2+98
Views32K
Comments 24

Howto: Amazon SES PHP mailer

Amazon Web Services
Здравствуйте!

Сегодня я расскажу как настроить массовую рассылку писем через Amazon SES с нуля.

Для начала нужно иметь аккаунт в Amazon Web Services и прикреплённый к нему метод оплаты сервиса. Если у Вас это есть, смело можем начинать!

Настройка SES

Итак, пройдём в консоль: https://console.aws.amazon.com. В списке сервисов ищем SES. Т.к. мы раньше не имели дела c SES, нас встречает удручающая надпись:
image
Читать дальше →
Total votes 23: ↑19 and ↓4+15
Views23K
Comments 12

Kickstrap — форк Twitter Bootstrap с темами и бонусами

Website developmentCSSjQuery
image
Kickstrap это то, что будет если соединить Twitter Bootstrap, HTML5 Boilerplate, значки от IcoMoon и Font Awesome, добавить проверенные jQuery плагины Chosen и jGrowl, включить поддержку разных цветовых схем и тем оформления Bootswatch, дополнительную CSS сетку и вменяемую поддержку ранних версий IE.
Читать дальше →
Total votes 137: ↑127 and ↓10+117
Views20K
Comments 34

Звезды мирового фронтенда

Website development
В любой профессии есть тонкая прослойка людей, которые являются действительно высококлассными специалистами. Не исключение и область фронт-енд разработки — здесь также есть выдающиеся личности. К их мнению прислушиваются, за ними следят в блогах и социальных сетях и читают их книги. В процессе своей работы они рождают различные оригинальные решения или техники, которые мгновенно расходятся по миру веб-разработки и остаются актуальными не один год. Они создают удобные онлайн-сервисы для верстки, пишут полезные js-библиотеки, совершенствуют браузеры, пропагандируют веб-стандарты и оказывают непосредственное влияние на их развитие. Они могут называть себя front end engineer, front-end developer, web developer, web designer, UI Designer, browser compatibility expert или просто css lover, но для большинства из нас они — звезды мирового фронт-енда, которые делают интернет таким, каким мы его знаем. На Хабре довольно часто появляются обзоры интересных решений, техник и новостей из мира веб-разработки с указанием западных авторов, однако далеко не все знают что-нибудь о них кроме имени. Мне захотелось вкратце рассказать для широкой публики о некоторых из этих товарищей.


Читать дальше →
Total votes 105: ↑92 and ↓13+79
Views24K
Comments 83

Hurl: Удобный Curl

Amazon Web ServicesAPI
Sandbox
Привет! image

В 2009 году на «Rails Rumble» Лехом Кульвером и Крисом Ванстратом был создан замечательный инструмент — Hurl.

Hurl — это RoR приложение, предназначенное для того, чтоб посылать HTTP запросы. В целом, функциональность Hurl схожа с Curl. Идея и методы те же, но предназначение совсем другое.

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

Итак мы подняли и улучшили Hurl на своём хостинге — hurl.quickblox.com. Приложение настроено на EC2 инстансе, а данные хранятся на S3.
Читать дальше →
Total votes 24: ↑22 and ↓2+20
Views9.4K
Comments 15

Information

Rating
Does not participate
Location
Харьков, Харьковская обл., Украина
Date of birth
Registered
Activity