Метка «перевод» - 11

Перевод статьи LOSING LOOSE COUPLING

монстр-трак велосипед Когда меня просят присутствовать на собеседованиях, я обычно задаю один вопрос кандидату: «Что такое хороший код?». Тревожит, что часто можно услышать от недавних выпускников: «Наличие хороших комментариев». Это неправильный ответ. Кто учит их этому? Пугающе. Но я отвлекся… Не думаю, что есть правильный ответ на мой вопрос, однако я бы принял что-нибудь вроде «сильное сцепление (high cohesion) и слабая связанность (loose coupling)». По крайней мере это что-то говорит о коде. Но если это собеседование Java разработчика, я не дам бедняге уйти без нескольких дополнительных вопросов. Потому что Java разработчики полностью обезумели. Они одержимы желанием порубить код на супер-пупер мелкие кусочки. Мы рубим и рубим до тех пор, пока практически ничего не останется. Как только маленькие дорогуши разделены мы начинаем беспокоиться о том, чтобы они не трогали друг друга. Ох, малышки! Мы должны защитить их друг от друга любой ценой. Каждый маленький кусок кода получает свой собственный интерфейс, чтобы он не мог замарать свои руки дотянувшись до других частей напрямую. Мы связываем их магическими фреймворками. Которые используют абстрактные прокси, создающие фабрики и так далее.

Представьте велосипед, сделанный по таким принципам. Рама порублена на кусочки, длиной 1 сантиметр, соединенных по типу позвоночника. Будет ли она более гибкой? Определенно — да. Будет ли она практичной? Конечно, нет. Она будет дороже в производстве в сотни раз. Она также будет ломаться в сотни раз чаще. Такой велосипед приведет к большему количеству несчастных случаев, и не в последнюю очередь, будет странно выглядеть и на нем будет трудно ездить. Наша спина должна быть гибкой, поэтому позвонки имеют смысл. Велосипеды — нет.
Читать полностью »

Эта статья является перевод статьи OpenGL in Qt 5.1 — Part 1 и Part 2

Часть 1


Эта статья является первой в серии. Она покажет, как использовать OpenGL в Qt 5. В этой статье будет краткий экскурс в историю поддержки OpenGL в Qt. Затем мы перейдем к описанию первой части новых возможностей, которые вошли в Qt 5.1. Последующие статьи будут содержать описание большего количества возможностей, а так же будут приведены несколько простых примеров того, насколько легко можно использовать Qt для работы с OpenGL.

Читать полностью »

Вы нашли интересную статью, и захотели перевести ее и опубликовать на Хабре, но вдруг задумались об авторских правах? Давайте разберемся, как закон регулирует право на перевод, и его опубликование.

Переводы статей и авторское право — расставляем точки над «i»

Читать полностью »

Этот текст является переводом статьи 'Stop Being Cute and Clever' небезызвестного (по крайней мере, в Python-комьюнити) Армина Ронахера.

Последние дни в свободное время я занимался созданием планировщика. Идея была простой: создать некий клон worldtime buddy c использованием AngularJS и некоторых других JavaScript-библиотек.

И знаете что? Это было отнюдь не весело. Я уже давно так сильно не злился, работая над чем-либо, а это что-то значит, потому что обычно я быстро высказываю своё недовольство (прошу прощения у моих фолловеров в Twitter).

Я регулярно использую JavaScript, но мне редко приходилось сталкиваться с кодом других людей. Обычно я привязан только к jQuery, underscore и иногда AngularJS. Однако в этот раз я пошел ва-банк и решил использовать различные сторонние библиотеки.

Для данного проекта я использовал jQuery, без которого уже нельзя обойтись (да и зачем?), и AngularJS с некоторыми UI-компонентами (angular-ui и биндинги к jQuery UI). Для работы с часовыми поясами использовался moment.js.

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

Однако я заметил тревожную тенденцию появления кода ужасного качества в JavaScript-библиотеках (по крайней мере в тех, которые я использую), и задумался о том, почему так происходит.
Читать полностью »

Это первая ласточка в серии публикаций о новом динамическом HTTP маршрутизаторе поддерживающем GOV.UK. Это письмо проливает свет на наш порыв, объясняет решимость и подитоживает приобретенный опыт.

Зачем это нам сдалось.

Читать полностью »

Это мой первый пост на Хабре, поэтому в хаб «Космонавтика» он пока не попал.
Я занимаюсь, вернее, пытаюсь заниматься переводом и озвучкой видеороликов уже полгода. Ещё весной я обнаружил, что в сети полно хороших видео, из серии таких, которые «обязательно должен посмотреть каждый», но большая часть из них на английском языке. А вот знакомых, хорошо знающих иностранные языки, у меня не так много. Поэтому начинал я с переводов именно для них. Затем заметил, что это становится интересно и другим людям, и завертелось. Поэтому когда ко мне обратился Zelenyikot с предложением озвучить фильм Роберта Зубрина о Марсе, я с радостью согласился. Вооружившись статьей "Попытка перевода и озвучки видео в домашних условиях", словариком и гуглом, я приступил к работе.
Перевод и озвучка фильма дома — The Mars Underground
Читать полностью »

В издательстве «Питер» вышла книга «Инфографика. Коммуникация и влияние при помощи изображений».

image Инфографика — наиболее эффективный способ заявить о себе, донести информацию, достичь результата. Она работает благодаря наглядности, быстроте, интуитивности, юмору, красоте, симпатии, которую вызывает.

И еще кое-что: она эффективна!

Новое современное руководство по визуальной коммуникации для широкого круга читателей.

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

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

Доступна как в бумажном, так и в электронном виде.
Читать полностью »

ABBYY Lingvo.Pro: управляем терминологией в облакахМногие переводчики при работе над специализированными текстами сталкиваются с тем, что иногда до 90% времени уходит на поиск нужных терминов. При этом в каждой компании, которая так или иначе связана с зарубежными партнерами, есть свои материалы на разных языках. Как правило, переводчики, которые их создают, ведут глоссарии, где все правильные термины перечислены, проблема обычно заключается в том, чтобы ими делиться и переиспользовать. На западном рынке давно разработаны технологические решения, которые упрощают этот процесс. Недавно мы (ABBYY Language Services) объявили о выходе бета-версии ABBYY Lingvo.Pro — собственного облачного решения по управлению корпоративной терминологией.

Из этой статьи вы узнаете:
— что такое корпоративная терминология и почему ради неё делают специальные программные продукты;
— зачем нам понадобилось делать своё решение, если есть похожие готовые;
— что умеет ABBYY Lingvo.Pro;
Читать полностью »

Generation Z или Digital Native: какая эра наступает на Земле?
Международный союз электросвязи опубликовал свежий отчет исследования пользователей Интернет. Отельный блок в инфографике был отведен такому понятию, как «Digital Native». Кто эти «цифровые аборигены» и почему это важно, а также много интересной инфографики с переводом в этой статье.

Читать полностью »

I-Tier: Расщепление монолита

Недавно мы завершили годовой проект миграции веб-трафика компании Групон в США от монолитного Ruby on Rails приложения к новому стеку Node.js и получили существенные результаты.

С самого начала весь веб-фронтенд американского Групона был единым исходным кодом Ruby. Код фронтенда быстро развивался, что затрудняло его поддержку и усложняло процесс добавления новых фич. В качестве решения проблемы с этом гигантским монолитом мы решили реструктурировать фронтенд посредством его разделения на меньшие, независимые и более простые в управлении части. Основой этого проекта стало разделение монолитного вебсайта на несколько независимых Node.js приложений. Мы также переделали инфраструктуру, чтобы обеспечить совместную работу всех приложений. Результатом стал Interaction Tier (I-Tier).

Вот некоторые из важных моментов этой глобальной архитектурной миграции:

• Страницы на сайте загружаются значительно быстрее

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

• Мы можем избежать повторной разработки одних и тех же фич в разных странах, где доступен Групон.

Этот пост является первым из серии постов о том, как мы реструктурировали сайт и какие огромные преимущества мы видим в дальнейшем, которые будут лежать в основе продвижения компании Групон.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js