Как стать автором
Обновить
-29
@Tetrakronosread⁠-⁠only

Пользователь

Отправить сообщение

Язык программирования Ü. Введение, мотивация к созданию, цели

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

Введение


С 2016-го года (с перерывами) я разрабатываю собственный язык программирования. Название данного языка — «Ü». Почему Ü? Потому, что хотелось однобуквенного названия, а все буквы из набора A-Z уже заняты.

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

Зачем нужен ещё один язык?
Читать дальше →

Когда 'a' не равно 'а'. По следам одного взлома

Время на прочтение6 мин
Количество просмотров113K
Пренеприятнейшая история случилась с одним моим знакомым. Но насколько она оказалась неприятной для Михаила, настолько же занимательной для меня.

Надо сказать, что приятель мой вполне себе UNIX-пользователь: может сам поставить систему, установить mysql, php и сделать простейшие настройки nginx.
И есть у него десяток-полтора сайтов посвященных строительным инструментам.

Один из таких сайтов, посвященный бензопилам, плотненько сидит в ТОПe поисковиков. Сайт этот — некоммерческий обзорник, но кому-то поперек горла и повадились его атаковать. То DDoS, то брутфорс, то комменты напишут непотребные и шлют абузы на хостинг и в РКН.
Неожиданно всё стихло и это затишье оказалось не к добру, а сайт начал постепенно покидать верхние строчки выдачи.

image

То была присказка, дальше сама админская байка.

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

Как мы упоролись по энергоэффективности машзала

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


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

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

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

Наш дата-центр Компрессор нужен для самых разных заказчиков. Поэтому там посреди обычных двух–четырёхкиловаттных стоек может оказаться вполне себе 23-киловаттная или больше. Соответственно кондиционеры были настроены на то, чтобы охлаждать их, и через менее мощные стойки воздух просто проносился мимо.

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

Российский геймдев, бессмысленный и беспощадный

Время на прочтение2 мин
Количество просмотров54K
Если регулярно и внимательно просматривать ленты новостей и соцсети, может возникнуть ощущение, что теперь каждый второй — демиург от мира геймдева, а каждый первый — гениальный CG художник. Ну, наверное, миллионы все разом не ошибаются. Значит, нужно идти за мечтой. Что я, рыжий что ли?

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

Если бы все было так просто.

Что вас ждет? Если коротко:

  • - личная жизнь \ + адский труд бесплатно
  • - поддержка близких \ + стадо критиков
  • - стандарты качества \ + зато оригинально
  • - Я всё могу \ + депрессия средней степени тяжести

Этот список можно продолжать бесконечно.



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

Russian Railway Simulator (RRS): первый публичный релиз

Время на прочтение5 мин
Количество просмотров96K
Наступил тот долгожданный мной день, когда я наконец могу представить эту разработку. Проект был начат ровно год назад, 1 сентября 2018 года, по крайней мере в репозитории RRS на Gtihub первый коммит имеет именно такую дату.

Пассажирский поезд на станции Ростов Главный (кликабельно)



Что такое RRS? Это открытый кроссплатформенный симулятор подвижного состава колеи 1520 мм. Читатель закономерно задаст вопрос: «Позвольте, а для чего нужен этот проект, если симуляторов железнодорожной тематики, как коммерческих, так и открытых, достаточное количество?» За ответом на этот вопрос я и предлагаю заглянуть под кат

Решето Сундарама

Время на прочтение4 мин
Количество просмотров12K
Решето Сундарама в сети представлено большим количеством источников краткой справочной информации. Тем не менее, я решил изложить то, что хотел бы прочитать сам в начале изучения теоретико-числовых алгоритмов.

Решето Сундарама входит в тройку известнейших методов генерации простых чисел. Сейчас к нему принято относиться как к некоторой экзотике по причине плохой вычислительной сложности: O(N(logN)). Однако асимптотика – асимптотикой, а на практике в 32-битном диапазоне просеивания Аткин, например, перегоняет Сундарама только при тщательной оптимизации.

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

Очень много YouTube-каналов для прокачки английского языка для программистов

Время на прочтение4 мин
Количество просмотров61K
Привет, Хабр!

С помощью YouTube можно ощутимо и сравнительно быстро улучшить английский.
Понимание на слух как минимум. Истина не нова, но мало кто смотрит английский YouTube, потому что легко потеряться в бесконечности каналов. Но для вас я собрал самые стоящие каналы!

Добавляйте в закладки и подписывайтесь на меня!
Дальше вас ждет много крутых статей.

Поучить английский


AJ Hoge. На его канале есть всё: от базовых слов до размышлений о важности языка тела в общении. Чувак пилит видосы уже много лет, материальчик накопился.

EngVid. Если бы можно было выбрать что-то одно для улучшения английского, то это оно. Разные преподы и тематики, постоянное обновление, бездонный ресурс. Ещё сайт одноимённый крутой, с удобной навигацией — можно найти очень узкую тему по интересам.
Читать дальше →

FFI: пишем на Rust в PHP-программе

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

В PHP 7.4 появится FFI, т.е. можно подключать библиотеки на языке C (или, например, Rust) напрямую, без необходимости писать целый extension и разбираться в его многочисленных нюансах.


Давайте попробуем написать код на Rust, и используем его в PHP-программе
Читать дальше →

Конференцию PHP Central Europe отменили из-за того, что среди выступающих не оказалось женщин

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


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

Вулканический поросенок, или SQL своими руками

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


Сбор, хранение, преобразование и презентация данных — основные задачи, стоящие перед инженерами данных (англ. data engineer). Отдел Business Intelligence Badoo в сутки принимает и обрабатывает больше 20 млрд событий, отправляемых с пользовательских устройств, или 2 Тб входящих данных.


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


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

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

И всё же C — низкоуровневый язык

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


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


Критика C — классический для нашей индустрии эпистолярный жанр. Она звучит то громче, то тише, но в последнее время буквально оглушает. Пример — перевод статьи Дэвида Чизнэлла «C — не низкоуровневый язык», опубликованный в нашем блоге некоторое время назад. Про C можно говорить разное, в дизайне языка действительно много неприятных ошибок, но отказывать C в «низкоуровневости» — это уже слишком!


Чтобы не терпеть такую несправедливость, я собрался с духом и постарался определиться с тем, что есть язык программирования низкого уровня и чего хотят от него практики, после чего перебрал аргументы критиков C. Так получилась эта статья.

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

Узнаем паспортные данные физического лица по ФИО (если есть залоговое имущество)

Время на прочтение1 мин
Количество просмотров498K
А так же узнаем ФИО и паспортные данные по номеру автомобиля если он взят в кредит.
Без регистрации и СМС.
Читать дальше →

Почему const не ускоряет код на С/C++?

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

Несколько месяцев назад я упомянул в одном посте, что это миф, будто бы const помогает включать оптимизации компилятора в C и C++. Я решил, что нужно объяснить это утверждение, особенно потому, что раньше я сам верил в этот миф. Начну с теории и искусственных примеров, а затем перейду к экспериментам и бенчмаркам на реальной кодовой базе — SQLite.
Читать дальше →

Алгорейв: как программисты устраивают вечеринки

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

Источник

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

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

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

Утечка персональных данных предположительно сотрудников ОАО «РЖД»

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

Неизвестные, опубликовали в свободном доступе персональные данные 703,000 человек, предположительно сотрудников ОАО «РЖД».


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

Зарабатываем на солнечной энергии или пассивный доход в 25% годовых, практический опыт. Часть 1

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

КДВП © Diana, made by Siuzanna

Постараюсь поделиться полученным опытом (почти) самостоятельной постройки и эксплуатации ряда своих домашних солнечных станций (дСЭС) под Зеленый тариф (ЗТ) в Украине и что из этого вышло.

Видеоверсия

Написание статьи планировалось весной 2019, но в связи с рядом законодательных инициатив, она неоднократно была отложена. Теперь все законы (очень надеюсь) окончательно приняты, и можно продолжать, ну или начинать. Для постройки и получения высокого тарифа в этом году у Вас почти не осталось времени. И Вы уже должны стоять с заявлением на поднятие мощности до 30кВт. Все остальное вы успеете. Конечно, если хотите на этом заработать, о чем далее.
Читать дальше →

Готовимся к собеседованию по PHP: ключевое слово «static»

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

image

Попробуем разобрать «по косточкам» один из таких вопросов — что значит слово «static» в PHP и зачем оно применяется?
Подробности, цитаты из мануала, стандартов и личного опыта - под катом

В кабине машиниста поезда

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

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

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

В общем, добро пожаловать в кабину поезда «Аэроэкспресс» и в рабочий день машиниста. Причём не обычного, а Алексея Александровича Назарова — человека, который испытывал первые швейцарские составы компании Stadler, принимал их для России и учил других машинистов обращаться с ними.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность