Рубрика «перевод» - 76

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

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

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

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

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

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

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

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

Предисловие от переводчика:

Материалов, посвященных культовой вещи своего времени RAZR V3 и историй вокруг нее написано немало. Сегодня представляю вашему вниманию перевод статьи Дэвида Пирса. Я решил ее перевести, потому что лично мне хотелось бы видеть больше действительно стоящих продуктов с дизайнерской точки зрения.

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

Материал взят из журнала DotNetCurry посвященному технологиям основанным на платформе .NET.

Дорогие читатели, мы очень рады видеть Эрика Липперта в этом номере журнала DNC. Эрик не нуждается в представлении людям знакомым с C#, но для остальных Эрик известен своей работой в команде разработчиков компилятора языка С#. Он посвятил значительную часть своей карьеры компании Microsoft, работая на различных должностях. До того как придти в Microsoft, Эрик работал в компании Watcom. Наши «старички» помнят Watcom как компанию, которая создала очень хорошие компиляторы для языков C++ и Fortran. В настоящее время Эрик работает в компании Coverity, помогая создавать продукты статического анализа кода.

Интервью с легендой C# Эриком Липпертом
Читать полностью »

От переводчика. Судя по своему опыту, а также по опыту знакомых коллег-программистов, могу сказать, что для начинающего разработчика среди всех базовых функций языка C# и платформы .NET делегаты и события являются одними из наиболее сложных. Возможно, это из-за того, что необходимость делегатов и событий на первый взгляд кажется неочевидной, или же из-за некоторой путаницы в терминах. Поэтому я решил перевести статью Джона Скита, рассказывающую о делегатах и событиях на самом базовом уровне, «на пальцах». Она идеальна для тех, кто знаком с C#/.NET, однако испытывает затруднение в понимании делегатов и событий.

Представленный здесь перевод является вольным. Однако если под «вольным», как правило, понимают сокращённый перевод, с упущениями, упрощениями и пересказами, то здесь всё наоборот. Данный перевод является немного расширенной, уточнённой и обновлённой версией оригинала. Я выражаю огромную благодарность Сергею Теплякову aka SergeyT, который внёс неоценимый вклад в перевод и оформление данной статьи.

Люди часто испытывают затруднения в понимании различий между событиями и делегатами. И C# ещё больше запутывает ситуацию, так как позволяет объявлять field-like события, которые автоматически преобразуются в переменную делегата с таким же самым именем. Эта статья призвана прояснить данный вопрос. Ещё одним моментом является путаница с термином «делегат», который имеет несколько значений. Иногда его используют для обозначения типа делегата (delegate type), а иногда — для обозначения экземпляра делегата (delegate instance). Чтобы избежать путаницы, я буду явно использовать эти термины — тип делегата и экземпляр делегата, а когда буду использовать слово «делегат» — значит, я говорю о них в самом широком смысле.
Читать полностью »

Это, пожалуй, самый болезненный отчет об ошибке, который я когда-либо читал. Он красочно описывает шаги, которые привели к потере 465 миллионов долларов компанией Knight Capital в связи с ошибкой программного обеспечения, проявившейся в прошлом году и обанкротившей компанию.

В этом отчете есть все характеристики технического долга в огромной, лишенной поддержки и запущенной базе кода (ошибка произошла из-за исполнения кода, который не использовали почти 9 лет) и ужасная и грустная история взаимодействия между разработчиками ПО и ИТ-профессионалами.
Читать полностью »

Вступительное слово

Привет хабрахабцы.
Когда указывал хаб для статьи, узнал, что на статьи по 3D принтерам подписано ни много ни мало 23774 человека.

Перевод книги «Доступная 3Д печать для науки, образования и устойчивого развития» (Low cost 3D Printing for Science, Education and Sustainable Development), 2013

Впервые о книге я узнал из статьи. Оригинальный вариант книги издан под лицензией Creative Commons и выложен в открытый доступ специалистами Международного центра теоретической физики (МЦТФ) Абдус Салам в Триесте (Италия)– в апреле 2013 года.

Расположена книга на сайте центра: Её можно скачать как в компактном размере, так и в хорошем качестве. Для владельцев iPad имеется и мультимедийная версия (если у кого-то есть возможность посмотреть что из себя представляет эта версия, пожалуйста напишите о впечатлениях, потому что обещанная *.ePub версия пока «Coming soon»). Также авторы загрузили версию книги в главную библиотеку 3D печатников Thingiverse.

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

Всем привет!

Мы занимаемся локализацией программного обеспечения и игр на 30+ языков и часто видим, как разработчики сталкиваются с одной и той же проблемой: в разных языках для передачи одной и той же информации требуется разное количество знаков. В итоге, в интерфейсе пользователя некоторые надписи “не влазят” и их приходится сокращать, либо изменять размеры контролов.

Известно, что, к примеру, немецкий язык “длиннее” английского, а китайский — “короче”. Однако вряд ли у кого-то получится сходу точно сказать на сколько один язык более “знакоёмкий”, чем другой.

Нам стало интересно, мы собрали статистику и получили вот такую табличку с коэффициентами для примерно двадцати языковых пар — под катом.

Померяемся языками, чей длиннее?
Читать полностью »

Мое знакомство с домашним NAS началось несколько лет назад с Synology 207+. Пока NAS был пустой, он мне очень нравился своими возможностями. Но стоило только перенести на него свою коллекцию фильмов, музыки и фоток, как стало понятно, что пользоваться им невозможно из-за очень низкой производительности. И агрегат превратился в обычную файлопомойку, а в последствии и вовсе был убран в кладовку за ненадобностью. Сама Synology забила на эту линейку и прекратила выпуск новых оболочек на нее. Я периодически следил за новинками у Synology, там как всегда множество хвалебных статей, но доверия они уже не вызывали.
Случайно я наткнулся на проект XPEnology, оказалось, что можно попробовать новую оболочку Synology и на виртуальной машине и на обычном компьютере.
Про установку Synology DSM 4.2 на виртуальную машину в ESXi я и расскажу в этой статье, установка на обычное железо еще проще, но если будет интерес, напишу отдельный топик.
Читать полностью »

Выставить счет иностранному клиенту — непростая задача для молодого бизнеса. Ошибки, неточности и “неуверенный” английский — все это вызовет недоверие. Ошибаться нельзя.

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

Мы будем рады, если это поможет вашему бизнесу стать глобальнее.

Переведено в Alconost Translations.

Как правильно выставлять счета
Читать полностью »

Всем привет!
Продолжаю перевод книги John Torjo «Boost.Asio C++ Network Programming».

Содержание:

Авторы Boost.Asio сделали замечательную работу, давая нам возможность выбрать то, что больше удовлетворяет нашим приложениям, выбрав синхронный или асинхронный путь.
В предыдущей главе мы видели каркасы для всех типов приложений, таких как синхронный клиент, синхронный сервер, а так же их асинхронные варианты. Вы можете использовать каждый из них в качестве основы для вашего приложения. Если же возникнет необходимость вникать в подробности о каждом типе приложения, то читаем дальше.

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


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