Рассмотрим задачу хостинга статичного веб-сайта, например, Leaflet карты с заранее посчитанными данными на ней или статичной 3D модели. Для этих целей можно воспользоваться статическим хостингом файлов на Google Cloud Storage. Кроме того, этот способ позволяет весьма просто ограничить доступ к сайту в веб-интерфейсе Google Cloud, указывая емайлы пользователей, которым доступ разрешен. За счет Google CDN и кэширования файлов можно не беспокоиться об обработке большой нагрузки, а добавление или удаление файлов доступно с помощью консольной утилиты gsutil и в веб-интерфейсе Google Cloud. Также не нужно заниматься получением и обновлением SSL сертификатов и созданием для них доменных имен. Буквально в несколько консольных команд получается масштабируемое и легко поддерживаемое решение с хранением данных в облаке Google и гарантией защиты данных.
entze @entze
User
GitFlow и Semantic Versioning на каждый день
6 min
31KTranslation
Cколько времени я использую GitFlow и Semantic Versioning, меня все не покидает чувство, что чего-то в них не хватает. Обе концепции хороши, но так как они предлагают решения для проблем из разных областей, их совместное использование выглядит сложнее, чем должно быть.
Возможно причина в том, что я выбрал не самый оптимальный путь, и это может стать хорошей темой для будущего поста. В этом же я хочу описать простой подход к управлению релизами приложений и библиотек.
+16
Уязвимость (?) и слежка в эмуляторе Bluestacks?
2 min
68KПрошло два дня этой недели, а крупных скандалов еще нет. Болото стало затягиваться ряской. Давайте поговорим о Bluestacks, эмуляторе Android. Разработчики утверждают, что его установили 90 000 000 человек. Ну давайте я попробую кинуть в Bluestacks грязью.
+50
«Кто на первой базе» — новый географический справочник от Mapzen
17 min
11KTranslation
Маленькая версия
Все административные единицы! Пока всё сыро и сложно!!! Но это пока!!!
Большая версия
Mapzen создаёт географический справочник административных единиц. Не то, чтобы всех, но подавляющего большинства, и, мы надеемся, большинства их видов. Географический справочник — это большой список административных единиц, каждая из которых имеет постоянный идентификатор и некоторое количество свойств, описывающих их местонахождение. Интересно рассматривать справочник как пространство, где дебаты вокруг административных единиц ведутся, но не решаются. Мы называем наш справочник «Who’s On First» (Кто на первой базе), или короче — «WOF».
+14
Микросервисы (Microservices)
22 min
697KОт переводчика: некоторые скорее всего уже читали этот титанический труд от Мартина Фаулера и его коллеги Джеймса Льюиса, но я все же решил сделать перевод этой статьи. Тренд микросервисов набирает обороты в мире enterprise разработки, и эта статья является ценнейшим источником знаний, по сути выжимкой существующего опыта работы с ними.
Термин «Microservice Architecture» получил распространение в последние несколько лет как описание способа дизайна приложений в виде набора независимо развертываемых сервисов. В то время как нет точного описания этого архитектурного стиля, существует некий общий набор характеристик: организация сервисов вокруг бизнес-потребностей, автоматическое развертывание, перенос логики от шины сообщений к приемникам (endpoints) и децентрализованный контроль над языками и данными.
Термин «Microservice Architecture» получил распространение в последние несколько лет как описание способа дизайна приложений в виде набора независимо развертываемых сервисов. В то время как нет точного описания этого архитектурного стиля, существует некий общий набор характеристик: организация сервисов вокруг бизнес-потребностей, автоматическое развертывание, перенос логики от шины сообщений к приемникам (endpoints) и децентрализованный контроль над языками и данными.
+29
Конспект выходного дня: Построение бизнес-моделей
4 min
57KПрошел практически месяц с предыдущего конспекта выходного дня, и вот у меня для вас свежий топик. Сегодня я попробую заинтересовать аудиторию замечательной книгой издательства Альпина-Паблишер — «Построение бизнес-моделей. Настольная книга стратега и новатора», Александр Остервальдер, Ив Пинье (Business Model Generation: A Handbook for Visionaries, Game Changers, and Challengers).
Сразу оговорюсь, что законспектировать всю книгу одной статьей просто невозможно, поскольку материал, изложенный в ней, слишком оригинален и достаточно уплотнен.
Главной мыслью, не побоюсь этого слова, учебника является оригинальный подход к стратегическому планированию бизнеса. Хотя в книге показаны и примеры использования в государственных и некоммерческих учреждениях.
Сразу оговорюсь, что законспектировать всю книгу одной статьей просто невозможно, поскольку материал, изложенный в ней, слишком оригинален и достаточно уплотнен.
Главной мыслью, не побоюсь этого слова, учебника является оригинальный подход к стратегическому планированию бизнеса. Хотя в книге показаны и примеры использования в государственных и некоммерческих учреждениях.
+10
О юридическом значении нажатия пользователем на кнопку «Купить», «Принять условия лицензионного соглашения» и т.п
6 min
19KВ современном мире с помощью Интернета заключаются различные сделки и продаются самые разные товары (в экономическом смысле), как материальные, так и нематериальные (ПО, музыка, фильмы и другая интеллектуальная собственность). Процесс их покупки для конечного пользователя выглядит, как нажатие на кнопку на экране компьютера или смартфона на которой написано «Купить», принять, подтвердить и тому подобное. Иногда для покупки необходимо ввести специальный код, полученный по SMS.
В посте дана попытка изложить эту информацию понятным языком.
В посте дана попытка изложить эту информацию понятным языком.
+18
PHP и различные виды NoSQL
11 min
69KВ последнее время набирают популярность различные NoSQL базы данных. Эта статья начиналась как изучение особенностей
В ходе этого небольшого исследования, были выбраны для подробного рассмотрения СУБД, успешно применяющиеся в области Web. И, поскольку в тегах присутствует «PHP», я выбирал СУБД, которые уже можно использовать с этим языком.
+96
TARS, сделай уровень frontend-рутины 0%
9 min
55KFrontend с каждым днём становится сложнее. Задачи — объёмнее, пользовательский интерфейс — насыщеннее, HTML, CSS и Javascript — огромнее, а сон фронтендера — короче и беспокойнее. Необходимо грамотно структурировать код, выполнять множество рутинных задач (компиляция css- и js-препроцессоров, сборка спрайтов, подготовка и оптимизация изображений, минификация файлов и др). Если вы работаете в команде — это автоматически увеличивает сложность разработки. Чтобы решить эти проблемы, я создал TARS — сборщик html-вёрстки, основанный на gulpjs.
+31
Crowdin: обезболивающее при локализации
4 min
17KО локализации без боли мечтает каждый, кто знает, что такое локализация. Особенно мечтает тот, кому нужно перевести свой продукт сразу на десяток языков. И тот, у кого в текстах сплошные термины. И еще сильнее тот, у кого постоянно выпускаются обновления с новыми строками, которые с тем же постоянством надо переводить, переводить, переводить…
Кадр из фильма Леонида Гайдая «Кавказская пленница, или Новые приключения Шурика»
С этими и другими сложностями мы в Alconost справляемся благодаря одному-единственному инструменту, который решает сразу десяток проблем. Медики назвали бы такую штуку панацеей. А мы, локализаторы, зовем ее облачной платформой Crowdin. Именно Crowdin позволил нам делать локализации приложений, сайтов и игр на 40 с лишним языков для десятков разных клиентов одновременно.
Итак, мы выделили шесть основных сложностей локализации, от которых избавляет Crowdin:
Кадр из фильма Леонида Гайдая «Кавказская пленница, или Новые приключения Шурика»
С этими и другими сложностями мы в Alconost справляемся благодаря одному-единственному инструменту, который решает сразу десяток проблем. Медики назвали бы такую штуку панацеей. А мы, локализаторы, зовем ее облачной платформой Crowdin. Именно Crowdin позволил нам делать локализации приложений, сайтов и игр на 40 с лишним языков для десятков разных клиентов одновременно.
Итак, мы выделили шесть основных сложностей локализации, от которых избавляет Crowdin:
+12
Встраиваем бэкдор в публичный ключ RSA
4 min
112KTutorial
Привет, %username%!
Когда я увидел, как это работает, сказать, что я был в шоке — ничего не сказать. Это довольно простой трюк но после прочтения этой статьи вы больше никогда не будете смотреть на RSA по-прежнему. Это не взлом RSA, это нечто, что заставит вашу паранойю очень сильно разбухнуть.
+115
Многоликие функции Swift
16 min
43KTranslation
Русский перевод очень полезной статьи Natasha Murashev The Many Faces of Swift Functions.
Хотя у Objective-C синтаксис выглядит несколько странно, по сравнению с другими языками программирования, синтаксис метода — прост и понятен. Вот небольшой экскурс в прошлое:
В противоположность этому, синтаксис Swift выглядит в большинстве случаев также, как и в других языках программирования, но временами он может быть более сложным и запутанным, чем в Objective-C.
Прежде чем я продолжу, я хочу прояснить разницу между «методами» и «функциями» в Swift, так как я повсеместно буду использовать оба этих термина в этой статье. Вот определение «методов», данное в книге Apple «Swift Programming Language»:
Хотя у Objective-C синтаксис выглядит несколько странно, по сравнению с другими языками программирования, синтаксис метода — прост и понятен. Вот небольшой экскурс в прошлое:
+ (void)mySimpleMethod
{
// метод "класса"
// нет параметров
// нет возвращаемых значений
}
- (NSString *)myMethodNameWithParameter1:(NSString *)param1 parameter2:(NSNumber *)param2
{
// метод "экземпляра"
// первый параметр - типа NSString указатель,
// второй параметр - типа NSNumber указатель
// должен вернуть значение типа NSString указатель
return @"hello, world!";
}
В противоположность этому, синтаксис Swift выглядит в большинстве случаев также, как и в других языках программирования, но временами он может быть более сложным и запутанным, чем в Objective-C.
Прежде чем я продолжу, я хочу прояснить разницу между «методами» и «функциями» в Swift, так как я повсеместно буду использовать оба этих термина в этой статье. Вот определение «методов», данное в книге Apple «Swift Programming Language»:
+24
Клик фрод, ботнеты, слив бюджетов, как вас обманывает вся интернет реклама, включая контекст и РТБ и как поставить всех раком
7 min
30KВозможно этой статьей я похороню свою контору, а вместе с ней мечты о работе по CPS. Мечты о честной, прозрачной и понятной работе без вранья и обмана. Возможно, но не факт. Может быть, он станет определенным манифестом в отрасли, в которой я работаю.
Проблема в том, что чем ты честней на этом рынке – тем ты более бедный. К сожалению, я не исключение и передо мной стал выбор. Либо стать в общую очередь за распилом бюджетов, сливая ботовый трафик и сваливая неудачи на рекламодателя, либо попробовать что-то изменить. Жить за счет обмана и быть постоянно по уши в говне, которое низвергает на тебя рекламодатель, после очередного «эффективного» размещения – есть сомнительное удовольствие от работы.
Недавно ко мне пришел один стартапер, приятель, к которому я хорошо отношусь и спросил где, ему рекламироваться лучше всего и за не очень дорого. На что мой ответ был таким: «Дружище, прости, но после 3 лет в рекламе я могу честно ответить, что я не знаю. Попробуй в социалках, там вроде не накручивают, хотя я в этом тоже не уверен».
Проблема в том, что чем ты честней на этом рынке – тем ты более бедный. К сожалению, я не исключение и передо мной стал выбор. Либо стать в общую очередь за распилом бюджетов, сливая ботовый трафик и сваливая неудачи на рекламодателя, либо попробовать что-то изменить. Жить за счет обмана и быть постоянно по уши в говне, которое низвергает на тебя рекламодатель, после очередного «эффективного» размещения – есть сомнительное удовольствие от работы.
Недавно ко мне пришел один стартапер, приятель, к которому я хорошо отношусь и спросил где, ему рекламироваться лучше всего и за не очень дорого. На что мой ответ был таким: «Дружище, прости, но после 3 лет в рекламе я могу честно ответить, что я не знаю. Попробуй в социалках, там вроде не накручивают, хотя я в этом тоже не уверен».
+31
Стэнфордские курсы «Разработка iOS приложений» — неавторизованный конспект лекций на русском языке и 2015?
5 min
50KЯ разместила иконки курсов Стэнфордского университета по разработке приложений на iOS в обратном хронологическом порядке. На первом месте стоит иконка Swift — нового языка программирования для создания приложений на iOS, объявленного на WWDC 2014. Кроме Swift реализована новая версия iOS — iOS 8. Уже известно, что Стэнфордский университет запустит зимой 2015 года новый курс CS193P с неизвестным пока названием (может быть будет что-то вроде «Developing iOS 8 Apps for iPhone and iPad»). Лектор тот же — профессор Paul Hegarty.
В традиции Стэнфорда выкладывать курс CS193P на iTunes U в виде бесплатного курса обучения, но делают это они со сдвигом во времени, чтобы не мешать платному обучающему процессу, так что в феврале-марте 2015 года (как это было в 2013 году) можно ожидать постепенное появление лекций на iTunes U. Так что время есть.
Я прошла почти все курсы профессора Пола Хэгарти — от iOS 5 до iOS 7 — до самого конца (смотри Github ).
Для подготовки к перспективному курсу по iOS 8 разместила на своем сайте «Разработка iOS приложений» неавторизованные конспекты лекций, тексты домашних заданий и примеры их решения на русском языке для последнего доступного в настоящее время обучающего курса «Developing iOS 7 Apps for iPhone and iPad», запущенного Стэнфордским университетом в семестре «осень 2013 — зима 2014 года» на iTunes U.
+11
Безопасность 4G: захватываем USB-модем и SIM-карту с помощью SMS
4 min
152KТелеком-операторы активно рекламируют быструю и дешевую 4G-связь. Но насколько она защищена, знают немногие. Экспертам Positive Technologies в процессе исследования безопасности 4G-коммуникаций удалось найти уязвимости в USB-модемах, позволяющие взять под контроль компьютер, к которому подключён модем, а также аккаунт абонента на портале мобильного оператора. Кроме того, атаки на SIM-карту с помощью бинарных SMS позволяют перехватить и расшифровать трафик абонента, либо просто заблокировать заданную «симку».
+80
Как удалить bucket с 400 миллионами файлов на Amazon S3
1 min
22KДопустим, у вас в бакете скопилось несколько сотен миллионов файлов (всякое бывает) и вы решили их удалить. Удалить бакет без удаления содержимого нельзя. Удаление самих файлов происходит примерно по 1000 за 2 секунды. Несложно посчитать, что 400 миллионов файлов можно удалить за 9 дней работы браузера без выключения, да еще и заплатить придется за каждую операцию (DELETE хоть и бесплатный, но LIST стоит денег).
Но есть возможность настроить правила хранения файлов так, чтобы они удалялись автоматически:
Но есть возможность настроить правила хранения файлов так, чтобы они удалялись автоматически:
+47
Криптографические решения. От криптопровайдеров до браузерных плагинов
11 min
55KПроизводители средств криптографической защиты информации (СКЗИ) предлагают различные механизмы для интеграции криптосредств в информационные системы. Существуют решения, ориентированные на поддержку систем с Web-интерфейсом, мобильных и десктопных приложений, серверных компонентов. СКЗИ интегрируются в приложения Microsoft и в продукты Open Source, обеспечивают поддержку различных прикладных протоколов и форматов электронной подписи.
С учетом растущего количества проектов с применением ЭЦП и появления массовых проектов для физических лиц, разработчикам подобных проектов требуется хорошо ориентироваться в предлагаемых производителями решениях по ЭЦП для того, чтобы сделать систему удобной в эксплуатации и недорогой в плане техподдержки. Таким образом, если еще лет 5 назад главным фактором выбора криптосредства являлось его полное соответствие требованиям регуляторов, то при сегодняшнем разнообразии важными критериями могут выступать охват поддерживаемых платформ, возможность интеграции с браузером, поддержка мобильных пользователей, возможность установки без прав системного администратора и т.п.
В данном материале сделана попытка классифицировать средства криптографической защиты информации.
Классификация построена на основе:
Кроме того, показаны способы интеграции СКЗИ с Web-приложениями и возможность его использования на мобильных платформах
Общая схема классификации приведена в таблице:
В первой статье рассмотрим решения, начиная с криптопровайдеров по браузерные плагины включительно. В последующих статьях будут рассмотрены остальные средства.
С учетом растущего количества проектов с применением ЭЦП и появления массовых проектов для физических лиц, разработчикам подобных проектов требуется хорошо ориентироваться в предлагаемых производителями решениях по ЭЦП для того, чтобы сделать систему удобной в эксплуатации и недорогой в плане техподдержки. Таким образом, если еще лет 5 назад главным фактором выбора криптосредства являлось его полное соответствие требованиям регуляторов, то при сегодняшнем разнообразии важными критериями могут выступать охват поддерживаемых платформ, возможность интеграции с браузером, поддержка мобильных пользователей, возможность установки без прав системного администратора и т.п.
В данном материале сделана попытка классифицировать средства криптографической защиты информации.
- Рассмотрены в основном СКЗИ, использующиеся на клиентских местах для защиты клиент-серверных соединений по протоколу TLS, для организации ЭЦП, шифрования передаваемых данных;
- Не рассматриваются СКЗИ, применяемые для создания VPN и шифрования файловой системы, хранимых данных, а так же УЦ;
- Отдельно выделены аппаратные криптографические устройства.
Классификация построена на основе:
- технологий интеграции (CryptoAPI, Active-X, NPAPI и др.), которые поддерживают СКЗИ для встраивания в приложения и прикладные системы;
- интерфейсов, которые предоставляют СКЗИ для встраивания в приложения и прикладные системы.
Кроме того, показаны способы интеграции СКЗИ с Web-приложениями и возможность его использования на мобильных платформах
Общая схема классификации приведена в таблице:
Криптопровайдеры | Нативные библиотеки (openssl-style, PKCS#11, NSS, собственные интерфейсы) | Локальные прокси | Браузерные плагины | Облачная подпись | Браузеры с российской криптографией |
Почтовые клиенты с российской криптографией | Российская криптография в фреймворках, платформах, интерпретаторах | Настольные криптографические приложения | Криптография в BIOS UEFI | Сервис-провайдеры ЭЦП | Эмуляторы доверенной среды |
Аппаратные средства |
В первой статье рассмотрим решения, начиная с криптопровайдеров по браузерные плагины включительно. В последующих статьях будут рассмотрены остальные средства.
+11
EULA для самых маленьких
10 min
18KПривет Хабр GT! В рамках разделения Хабра на, собственно, Хабр и GT, мне кажется, пришло время достать из загашников материалы, написанные еще на другом, удаленном аккаунте, дабы они не исчезли в горниле переезда. Да и тематике нового ресурса соответствуют они более чем. Ну что же, поехали!
Когда-то читая статьи и комментарии к ним еще на Хабре, я столкнулся с фактом того, что очень многие люди не осознают механизмов работы EULA (Пользовательское соглашение). Очень часто даже самые умные и грамотные люди не вникают в тонкости взаимоотношений между ними и компанией, софтом которой они пользуется. Чаще всего конфликты возникают как раз на почве компьютерных игр с возможностью доната, а так же в вопросах блокировки учетных записей. В первую очередь, данные положения касаются, конечно, игровых аккаунтов, однако, подобные методы применимы к любым EULA, в том числе, и софтверным.
Я с уверенностью могу сказать, что разбираюсь в тонкостях урегулирования вопросов в плане общения саппорт-пользователь по вопросам Пользовательского Соглашения, так как находился по обе стороны баррикад. Хотите узнать чуть больше о некоторых тонкостях жонглирования формулировками ПС?
Когда-то читая статьи и комментарии к ним еще на Хабре, я столкнулся с фактом того, что очень многие люди не осознают механизмов работы EULA (Пользовательское соглашение). Очень часто даже самые умные и грамотные люди не вникают в тонкости взаимоотношений между ними и компанией, софтом которой они пользуется. Чаще всего конфликты возникают как раз на почве компьютерных игр с возможностью доната, а так же в вопросах блокировки учетных записей. В первую очередь, данные положения касаются, конечно, игровых аккаунтов, однако, подобные методы применимы к любым EULA, в том числе, и софтверным.
Я с уверенностью могу сказать, что разбираюсь в тонкостях урегулирования вопросов в плане общения саппорт-пользователь по вопросам Пользовательского Соглашения, так как находился по обе стороны баррикад. Хотите узнать чуть больше о некоторых тонкостях жонглирования формулировками ПС?
+18
Налоги в США. Часть 1. Введение, income tax, федеральный налог, налог штата, Social Security taxes
7 min
221KВведение
Последние месяцы на Хабре мне часто попадаются обсуждения налогов в США. Как правило, это происходит в топиках, где обсуждение по какой-то причине скатилось к вечным темам «у нас все плохо — у них хорошо», «у нас хорошо — у них все плохо», «пора валить отсюда», «Да в США такие налоги, что непонятно, как бедные люди вообще там выживают» и т.п.
В очередной раз наткнувшись на такое обсуждение, я спросил тут же в комментарии и даже задал соответствующий хабравопрос — народ, а может вместо того, чтобы беспорядочно спорить о налогах в США в куче разных топиков, давайте я напишу отдельный подробный пост на эту тему, и там и будем спорить? За этот комментарий и хабравопрос я получил изрядно кармы и хабрасилы, и, собственно, на этом можно было бы и остановиться
Обсуждающие налоги в таких топиках делятся, как правило, на три заметные группы:
- Те, кто о налогах в США знает мало, но хотел бы узнать побольше из первых рук, а так же задать в одном месте все интересующие вопросы и получить ответы
всего за 0.99$ за один ответ! - Те, кто реально разбирается в предмете (в 90% случаев это люди, работающие и живущие в США). В обсуждениях участвуют обычно короткими репликами, так как вопрос сложный и расписывать все в деталях каждый раз лень и вообще дело неблагодарное.
- Те, кто о налогах в США знает из разных сомнительных источников, вроде блогпостов диванных аналитиков, но мнение имеет.
Для первых я и решил написать этот пост. От вторых я с благодарностью приму замечания и дополнения. Третьи могут не беспокоиться.
В первой части я напишу про налоги вообще, про федеральный налог и налог штатов и как они вычисляются и про Social Security / Medicare tax.
Во второй части (coming soon) — про годовой цикл налогообложения и различные формы — W-2, W-4, 1040NZ и прочее и прочее.
В третьей части (coming soon) — про процесс подачи Tax Return, про сайты которые помогают заполнять здоровенные формы, про применение налоговых вычетов, и, ГЛАВНОЕ о налогах в США — если есть основания, как можно получить обратно существенную часть удержанных с вас налогов. Поэтому, читая этот пост, держите в голове — большинство людей платит существенно меньшие налоги, чем те, которые я тут вычисляю для примера без учета возможных вычетов.
Поехали.
+115
Триальные версии CS6 доступны для скачивания с серверов Adobe
1 min
2.5KUPD: судя по всему, более не работает. Ждите ссылки с официального сайта.
В сети появились ссылки на триальные версии продуктов линейки CS6, причем как для отдельных продуктов, так и Creative Suite целиком. Ссылок на скачивание пока нет на самом adobe.com, но файлы уже лежат на CDNах.
Пока нет английской версии, зато смело можно качать
ko_KR / zh_CN / zh_TW / da_DK / de_DE / es_ES / es_MX / fi_FI / fr_CA / fr_FR / it_IT / nb_NO / nl_NL / pt_BR / sv_SE / cs_CZ / hu_HU / pl_PL / ro_RO / ru_RU / tr_TR / uk_UA
В сети появились ссылки на триальные версии продуктов линейки CS6, причем как для отдельных продуктов, так и Creative Suite целиком. Ссылок на скачивание пока нет на самом adobe.com, но файлы уже лежат на CDNах.
Пока нет английской версии, зато смело можно качать
ko_KR / zh_CN / zh_TW / da_DK / de_DE / es_ES / es_MX / fi_FI / fr_CA / fr_FR / it_IT / nb_NO / nl_NL / pt_BR / sv_SE / cs_CZ / hu_HU / pl_PL / ro_RO / ru_RU / tr_TR / uk_UA
+1
Information
- Rating
- 4,461-st
- Location
- Россия
- Registered
- Activity