Search
Write a publication
Pull to refresh
0
Send message

Этикет Кремниевой Долины

Reading time10 min
Views45K
Здесь встречают по манерам…
В 17-ом веке во Франции манеры приобрели политическое значение. Король Людовик XIV и его предшественники, собирая вместе аристократию Франции под одной крышей с сувереном в его дворце в Версале, основали своего рода школу манер.

Во дворце придворные жили под деспотическим надзором короля. Если вы вызывали недовольство Людовика, то он просто высказывал пожелание «не видеть вас» на следующий день. И желание короля «не видеть вас» было равносильно полному забвению вас в Версале.

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

Маргарет Виссер
Читать дальше →

Глупый дом

Reading time24 min
Views70K

Краткое предисловие



TLDR: переходите сразу к заключению!

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

Многословное введение



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

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

и всего одна картинка

Оптимизация кода: память

Level of difficultyHard
Reading time12 min
Views94K
Большинство программистов представляют вычислительную систему как процессор, который выполняет инструкции, и память, которая хранит инструкции и данные для процессора. В этой простой модели память представляется линейным массивом байтов и процессор может обратиться к любому месту в памяти за константное время. Хотя это эффективная модель для большинства ситуаций, она не отражает того, как в действительности работают современные системы.

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

image

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

0b1001 путей решения задачи перевода чисел в римскую запись

Reading time5 min
Views64K
image

Привет друзья. Вот вам простенькая задачка. Как бы вы перевели арабские числа в римские используя Python? Правда с одним условием — числа не могут быть больше чем 4000.

Я думаю это должно быть просто, но позвольте я вам покажу вам серию интересных решений и не тривиальных подходов:
Читать дальше →

Обзор визуальной среды разработки SBM Composer

Reading time5 min
Views4K
У нас уже есть несколько публикаций, посвященных платформе Serena Business Manager (SBM).

» Версия 11.1
» Версия 11.01

Поскольку поступил запрос рассказать подробнее о платформе, среде разработки, примерах решений, я начну с рассказа о поставляемом в составе платформы инструменте для разработки приложений – SBM Composer.

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

Поднимая ставки: Кто должен получить долю в вашем стартапе и какую?

Reading time5 min
Views4K
Цифры говорят за себя. Индия с более чем 4200-ми стартапов является третьей по величине предпринимательской экосистемой. Согласно отчёту NASSCOM, индийские стартапы вышли на новый уровень, благодаря увеличению количества частного капитала, ангелов-инвесторов и венчурных капиталистов на 100%. Более того, за прошедший год объем финансирования вырос на 125%.

image

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

Блокировки работают не так уж медленно

Reading time6 min
Views14K
Блокировки в общем и мьютексы, как их частная реализация, имеют давнюю историю неправильной оценки скорости их работы. Ещё в 1986-ом году в одной из Usenet-конференций Matthew Dillon написал: «Большинство людей ошибочно уяснили себе, что блокировки работают медленно». Сегодня, спустя многие годы, можно констатировать, что ничего не изменилось.

Действительно, блокировки могут работать медленно на некоторых платформах, или в сверх-конкурентном коде. И, если вы разрабатываете многопоточное приложение, то вполне возможно, что рано или поздно натолкнётесь на ситуацию, когда какая-нибудь одна блокировка будет съедать очень много ресурсов (скорее всего из-за ошибки в коде, приводящей к слишком частому её вызову). Но всё это частные случаи, не имеющие в общем случае отношения к утверждению «блокировки работают медленно». Как мы увидим ниже, код с блокировками может работать весьма производительно.

Одна из причин заблуждений о скорости работы блокировок состоит в том, что многие программисты не отличают понятия «легковесный мьютекс» и «мьютекс, как объект ядра ОС». Всегда используйте легковесные мьютексы. К примеру, если вы программируете на С++ под Windows, то ваш выбор это критические секции.

imageВторой причиной заблуждений могут служить, как это ни парадоксально, бенчмарки. К примеру, далее в этой статье мы будем измерять производительность блокировок под высокой нагрузкой: каждый поток будет требовать блокировку для выполнения любого действия, а сами блокировки будут очень короткими (и, в результате, очень частыми). Это нормально для эксперимента, но такой способ написания кода — это не то, что вам нужно в реальном приложении.
Читать дальше →

Tor и новые альтернативы в области обеспечения анонимности

Reading time16 min
Views52K


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

Построчный разбор лицензии MIT

Reading time15 min
Views111K

171 слово, которое должен понимать любой программист


Лицензия MIT – самая популярная лицензия для программ с открытым кодом. Здесь приводится одно из её прочтений, с построчным разбором.

Читаем лицензию


Если вы разрабатываете программы с открытым кодом, и не читали эту лицензию подробно – а она состоит всего из 171 слова – вам нужно этим заняться. Особенно, если вы не занимаетесь лицензиями на ежедневной основе. Отметьте всё, что вам непонятно. А я повторю все эти слова, по порядку и по кусочкам, вместе с контекстом и комментариями. При этом важно представлять себе её целиком.
Читать дальше →

Полное практическое руководство по Docker: с нуля до кластера на AWS

Reading time39 min
Views1.8M



Содержание



Вопросы и ответы


Что такое Докер?


Определение Докера в Википедии звучит так:


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



Ого! Как много информации.

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

Жестокая реальность создания FPS для мобильных устройств

Reading time12 min
Views14K
Создание игр жанра FPS (шутер от первого лица) для мобильных устройств всегда было «твёрдым орешком». Несмотря на множество попыток разработчиков с разной степенью успеха, самые ярые фанаты до сих пор ждут истинного кандидата.
Читать дальше →

Как американские финтех-стартапы заменяют фрилансерам банкинг

Reading time5 min
Views10K
imageУдаленная работа — это тренд современного рынка труда, с которым трудно не считаться. За последние 20 лет система взаимоотношений между заказчиками и частными исполнителями претерпела существенные изменения по причине развития информационных технологий. Стало ли комфортным банковское обслуживание для фрилансеров, работающих из разных уголков мира? Мы в редакции онлайн-издания о платежных сервисах, финтех-стартапах и blockchain Web-payment.ru, решили разобраться в особенностях банковского обслуживания фрилансеров и перевели статью известного инвестора Павла Черкашина. Далее непосредственно перевод.
Читать дальше →

Какое окно оценки игры интегрировать в свою мобилку

Reading time3 min
Views12K
Наш партнер, аналитическая компания Playliner, подготовила для блога программы "Менеджмент игровых интернет-проектов" исследование о предложениях оценить игру. Под катом вы найдете информацию о том, какие бывают типы предложений, и какие фичи используют разработчики, чтобы повысить оценку игры в сторе. А также выводы и анализ преимуществ и недостатков различных вариантов интеграции этой механики в вашу игру.


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

Насколько разработчики конфликтные — инфографика по результатам опроса на «Моем круге»

Reading time4 min
Views20K


Мы провели опрос среди пользователей «Хабра» и «Моего круга», в котором приняли участие более 3800 респондентов. Вопросы были самые разнообразные, но цель одна — выяснить, как, почему и с кем конфликтуют программисты, дизайнеры, менеджеры и другие работники IT.
Читать дальше →

PaaS, DBaaS, SaaS… Что все это значит?

Reading time5 min
Views70K


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

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

Дистрибуция неопубликованных в Store приложений Windows 10

Reading time4 min
Views16K

Раньше, для того, чтобы установить Windows Store приложение, требовалось чтобы или приложение было опубликовано в магазине, или чтобы устройство было разлочено лицензией разработчика. Теперь, с выходом Windows 10, вполне можно распространять приложение и минуя магазин. Кроме того, установка на устройство неопубликованных в Store приложений может производиться не с целью распространения, а с целью тестирования.

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

О том как можно устанавливать приложения Windows Store на устройства различного типа читайте дальше.
Читать дальше →

Диаграмма Вороного и её применения

Reading time25 min
Views131K
Доброго всем времени суток, уважаемые посетители сайта Хабрахабр. В данной статье я бы хотел рассказать вам о том, что такое диаграмма Вороного (изображена на картинке ниже), о различных алгоритмах её построения (за , — пересечение полуплоскостей, — алгоритм Форчуна) и некоторых тонкостях реализации (на языке C++).



Также будет рассмотрено много интересных применений диаграммы и несколько любопытных фактов о ней. Будет интересно!
Читать дальше →

Асинхронная (и не очень) загрузка данных в Unreal Engine 4

Reading time8 min
Views26K


Содержание:



Всем привет!

Сегодня я расскажу о том, как обращаться с ассетами на Unreal Engine 4 так, чтобы не было мучительно больно за бесцельно занятую память и стоны игроков за время загрузки вашей игры.
Читать дальше →

Научно-технические мифы, часть 1. Почему летают самолеты?

Reading time13 min
Views162K
В современном мире многие люди интересуются наукой и техникой и пытаются хотя бы в общих чертах понять, как работают вещи, которые их окружают. Благодаря этому стремлению к просвещению существует научно-просветительская литература и сайты, подобные Гиктаймсу. А поскольку читать и воспринимать ряды формул большинству людей затруднительно, то излагаемые в подобных изданиях теории неизбежно подвергаются значительному упрощению в попытке донести до читателя «суть» идеи с помощью простого и понятного объяснения которое легко воспринять и запомнить. К сожалению, некоторые из подобных «простых объяснений» являются в корне неверными, но при этом оказываются настолько «очевидными», что не подвергаясь особому сомнению начинают кочевать из одного издания в другое и нередко становятся доминирующей точкой зрения, несмотря на свою ошибочность.

В качестве одного из примеров попробуйте ответить на простой вопрос: «откуда возникает подъемная сила в крыле самолета»?



Если в Вашем объяснении фигурируют «разная длина верхней и нижней поверхности крыла», «разная скорость потока воздуха на верхней и нижней кромках крыла» и «закон Бернулли», то я вынужден Вам сообщить, что Вы скорее всего стали жертвой популярнейшего мифа, который преподают порою даже в школьной программе.
То есть это как это миф? Ведь там же все внятно и с доказательствами объясняется!

Средневековое оружие и броня: распространённые заблуждения и часто задаваемые вопросы

Reading time18 min
Views240K

Немецкая броня XVI века для рыцаря и коня

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

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

Следующий текст попытается исправить самые популярные заблуждения, и ответить на вопросы, часто задаваемые во время туров по музеям.

Information

Rating
Does not participate
Date of birth
Registered
Activity