Как стать автором
Обновить
-3
0

Пользователь

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

Пять способов пагинации в Postgres, от базовых до диковинных

Время на прочтение13 мин
Количество просмотров78K
Вас может удивить тот факт, что пагинация, распространенная, как таковая, в веб приложениях, с легкостью может быть реализована нерационально. В этой статье мы испробуем различные способы пагинации на стороне сервера и обсудим их удобство при использовании в PostgreSQL. Статья поможет Вам понять, какая техника более уместна в Вашей ситуации, в том числе некоторые Вы, возможно, не видели прежде, а именно те, которые полагаются на физическую кластеризацию и сборщика статистики базы данных.
Читать дальше →
Всего голосов 29: ↑29 и ↓0+29
Комментарии33

Дайджест последних достижений в области криптографии. Выпуск нулевой

Время на прочтение3 мин
Количество просмотров23K


Привет!
Хотелось бы в одной статье вкратце рассказать о достижениях математиков, которыми мы уже пользуемся или скоро будем.
Начнем
с постквантовой криптографии
Всего голосов 38: ↑36 и ↓2+34
Комментарии26

Запускаем iOS приложения из консоли на девайсе и симуляторе

Время на прочтение7 мин
Количество просмотров24K
В статье будет кратко описано, как собрать приложение консольными командами и запустить на реальном девайсе и симуляторе без какой-либо надобности открывать xcode для этого.

В общем, стоит начать с того, что в моей компании имеется отдел ios разработки в составе > 10 человек, которые работают над пачкой приложений. Для автоматизации рутинной работы нам пришлось развернуть CI сервер (пока самописный, ввиду особых исторических причин (ну как у всех), планируется миграция на jenkins). К рутинным вещам я отношу — сборку проектов, запуск тестов (если, конечно, вы их пишете), создание ипашек для тестеров и для выкладки в app store. В общем, хотелось чтобы по нажатию кнопочки или по хуку в гите всё это начинало работать. Пока у нас всё работает по нажатию кнопки разработчиком, про гит пока только в планах. В данной статье я только затрону тему компиляции проекта и упаковку его в ipa файла. Функционал запуска проектов на девайсах на стороне CI сервера еще находится в стадии разработки, а вот сам процесс упаковки уже давно в «бою», может кому пригодиться.

Что планируем:

  • соберем приложение и запустим на симуляторе
  • соберем ipa и запустим на реальном девайсе
  • соберем ipa для выкладки на маркет
  • немного подэбажим ошибки сборки
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии2

Лучше или хуже

Время на прочтение5 мин
Количество просмотров12K
Перевод статьи «For Better or For Worse» разработчика из компании DataDog Inc. Статья посвящена вопросу дизайна языков программирования и связи дизайна с попытками оценок качества языков. Частично является ответом на недавно переведенную тут эту статью.

В программистской тусовке возникает мем об “объективном качестве” дизайна Go. Буквально на днях я встретил его в статье про выбор языков от Honza, где он был очень хорошо виден:
Учтите, язык объективно очень плохо спроектирован. [...] И, при этом, Go гораздо более популярен, чем Haskell, если верить GitHub. При этом, уже столько отличных проектов, написанных на Go, вроде Docker, InfluxDB, etcd, Consul, Prometheus, packer и других.

Я думаю, что это крайне интересный набор противоречий, и автор с этим согласен.

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

Когда люди с таким видением пытаются объяснить популярность Go, они неизбежно приходят к парадоксу. Если Go настолько плох, почему он так популярен?
Читать дальше →
Всего голосов 55: ↑34 и ↓21+13
Комментарии94

Подборка библиотек для бекенда

Время на прочтение2 мин
Количество просмотров12K
Мы пишем свои бекенды на Go. Собираем метрики кода и балансируем запросы на шарды.
Шифруем RPC. Общаемся с Монгой. За год разработки сформировался стек проверенных библиотек.
Например, goagain сэкономил кучу времени и дебага после обрыва клиентов внутреннего RPC.

Делимся подборкой библиотек, проверенных и работающих в бою.
Читать дальше →
Всего голосов 34: ↑30 и ↓4+26
Комментарии1

Изучаем net/context в Go

Время на прочтение11 мин
Количество просмотров61K
Не секрет, что основная ниша использования Go это сетевые сервисы: всевозможные серверы, бекенды, микросервисы, распределенные базы данных и файловые хранилища. Такой класс программ очень активно использует сетевые запросы, весь необходимый функционал для которых есть в стандартной библиотеке, но один аспект разработки сетевых архитектур остается для многих темным пятном — контексты запросов. В этой статье я хочу рассмотреть этот аспект повнимательней и показать, какой это мощный и важный инструмент.


Читать дальше →
Всего голосов 26: ↑23 и ↓3+20
Комментарии8

С чего начать новичку в Go

Время на прочтение2 мин
Количество просмотров160K
Если вы решили попробовать замечательный язык Go, но не знаете с чего начать, вам прямая дорога в этот пост, где я постарался перечислить все необходимые для новичков ресурсы.
Читать дальше →
Всего голосов 56: ↑50 и ↓6+44
Комментарии50

Чистая архитектура в Go-приложении. Часть 3

Время на прочтение8 мин
Количество просмотров17K
От переводчика: данная статья написана Manuel Kiessling в сентябре 2012 года, как реализация статьи Дядюшки Боба о чистой архитектуре с учетом Go-специфики.



Это третья статья цикла об особенности реализации Чистой Архитектуры в Go. [Часть 1] [Часть 2]
Интерфейсы ...
Всего голосов 19: ↑12 и ↓7+5
Комментарии11

Подборка полезных статей для iOS-разработчиков за текущую неделю

Время на прочтение2 мин
Количество просмотров7.6K
Надеюсь, все успешно обновились до 9.0.2 и El Capitan. Уже успело подзабыться с презентации, что же там такого нового. Тем приятнее находить изменения. Сегодня вечером встреча Cocoa Heads Moscow. Большая программа. Не забывайте.
Кстати, 29 октября планируется ежегодная встреча разработчиков LLVM. Возможно там будет что-нибудь сказано про Swift и то, когда он станет Open-Source.



Читать дальше
Всего голосов 23: ↑18 и ↓5+13
Комментарии1

Обзор способов и протоколов аутентификации в веб-приложениях

Время на прочтение18 мин
Количество просмотров619K


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

Перед тем, как перейти к техническим деталям, давайте немного освежим терминологию.

  • Идентификация — это заявление о том, кем вы являетесь. В зависимости от ситуации, это может быть имя, адрес электронной почты, номер учетной записи, итд.
  • Аутентификация — предоставление доказательств, что вы на самом деле есть тот, кем идентифицировались (от слова “authentic” — истинный, подлинный).
  • Авторизация — проверка, что вам разрешен доступ к запрашиваемому ресурсу.


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

Аналогично эти термины применяются в компьютерных системах, где традиционно под идентификацией понимают получение вашей учетной записи (identity) по username или email; под аутентификацией — проверку, что вы знаете пароль от этой учетной записи, а под авторизацией — проверку вашей роли в системе и решение о предоставлении доступа к запрошенной странице или ресурсу.

Однако в современных системах существуют и более сложные схемы аутентификации и авторизации, о которых я расскажу далее. Но начнем с простого и понятного.
Читать дальше →
Всего голосов 48: ↑48 и ↓0+48
Комментарии20

Коллоквиумы на факультете Яндекса в Вышке: молекулярная биология

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

На факультете помимо занятий для студентов есть специальные семинары, на которые могут приходить все желающие. Они проходят в рамках Коллоквиума факультета компьютерных наук ВШЭ. Семинары проводят учёные не только из Вышки, но из других вузов и научных центров — МГУ, МФТИ, Математического института и института системного анализа РАН, MIT, Microsoft Research, Школы анализа данных Яндекса. Прийти их послушать может не только студент или сотрудник ФКН, но и любой желающий. С сегодняшнего дня мы начинам публиковать записи избранных выступлений.



Первый семинар, который мы выбрали, проводил известный российский биоинформатик Михаил Гельфанд. Из него вы узнаете об основных информационные процессах, протекающих в клетке при реализации геномной программы. Как говорил сам Михаил Сергеевич, доклад задумывался как «crash course по молекулярной биологии для тех коллег, которые хотят понимать, чем занимаются биологи и про что разговаривают биоинформатики».
Читать дальше →
Всего голосов 46: ↑44 и ↓2+42
Комментарии11

28 секретов исключительно продуктивных людей

Время на прочтение7 мин
Количество просмотров22K
image

В этой статье Jeff Haden, расскажет секреты продуктивности от знаменитых авторов, успешных предпринимателей, инвесторов, руководителей и людей творческих профессий.
Читать дальше →
Всего голосов 14: ↑13 и ↓1+12
Комментарии3

Unity 3d 4.6 (5) проект Survival shooter game на русском

Время на прочтение2 мин
Количество просмотров27K
Здравствуйте!

Сегодня мы приступаем к изучению и сборке готового проекта от команды Unity 3d под названием Survival Shooter.

При детальном изучении проекта мы коснемся таких игровых аспектов в изучении, как новая UI (версия Unity 3d 4.6), создание скриптов для движения камеры, управления игровым персонажем, точки спауна врагов и многое другое.

Рассмотрим виды анимации и ее логического применения с помощью Animator Controller.
Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии2

Дистанционная работа: Более 130 полезных источников

Время на прочтение5 мин
Количество просмотров57K


Данная подборка позволит вам разобраться с плюсами и минусами дистанционной работы, оценить затраты и возможную экономию, познакомиться с опытом коллег и взглянуть на целый спектр компаний, команды которых работают дистанционно.
Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии9

Сделай сам: MSc Computer Science на уровне топ американских университетов из дома

Время на прочтение12 мин
Количество просмотров161K

Вступление


Давно хотел написать статью про образование в Computer Science, но руки не доходили. Решил все-таки это наконец сделать. Итак, о чем пойдет речь? Речь о том, что из себя представляет диплом MSc Computer Science топовых университетов США (во всех подробностях, включая основные курсы, книги и проекты) и как ему соответствовать.

Почему именно MSc? Это — некая развилка: с одной стороны после MSc — вы уже готовый к жизни инженер (да, речь идет о инженерной подготовке, как мне кажется это самое больное место в нашей системе образования), с другой — можно спокойно идти по пути PhD. Как известно, в PhD программу можно попасть и не особо умея программировать — особенно это касается теоретического Computer Science. С другой стороны найти работу программиста тоже дело не очень сложное, и часто не требует мощного образования. Но достигнув уровня MSc — вы получаете возможность разбираться как во всех новый идеях в Computer Science, так и возможность их воплотить в практику. То есть с одной стороны круто разобраться в каком-нибудь deep learning и сделать в нем что-то новое, а также взять и написать свою операционную систему (кто так сделал?). Причем вы не зажаты в рамки узкой специализации (если конечно продолжаете учиться). То есть вы теперь — универсальный солдат, готовый на все.

Надеюсь что эта статья будет полезна:
1. Студентам, которые хотят соответствовать высоким стандартам топ вузов США, или собирающиеся туда в аспирантуру по Computer Science
2. Профессионалам, которые хотят закрыть «дыры» и пробелы
3. Может кто-то из преподавателей возьмет на заметку для своих курсов.
4. Студентам, аспирантам американских вузов — хотелось бы тоже получить фидбэк, особенно касается последних трендов в образовании

Что же здесь будет написано? Минимум философии и общих мыслей: конкретная программа undergraduate и graduate курсов, конечно из дисциплин наиболее мне близких. Все курсы были лично прочувствованы на собственной шкуре, по этому и пишу. (Я пытался записаться на все интересные курсы, которые были, но мой основной упор — системное программирование, базы данных и искусственный интеллект. Отсюда конечно некий bias, но пытаюсь предложить более-менее универсальную программу).
Читать дальше →
Всего голосов 86: ↑81 и ↓5+76
Комментарии64

86 бесплатных площадок для продвижения стартапов на международном рынке

Время на прочтение4 мин
Количество просмотров102K


Мы дополнили и адаптировали оригинальную подборку, выбрав исключительно бесплатные ресурсы для продвижения стартапов на международном рынке. Помимо этого мы переработали первоначальную классификацию, ввели ранжирование по потенциальному охвату аудитории (для площадок с обозначенным охватом) и распределили соответствующие ресурсы в тематические категории.
Читать дальше →
Всего голосов 33: ↑32 и ↓1+31
Комментарии9

300 потрясающих бесплатных сервисов

Время на прочтение11 мин
Количество просмотров1.6M


Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly.com Domain: Конструктор веб-сайтов.
  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
  • Withoomph: Мгновенное создание логотипов (англ.).
  • Hipster Logo Generator: Генератор хипстерских логотипов.
  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
  • Invoice to me: Бесплатный генератор счета.
  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
  • Slimvoice: Невероятно простой счет.

Читать дальше →
Всего голосов 341: ↑325 и ↓16+309
Комментарии107

Опыт переезда в Германию системным администратором

Время на прочтение10 мин
Количество просмотров37K
В интернете можно найти множество статей касающихся преимущественно программистов и их опыта переезда в Германию, но практически нет таковых про системных администраторов. При этом работа системного администратора (и поиск её) обладают своей спецификой, к тому же я за последние полгода смог наступить на целый ряд граблей, о которых тоже полезно было бы знать заранее. Собственно, об этом я и хотел бы рассказать в данной статье.

Прошу прощения, что публикую в не совсем профильный «Государство и IT», потому что более подходящего хаба на данный момент нет, а при попытке опубликовать в песочницу на GeekTimes, попросили опубликовать здесь.
Читать дальше →
Всего голосов 33: ↑32 и ↓1+31
Комментарии18

Взгляд назад, или что бы я сделал по-другому, переехав работать в Германию сейчас. Часть 1

Время на прочтение6 мин
Количество просмотров48K
Пост навеян недавней публикацикй «Как айтишнику уехать в Германию. Часть 1» от FlashXL. Не то, чтобы я начал все по-другому, но было бы меньше граблейошибок. Я не претендую на полноту картины — просто хочется поделиться своим опытом и предостеречь от возможных ошибок тех, кто находится сейчас в процессе найма на работу в Германии (в IT индустрии), а также, возможно, дать какие-то советы.
Читать дальше →
Всего голосов 55: ↑54 и ↓1+53
Комментарии76

Руководство к Car Tutorial (Unity3d) часть 3 из 3

Время на прочтение18 мин
Количество просмотров28K
Часть 1
Часть 2

Прежде чем начнем, хочу предложить скрипты переписанные на C#. т.к половина скриптов на JS я решил переписать их под C# (мне C# роднее). Скачать

Так же идет активный «разбор» проекта для начинающих «Project: Survival shooter», видеоуроки представлены в следующем Плэйлисте, дополнительные видеоуроки к Survival shooter. Лично выражаю благодарность этому каналу, за их не легкий труд.

p.s в конце этого руководства есть видео обзор в котором на примерах идет сравнение двух реализованных методов управления автомобилем.

Итак, приступим к изучению нашего руководства.

Часть 3: Под капотом


Мы уже видели, как собрать рабочую машину из 3D-модели, скриптов и встроенных компонентов. Мы также познакомились с публичными переменными и как они могут быть использованы для тонкой настройки автомобиля.
Читать дальше →
Всего голосов 11: ↑9 и ↓2+7
Комментарии3

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность