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

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


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


Это хорошо, однако у данного интерфейса пользовательского ввода есть проблемы.
Читать дальше →
Абстрагируемся от горячих клавиш в десктопных приложениях, или как отлаживаться в любом IDE одними и теми же кнопками
Source: habrahabr

Раскрутка нового агентства на upwork с нуля — личный опыт

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

Нынешний мой пост — о раскрутке другого агентства, другой команды, которую формировала не я, и в которую временно влилась в качестве продажника с целью раскрутить эту команду на upwork: взять первые проекты для команды и научить лидеров команды самим брать заказы в будущем.

Команда состоит из 12 web-разработчиков широкого профиля (full-stack, как говорится).

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

Мне дали полный карт-бланш и разрешили делать с профилями команды все, что я считаю правильным и рассылать какие угодно отклики, бидиться с любой ценой, лишь бы проекты были по плечу разработчикам. Для себя я однако решила, что не буду искать своим новым товарищам откровенно убыточные проекты, и нижняя планка цены часа будет 30$. От этого принципа мне не пришлось отступать, но … расскажу обо всем по порядку. Читать дальше →
Source: habrahabr

[Перевод] Вышел GitLab 8.15

В последнем релизе уходящего года мы завершаем наш Мастер-план и хотим показать вам кое-что интересное из того, над чем мы работали.

В GitLab 8.15 появилась фича Auto Deploy – автоматизированная настройка развертывания и приложений для ревью (Review Apps). Для проекта на Ruby on Rails такая настройка займёт меньше минуты. Посмотрите, как это работает, в видео на 1:42.

Вдобавок, доступ к вашим средам (environments) стал быстрее и проще: через терминал непосредственно в GitLab (там же на 5:18)

Мы хотим дать каждому возможность использовать всю мощь контейнеров (containers), непрерывной интеграции и развертывания (continuous integration and deployment, сокращенно CD/CI), приложений для ревью (review apps) и планировщиков контейнеров (container schedulers). В GitLab 8.15 мы взяли на себя всю сложную работу по настройке, и вся она происходит совершенно прозрачно. В демонстрационном видео мы настраиваем и разворачиваем Ruby-приложение с review apps, несколькими средами и чатопсом (chatops, управление инфраструктурой через интеграцию с чатом) на кластер Kubernetes примерно за 12 минут. Без GitLab такая задача обычно занимает дни, если не недели.

Для большинства из нас декабрь — месяц праздников и подарков. GitLab тоже получил в подарок много новых фич.

Читать дальше →
[Перевод] Вышел GitLab 8.15
Source: habrahabr

[Перевод] Тренируем нейронную сеть написанную на TensorFlow в облаке, с помощью Google Cloud ML и Cloud Shell

В предыдущей статье мы обсудили как натренировать чат-бот на базе рекуррентной нейронной сети на AWS GPU инстансе. Сегодня мы увидим, как легко можно обучить такую же сеть с помощью Google Cloud ML и Google Cloud Shell. Благодаря Google Cloud Shell не нужно будет делать практически ничего на локальном компьютере! Кстати, сеть из прошлой статьи мы взяли лишь для примера, можно спокойно брать любую другую сеть, которая использует TensorFlow.

image
Читать дальше →
[Перевод] Тренируем нейронную сеть написанную на TensorFlow в облаке, с помощью Google Cloud ML и Cloud Shell
Source: habrahabr

Опыт использования self-hosted continuous integration систем

Введение

Сложно представить современную разработку без Continuous Integration. Многие компании выпускают по нескольку релизов в день и прогоняют тысячи тестов. Со времен Jenkins и Travis CI на рынке появилось много самых разнообразных инструментов. Большинство из них работают по модели SaaS — вы платите фиксированную плату за использование сервиса, или за количество пользователей.

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

В этой статье представлен личный опыт использования нескольких opensource self-hosted continuous integration систем. Если вы использовали другие системы, расскажите об этом в комментариях.

Читать дальше →
Опыт использования self-hosted continuous integration систем
Source: habrahabr

Обзор self-hosted continuous integration систем

Введение

Сложно представить современную разработку без Continuous Integration. Многие компании выпускают по нескольку релизов в день и прогоняют тысячи тестов. Со времен Jenkins и Travis CI на рынке появилось много самых разнообразных инструментов. Большинство из них работают по модели SaaS — вы платите фиксированную плату за использование сервиса, или за количество пользователей.

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

В этой статье представлен обзор нескольких opensource self-hosted continuous integration систем, а также личные впечатления от их использования.

Читать дальше →
Source: habrahabr

[Перевод] Slow Cooker: нагрузочное тестирование сетевых сервисов

Linkerd, наша сервисная сетка (service mesh) для облачных приложений, по долгу службы обязана на протяжении длительного времени справляться с большими объемами сетевого трафика. Перед выпуском очередного релиза соответствие этому требованию необходимо тщательно проверять. В этой статье мы опишем стратегии нагрузочного тестирования и использованные нами инструменты, а также рассмотрим несколько обнаруженных проблем. В итоге будет представлен slow_cooker — написанный на Go инструмент нагрузочного тестирования с открытым исходным кодом, который был создан для выполнения длительных нагрузочных тестов и выявления проблем жизненного цикла (lifecycle issue identification).

Читать дальше →
Source: habrahabr

[Из песочницы] Писать веб-сайты на ассемблере полезно и приятно

Конечно, многие скажут, что это ни-ни и писать для веба нужно только на PHP, ну или на один из модерных языках Питон, Руби, Node.js и т.д.

Но дело в том, что написание сайтов на ассемблере очень полезно, а с подходящими инструментами — легко и приятно.

Вообще-то, это утверждение было лишь гипотезой. Чтобы доказать или отвергнуть ее, этой весной я занялся писать форум на ассемблере.

Раньше у меня уже было веб-приложение на ассемблере — CMS для малого сайта. Только оно работает в режиме "один пишет, многие читают". При том, использует CGI интерфейс и поэтому "многие" читать одновременно тоже не получается.

Читать дальше →
Source: habrahabr

Информационные технологии в новогоднем мюзикле «Чародеи»

Одним из символов Нового Года для меня всегда был (и до сих пор остаётся) прекрасный мюзикл «Чародеи». И дело не только в хороших песнях, отличном актёрском составе или атмосфере сказки. Фильм «Чародеи» — это ещё один взгляд на любимый многими мир книги «Понедельник начинается в субботу» братьев Стругацких. Авторами сценария фильма тоже были они (хотя многое в нём пришлось переделать вопреки их оригинальной идее).

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

пример хед-хантинга ценного специалиста в безденежный, но интересный проект

«А где вы работаете?» Я ответил. «Колоссально! – воскликнул горбоносый. – Программист! Нам нужен именно программист. Слушайте, бросайте ваш институт и пошли к нам!»… «Интереснее, чем у нас, вам нигде не будет». – «Почему вы так думаете?» – «Уверен».

Фильм тоже показывает нам волшебство как результат сложной и наукоёмкой деятельности простых, в общем-то, людей. Никаких тут тебе „ты был рождён в семье волшебников и унаследовал дар…“ и прочих философских камней и корня мандрагоры. Лаборатория Абсолютных Неожиданностей в фильме выглядит как классический вычислительный центр любого НИИ тех лет:

А теперь я хочу рассказать об одном вопросе, связанном с информационными технологиями в данном фильме, который интересовал меня уже много лет и для решения которого я даже писал письмо Борису Стругацкому, когда он был ещё жив (хотя и не получил ответа). При каждом из многочисленных просмотров фильма „Чародеи“ меня удивлял в нём один эпизод (осторожно, под катом будут спойлеры!).
Читать дальше →
Source: habrahabr

Суверенный интернет. Почему его не будет в 2017 году

Последнее время всё чаще пробегают новости про «суверенный интернет», «отключение интернета» и прочие ужасы. Однако, по состоянию на начало 2017 года, отключить российский сегмент от остальной сети и оставить его работоспособным представляется маловероятным.

Давайте попробуем рассмотреть детально.
Читать дальше →
Source: habrahabr