Как стать автором
Поиск
Написать публикацию
Обновить

Разработка

Сначала показывать
Период
Уровень сложности

Философская геометрия, Часть 2. Корень из трех и его практическое применение

Время на прочтение2 мин
Количество просмотров11K
Сейчас я вам что покажу, закачаетесь. Обязательно загляните под кат, самые интересные картинки я припрятал там.

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

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

Начнем с построения пропорции. Возьмем отрезок AB.



Примем его за радиус и построим окружность с центром в A.



Теперь построим вторую окружность с тем же радиусом, но с центром в B.



У нас получилась фигура ACBD, имеющая огромное значение для наших предков. Она называется Vescica Piscis (пузырь рыбы). Самый простой и важный пример — она давно является символом христианства.



Я продолжу под катом. Спорим, никогда не догадаетесь чем там все закончится :)

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

Загадка чёрной капли

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров28K

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

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

Географические ограничения на Хабре

Время на прочтение8 мин
Количество просмотров26K

Несколько лет назад мы рассказали про то, как Хабр обрабатывает официальные обращения, а также анонсировали наш раздел Transparency report, в котором мы своевременно публикуем информацию об обращениях. Что ж, с тех пор кое‑что поменялось и настало время для новой публикации с небольшим апдейтом.

Читать далее

Подсчитаем баги в калькуляторе Windows

Время на прочтение11 мин
Количество просмотров91K

На днях компания Microsoft открыла исходный код калькулятора. Это приложение входило во все версии операционной системы Windows. Исходный код разных проектов Microsoft достаточно часто открывался за последние годы, но новость о калькуляторе в первый же день просочилась даже в нетехнологические средства массовой информации. Что ж, это популярная, но очень маленькая программа на языке C++. Тем не менее, статический анализ кода с помощью PVS-Studio выявил подозрительные места в проекте.
Читать дальше →

Как купить иллюзию безопасности в виде детских смарт-часов

Время на прочтение4 мин
Количество просмотров91K

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


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


Я думаю, что не найдётся человека, который не слышал о таком новом гаджете, как детские смарт-часы. Рынок просто заполонили многочисленные варианты устройств, как правило произведённых в Китае. Цены и функциональность этих устройств варьируются, но лучшие из них включают в себя такой широкий набор функций, как телефон, GPS трекер, мессенджер, фотокамеру, шагомер, ну и конечно же часы. По заявлению производителей — этот гаджет создан специально для детей и включает в себя средства безопасности ребенка. Так думал и я, поэтому стал выбирать в интернете подходящий вариант. Как итог я купил часы FixiTime 3 от компании Elari.


функциональность этих часов была впечатляющая:


  • GPS/LBS/Wi-Fi-трекинг
  • 2 камеры, доступ к камере часов с подключенного смартфона
  • поддержка входящих и исходящих голосовых вызовов, в том числе скрытых
  • голосовой чат
  • шагомер
  • ну и Фиксики внутри, как без них же


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

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

Reedy – Скорочтение, которое действительно можно использовать

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров245K
Reedy – продвинутая реализация технологии скоростного чтения

В последнее время наблюдается рост интереса к скорочтению на основе технологии RSVP. Однако большинство приложений и расширений на эту тему, при более близком знакомстве, увы, оказываются не очень удобны для ежедневного использования. А ведь в потенциале они могу помочь значительно экономить время и быстрее получать информацию. Мой друг OlegCherr решил доработать технологию, создав реализацию пригодную для постоянного использования, а я ему в этом помогаю. После двух месяцев постоянной практики чтения, тестирования, исследований и улучшений решил написать статью с разбором того, что получилось в результате, потому что результат, смею считать, будет интересен и другим. На текущий момент всё выполнено в виде расширения к браузеру Chrome и названо Reedy. Приложение под Android на подходе.
Подробности

Внутренности карты Яндекс.Денег — MasterCard PayPass

Время на прочтение1 мин
Количество просмотров130K
Недавно в банках начали выдавать карты Visa/MasterCard с оплатой в «одно касание» — PayPass, по радио. Мне было интересно посмотреть, как это работает — так что я безжалостно «разобрал» карту MasterCard Яндекс.Денег. Результаты вскрытия — под катом.

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

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

4 шага на пути в Google, не имея высшего образования

Время на прочтение4 мин
Количество просмотров192K


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

Как я систему безопасности для авиакомпании разрабатывал и сам оказался в опасности

Время на прочтение14 мин
Количество просмотров140K
А еще говорят что крепостное право России отменили в 19 веке. Не верьте, это не так. История о контрастах в условиях работы в иностранной и российской компаниях, экшена разработки на java/GWT, лжи коллеги и поведения Директора, наслаждающегося своим всемогуществом и вседозволеностью, не подкрепленное законодательно.



Началось эта история когда заканчивался проект на прошлой работе. Все было солидно: крупная международная компания, коммандировки в США и Англию, стабильность и легкая скука из-за большого количества рутины на проекте. Никаких авралов, отлично выстроенный процесс разработки, отдельная QA команда и автоматизированные регрешен тесты, иностранный менеджмент за пару лет работы ни разу не повысивший голос ни на кого в комманде, проджект менеджер спокойно переносивший функционал в следующие релизы, когда не успевали с разработкой и тестированием. Отличный коллектив профессионалов, каждому можно было доверять и знать что в трудный момент помогут. Атмосфера дружбы, когда приятно приходить на работу и общаться. Но всему хорошему и спокойному всегда приходит конец :( И дальше как полоски у зебры, в моей жизни появилась новая полоса…
Читать дальше →

HTML и CSS безумие [перевод]

Время на прочтение6 мин
Количество просмотров107K

или Создаем 3D миры при помощи HTML, CSS и JS


image
В прошлом году, я сделал демо, которое показывает как можно использовать CSS 3D transforms для создания 3D пространства. Демо было технической демонстрацией того, чего можно достичь при помощи CSS на то время, но я хотел увидеть насколько далеко я могу зайти, поэтому последние несколько месяцев я работал над новой версией с еще более сложными моделями, реалистичным освещением, тенями и определением столкновений. Этот пост документирует то, как я это делал и какие техники применял.

Демо Демо2
Читать дальше →

Тренды, возведенные в культ

Время на прочтение4 мин
Количество просмотров30K
Несколько последних лет ознаменовались появлением большого количества новых терминов, понятий, технологий, течений. Также появилось достаточное количество базвордов, которые заполонили медийное пространство. И заполонили до такой степени, что многие айтишники начинают поддаваться на соблазны и искушения рисующихся золотых перспектив. Но не буду говорить загадками — под катом список понятий, с которыми связано большое количество надежд, холиваров и… заблуждений. Давайте немного разберемся, что к чему.
Читать дальше →

Bit-squatting – посмеялись и забыли

Время на прочтение1 мин
Количество просмотров2.2K
Вкон4акте

Пару дней назад, на Хабре была статья, которая грозила нам новым, если не апокалипсисом, то уж как минимум катастрофой сравнимой с Фокусимой.

Спешу разочаровать всех любителей киберпанка, но конец света снова отменен.
Читать дальше →

Дерево ван Эмде Боаса

Время на прочтение6 мин
Количество просмотров19K
Всем доброго времени суток!

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

Дерево ван Эмде Боаса (van Emde Boas tree) — ассоциативный массив, который позволяет хранить целые числа в диапазоне [0; U), где U = 2k, проще говоря, числа, состоящие не более чем из k бит. Казалось бы, зачем нужно еще какое-то дерево, да еще позволяющее хранить только целые числа, когда существует множество различных сбалансриованных двоичных деревьев поиска, позволяющих выполнять операции вставки, удаления и прочие за O(log n), где n — количество элементов в дереве?

Главная особенность этой структуры — выполнение всех операций за время O(log(log(U))) независимо от количества хранящихся в ней элементов.

Что же там еще есть такого вкусного?

Ближайшие события

Никогда не говорите слово …, или регистрация в 2 щелчка мышью

Время на прочтение4 мин
Количество просмотров3.5K

Люди не очень любят регистрироваться. Это же нужно (в общем случае) придумать логин и пароль, зайти в свою почту, дождаться письма, открыть его, перейти по ссылке активации аккаунта, а потом еще этот логин с паролем не забыть. Но ведь уже давно есть способ, с помощью которого все эти шаги не нужны. Более того, не нужно вообще ничего вводить с клавиатуры, 2 щелчка мышью и все, человек зарегистрирован.

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

Реально ли привлечь РЖД за нарушение лицензии модели синтеза из репозитория silero-models?

Уровень сложностиПростой
Время на прочтение1 мин
Количество просмотров34K

Увидел новость про виртуального помощника "Валеру", которого только что презентовала РЖД. Судя по голосу, взят наш голос aidar из репозитория silero-models … опубликованный под некоммерческой под лицензией CC BY-NC-SA.

Обсудить

Шахматы на C++

Время на прочтение68 мин
Количество просмотров53K

Не так давно я захотел написать свой шахматный движок. На удивление в Интернете нашлось не так много хороших статей на эту тему. Были статьи с довольно слабыми программами, многие из которых даже умудрялись пропускать некоторые важные правила. А были статьи с хорошими программами (некоторые из них были даже чуть лучше чем получилось у меня в итоге), но там авторы рассказывали лишь основные идеи, пропуская подробности, из-за чего написать что-то свое по таким статьям было проблематично. Поэтому после написания своей программы, я решил написать статью, дабы облегчить жизнь интересующимся в данной теме. Я не претендую на лучшую шахматную программу или на чистейший код, но эта статья будет хорошим и легким началом для тех, кто хочет написать что-то свое.

Читать далее

С — не низкоуровневый язык

Время на прочтение11 мин
Количество просмотров80K


Ваш компьютер не является быстрой версией PDP-11


Привет, Хабр!

Меня зовут Антон Довгаль, я С (и не только) разработчик в Badoo.

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

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

Производители процессоров не одиноки в этом. Разработчики компиляторов C/C++ тоже внесли свою лепту.
Читать дальше →

Каково это — быть разработчиком, когда тебе сорок

Время на прочтение18 мин
Количество просмотров230K
Примечание от переводчика:

Этот пост был написан и опубликован на Medium разработчиком приложений Адрианом Космачевским из Швейцарии. Кроме подготовки перевода его публикации, я также пригласил и самого автора, Адриана ( akosma ), на Хабр, для того, чтобы он смог лично ответить на любые вопросы участников сообщества, если таковые возникнут. Думаю, для общего удобства при общении в комментариях с ним стоит использовать английский (и, при желании, дублировать на русском).



Привет всем, я — сорокадвухлетний программист-самоучка, а это моя история.

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

image

Эти размышления привели меня туда, откуда все начиналось.

Я дебютировал в роли разработчика программного обеспечения в 10 часов утра 6 октября 1997 года, в городе Оливос, к северу от Буэнос-Айреса, в Аргентине. Был понедельник. Не так давно я праздновал свой 24-й день рождения.

Мир в 1997 году


Тогда он был немного другим. На веб-сайтах не было предупреждений об использовании cookie. Новаторскими в сети были сайты вида Excite.com, а моим любимым поисковиком был AltaVista.

Мой электронный ящик имел вид kosmacze@sc2a.unige.ch и был расположен на личном веб-сайте, который размещался по адресу http://sc2a.unige.ch/~kosmacze. Тогда мы еще оплакивали принцессу Диану, а Стив Джобс только-только вернулся на роль CEO и убедил Microsoft «вбросить» в Apple Computer 150 миллионов долларов. Digital Equipment Corporation подала в суд на Dell, останки Че Гевары вернули на Кубу, только начался четвертый (!) сезон «Друзей». Был убит Джанни Версаче, скончались Мать Тереза, Рой Лихтенштейн и Жанна Кальман. Люди зависали за Final Fantasy 7 на PlayStation, будто бы были наркоманами, Би-Би-2 начал вещание телепузиков, а Кэмерон только собирался показать миру свой «Титаник».
Читать дальше →

Ежедневная работа с Git

Время на прочтение40 мин
Количество просмотров895K
Я совсем не долго изучаю и использую git практически везде, где только можно. Однако, за это время я успел многому научиться и хочу поделиться своим опытом с сообществом.

Я постараюсь донести основные идеи, показать как эта VCS помогает разрабатывать проект. Надеюсь, что после прочтения вы сможете ответить на вопросы:
  • можно ли git «подстроить» под тот процесс разработки, который мне нужен?
  • будет ли менеджер и заказчик удовлетворён этим процессом?
  • будет ли легко работать разработчикам?
  • смогут ли новички быстро включиться в процесс?
  • можно ли процесс относительно легко и быстро изменить?


Конечно, я попытаюсь рассказать обо всём по-порядку, начиная с основ. Поэтому, эта статья будет крайне полезна тем, кто только начинает или хочет разобраться с git. Более опытные читатели, возможно, найдут для себя что-то новое, укажут на ошибки или поделятся советом.

Далее очень много букв случайным образом превратились в пост.

Паттерны ООП в метафорах

Время на прочтение17 мин
Количество просмотров576K
Большинство литературы посвященной паттернам в ООП (объектно-ориентированном программировании), как правило, объясняются на примерах с самим кодом. И это правильный подход, так как паттерны ООП уже по-умолчанию предназначаются для людей, которые знают что такое программирование и суть ООП. Однако порой требуется заинтересовать этой темой людей, которые в этом совершенно ничего не понимают, например «не-программистов» или же просто начинающих «компьютерщиков». Именно с этой целью и был подготовлен данный материал, который призван объяснить человеку любого уровня знаний, что такое паттерн ООП и, возможно, привлечет в ряды программистов новых «адептов», ведь программирование это на самом деле очень интересно.
Статья предназначена исключительно для новичков, так что «старожилы» ничего нового для себя не узнают. В основном статья описывает известные паттерны из книги «Приемы объектно-ориентированного программирования. Шаблоны проектирования.», но более популярным и простым языком.
Читать дальше →