Обновить
0
0

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

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

BDD-разработка на django

Время на прочтение6 мин
Охват и читатели17K
Программисты очень по разному относятся к тестированию, и многие не любят писать тесты. Процесс TDD же для новичков не особенно понятен — ведь приходится вместо функционала программы писать вначале тест, который его проверяет, то есть количество работы увеличивается. Однако со временем приходит осознание того, что автоматическое тестирование необходимо. К примеру, возьмем процесс разработки даже несложного проекта на django, пока в проекте пара вьюх и моделек все просто. Когда приложение обрастает функциями, внезапно обнаруживается, что совершать такое тестирование все сложнее — кликов больше, надо вносить какие-то данные и т.д., вот тут-то и на помощь приходит behavior-driven development (BDD).

image

Я хочу рассказать о BDD на примере создания примитивного приложения — рейтинга сайтов. Идея тривиальна — на странице отображается список сайтов, пользователь голосует за сайт, сайт поднимается в рейтинге и соответственно изменяет положение на странице.
Читать дальше →

Kotlin для Android, или лёгкий способ перестать программировать на Java

Время на прочтение1 мин
Охват и читатели41K
На нашей конференции мобильных разработчиков #MBLTDev, которая прошла в конце октября в Москве, продуктолог компании JetBrains Илья Рыженков рассказал доклад о языке программирования под Android Kotlin.

Kotlin был разработан в компании JetBrains и публично представлен в 2011 году. В 2012 был открыт исходный код.


Презентация

Илья рассказал про историю создания языка, преимуществах программирования на Kotlin, отличия Kotlin от Java и о том, что на нем можно делать. А также показал несколько примеров кода на Kotlin для платформы Android.
Читать дальше →

HTML5/AngularJS/Nginx приложение с правильным с google-индексированием

Время на прочтение3 мин
Охват и читатели38K
Большинство web-приложений и web-фреймворков используют архитектуру, не позволяющую разделить ui и backend разработку. Тем самым нет возможности разделить команду на узкоспециализированных frontend и backend разработчиков. Вне зависимости от предпочтений разработчика ему приходится иметь понимание как о слое представления, так и о слое логики. Если ui-разработчик знает только о том, как запустить сервер, и о модели данных — это огромная удача. В плохих случаях ui-разработчику необходимо провести полную сборку проекта чтобы увидеть изменения строчки в javascript файле, или знать о языке jsp файлов чтобы поменять стиль элемента. Формирование и передача на сервер обработанных html файлов так-же пагубно влияет на производительность сервера и сети.

non-ajax

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

В чем разница между factory и provider в AngularJS (на пальцах)

Время на прочтение2 мин
Охват и читатели53K
Как-то давно переводил статью «Понимание типов сервисов в AngularJS (constant, value, factory, service, provider)». На практике, конечно, не всё пригождается, поэтому в рамках понижения порога вхождения в Ангуляр, объясню проще.
Читать дальше →

Понимание типов сервисов в AngularJS (constant, value, factory, service, provider)

Время на прочтение6 мин
Охват и читатели192K
Ангуляр поставляется с различными видами служб или сервисов, каждый из которых применяется в своей ситуации.
Имейте в виду, что сервисы, не зависимо от типа, это всегда синглтоны (одиночки).

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

Перейдем к типам сервисов
Читать дальше →

Использование RequireJS в приложениях AngularJS

Время на прочтение6 мин
Охват и читатели17K
При написании больших JavaScript-приложений одна из самых простых вещей, которую можно сделать, это разделить код на несколько файлов. Это улучшает поддерживаемость кода, но увеличивает шансы потерять или ошибиться со вставкой тега script в главный HTML-документ. Отслеживание зависимостей затрудняется с ростом числа файлов проекта. Эта проблема присутствует в больших AngularJS приложениях до сих пор. У нас есть целый ряд инструментов, которые заботятся о загрузке зависимостей в приложении.

В этой статье мы рассмотрим, использование RequireJS с AngularJS для упрощения загрузки зависимостей. Мы также рассмотрим, как использовать Grunt для генерации файлов, содержащих модули RequireJS.
Читать дальше →

Быстрая настройка Grunt для комфортной разработки

Время на прочтение7 мин
Охват и читатели25K
Быстрая настройка Grunt для комфортной разработки

Во время разработки нашего сервиса bitcalm.com, нам потребовалось организовать автоматическую сборку проекта. Перед нами стояла цель улучшить производительность frontend-части нашего приложения, а также оптимизировать процессы разработки и развертывания на сервере.

Основными задачами, которые требовалось решить, стали:
  1. Объединение и минификация скриптов
  2. Объединение и минификация стилей
  3. Сжатие png-изображений
  4. Создание спрайтов из всех изображений (с возможностью удобного использования и с поддержкой двух видов спрайтов для девайсов с разным PPI)
  5. Построение разных версий html-документов для разработки и для продакшна

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

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

Выразительный JavaScript: HTTP

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

Содержание




Мечта, ради которой создавалась Сеть – это общее информационное пространство, в котором мы общаемся, делясь информацией. Его универсальность является его неотъемлемой частью: ссылка в гипертексте может вести куда угодно, будь то персональная, локальная или глобальная информация, черновик или выверенный текст.

Тим Бернес-Ли, Всемирная паутина: Очень короткая личная история

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

О космическом тепле и холоде

Время на прочтение5 мин
Охват и читатели172K
В жаркие летние дни самое время поговорить о жаре и холоде космоса. Благодаря научно-фантастическим фильмам, научно- и не очень научно-популярным передачам, у многих закрепилось убеждение, что космос — это невообразимо холодное место, в котором самое главное — найти как согреться. Но на самом деле все гораздо сложнее.


Фото космонавта Павла Виноградова
Читать дальше →

Распознавание русской речи для колл-центров и параноиков

Время на прочтение11 мин
Охват и читатели75K
Когда вы звоните в колл-центр, вас внимательно слушает, а иногда и отвечает, не только оператор и товарищ майор, но и робот-аналитик. Этот хитрый робот умеет распознавать нужные ключевые слова в вашей речи, но и производить полнотекстовое распознавание речи, и на основании этого всего, делать далеко идущие выводы.



Анализировать записи можно как «на лету» (что делается редко), так и постфактум, например, разыскивая конкретные звонки для анализа живым человеком. Я работал с несколькими программно-аппаратными решениями для этого, и сейчас поделюсь опытом.


Автоматическое распознавание уже начинает справляться с русским языком, за исключением некоторых особо сложных случаев

Сразу отмечу — да, эти решения могут сочетаться с определением конкретного человека по «голосовому отпечатку пальца», но это немного другая история и подробно останавливаться на этом здесь я не буду.
Читать дальше →

Облачная платформа Яндекса: Cocaine в действии

Время на прочтение21 мин
Охват и читатели38K
Мы уже рассказали вам, что такое Cocaine и как его развернуть «в домашних условиях». Сегодня речь пойдёт о том, как пользоваться его инфраструктурой на уровне программиста. Кстати, 26 апреля в 14:00 в московском офисе Яндекса пройдет встреча, на которой можно будет вживую пообщаться с нами — командой, которая делает Cocaine. Приходите, но не забывайте регистрироваться.



Итак, из сегодняшнего поста вы узнаете:

  • как писать приложения;
  • как пользоваться приложениями и сервисами нативно, используя предоставленные фреймворки;
  • как изменить приложение, чтобы оно отвечало по http, а также как потестировать эти приложения, используя Cocaine http proxy;
  • как написать собственный сервис.

Давайте же начнем наше погружение в «кокаиновые» будни программиста.
Много кода инсайд

Как IT-фрилансеру стать предпринимателем. Часть 1

Время на прочтение3 мин
Охват и читатели93K
Всем привет! Это наш первый пост на Хабре, и мы расскажем, как IT-фрилансеру стать предпринимателем.

Вы узнаете, зачем фрилансеру ИП. Почему ИП лучше, чем ООО. Как зарегистрировать ИП самостоятельно. Что делать потом. Надеемся, опыт, который мы накопили за два года нашего проекта «Я люблю ИП», вам пригодится.



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

Как IT-фрилансеру стать предпринимателем. Часть 3

Время на прочтение4 мин
Охват и читатели36K
Всем привет! Мы продолжаем серию постов о том, как IT-фрилансеру стать предпринимателем. Вы уже знаете, почему ИП лучше, чем ООО и как зарегистрировать ИП самостоятельно. Сегодня мы расскажем, что ждёт предпринимателя после регистрации.



Краткий путеводитель для начинающих предпринимателей от «Я люблю ИП»
Читать дальше →

Как IT-фрилансеру стать предпринимателем. Часть 2

Время на прочтение4 мин
Охват и читатели57K
Всем привет! В предыдущем посте мы рассказали, зачем фрилансеру ИП и почему ИП лучше, чем ООО. Сегодня вы узнаете, как зарегистрировать ИП самостоятельно и что делать потом.



Всё для самостоятельной регистрации ИП на сайте «Я люблю ИП»
Читать дальше →

5 Самых захватывающих событий, произошедших в космосе [перевод]

Время на прочтение7 мин
Охват и читатели194K
Мне очень понравилась вот эта статья о космонавтах, которые круче героев боевиков. Поэтому, найдя блог автора, я решил перевести для вас другую статью из той же серии.


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

image

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

Запекаем MaсBook Pro в отчаянной попытке восстановить работоспособность дискретной видеокарты

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

Завязка


В минувшее воскресенье при просмотре ролика на YouTube экран моего MacBook Pro 15" Late 2011 вдруг на мгновение стал белым и погас, звуковое сопровождение также прервалось, остался только средней интенсивности (на слух около 4000RPM) шум кулеров. Выключив ноутбук кнопкой питания и выждав пару минут, я запустил его в режим диагностики оборудования (зажатая клавиша D при включении). И получил вот такую картинку:

image

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

Незаметные сложности ракетной техники: Часть 5. Стартовые сооружения

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

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

Уроки космических катастроф

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

Конец января — траурное время для NASA. Их катастрофы очень «кучно» пришлись на конец января-начало февраля. За всю историю освоения космоса произошло пять космических катастроф, в них погиб двадцать один человек. И самое печальное в этих катастрофах то, что их всех могло бы и не быть. Ни одна из них не произошла из-за действия непреодолимой внешней силы, случайности или вины экипажа.
Читать дальше →

Незаметные сложности ракетной техники. Часть 2: Твердотопливные двигатели

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

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

Незаметные сложности ракетной техники

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

Строительство и эксплуатация ракет-носителей — это своеобразная «черная команда» космонавтики. Большая и сложная работа делается незаметно, а большинство лавров достаются разработчикам полезной нагрузки. Мы забыли о сложности задач, которые решаются при проектировании и производстве ракет-носителей. Эта статья призвана показать важность темы и представить небольшой ликбез тем, кто хотел бы узнать, «как оно летает».
Читать дальше →

Информация

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