Pull to refresh
4
0
Send message

Вот что еще любопытно. Есть такой язык post script (PS). Используется в принтерах и внутри pdf. Предназначен для отрисовки текста и графики. Язык вполне полноценный, хотя со своеобразным синтаксисом (обратная польская запись). По сути - это клон Форта.

PS появился лет на 10 раньше html.  По функциональности, уже тогда, мог бы заменить html, js и svg.  Если бы кто-то не нашел бы в то время в PS "фатальный недостаток", возможно, сейчас бы все фронт эндеры писали бы на форте, а бэкэндеры на каком-нибудь nodeps. ?

У меня тоже был забавный баг с переполнением буфера.

Делали мы в начале 2000-х цифровую городскую АТС на 10 тыс. абонентов. Большая часть системы работала на серверах, но еще было некое "ядро", которое непосредственно управляло всяким железом. Вот это ядро я как раз и писал. Крутилось оно на промышленом компьютере с 1МБ оперативы и аж целых 4МБ флэша. Операционка QNX4. Вот туда надо было впихнуть упомянутое ядро, урезанную базу абонентов (таблицу: номер телефона, список доступных услуг, количество потраченых минут) и еще несколько нужных сервисов, короче, ресурсов катастрофически не хватало. Поэтому мне пришлось всячески поизвращаться, чтобы все это поместилось в те самые 1М оперативки и 4М флэша. Например, пришлось писать менеджер памяти для мелких объектов, т.к. с библиотечным память быстро дефрагментировалась и ядро крэшилось с аут ов мемори. "База данных" тоже была самописанная и представляла собой хэш таблицу.

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

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

Потом, в спокойной обстановке, я воспроизвожу эту ошибку. Оказалось, что я ошибся на 1 байт при вычислении размера хэш таблицы. Набираемый той женщиной номер попадал как раз в последний слот таблицы и количество минут разговора как раз писалось в тот байт за пределами блока памяти выделенного под таблицу, затирая там что-то критическое. Причем, это был единственный номер из возможных 10 тысяч, который попадал в конец таблицы. Т.е. вероятность набрав номер от балды вызвать крэш была 1/10000. Она смогла.

"Я джва года ждал"... ) На самом деле, это называется геймификация и применяется уже лет 10 как и много где, - в органайзерах, ассистентах, всяческих трейнерах (например для похудения или чтобы бросить курить) и пр. Как правило, другие пользователи видят твои результаты, что помогает не забить на это дело и померяться пип успехами.

Мне для самомотивации достаточно простого списка дел. Вечерком просматриваю список и либо испытываю чувство удовлетворения в случае успешно выполненных задач, либо делаю "разбор полетов", анализируя причины неудач.

Закат солнца вручную. Если нравится пиксельный эффект, то существуют шрифты с хинтами. Нарисовать пиксели вручную, чтобы потом их сгладить антиалиасингом?!! Это какой-то пиксельный фетиш уже.

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

К сожалению, современные производители шрифтов ленятся оптимизируют расходы и шрифт с полным набором юникода и хинтами еще нужно поискать.

Простите, а это вообще что? Кусок какого-то учебника? Что за xv6 такая? Выглядит как зародыш Линукса какого-то?

Если до этого был еще какой-то перевод (Предисловие?), то укажите ссылку, пожалуйста.

Upd: Посмотрел оригинал. Вы бы хоть название книги перевели: xv6: a simple, Unix-like teaching operating system. Сразу стало бы понятнее о чем речь.

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

Ну чинить часы молотком также неудобно как и забивать гвозди микроскопом. Если использовать препроцессор не по назначению, то конечно он будет для вас "злом".

Для данного хаба - самое то!

Я в далеком 2005 и сам занимался подобными извращениями.

Второй пример можно покороче:

{ echo -e "GET / HTTP/1.1\n\n" >&5; cat <&5; } 5<>/dev/tcp/google.de/80

Кажется догадываюсь откуда пошла эта дичь про жидкие наночипы в вакцинах.

Пару лет назад предлагалось делать невидимые татухи вакцинированным люминесцентными чернилами из квантовых точек. Квантовые точки состоят из наноразмерных полупроводниковых партиклов. Ну а микросхемы - это полупроводниковые чипы. Particle - частица, chip - кусочек, почти синонимы. Вот в сознании некоторых людей каким-то причудливым образом переплелись эти две технологии и получились, правда, не совсем чипы, а партиклы, но зато полупроводниковые, нано, квантовые и жидкие и их предлагалось вводить вместе с вакциной )))

Хорошо, что 5G вышки пожгли в некоторых странах!

PS: Ах, да - //sarcasm.

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

Возможно, имеются ввиду те полосатые структуры, которые образуются при сортировке фрагментов ДНК по массе при помощи хроматографии и/или электрофореза?

То, что некоторые спорят просто ради самого спора я осознал еще в детстве. У нас это была как игра. Мы прекрасно понимали, что оппонент уже давно понял, что он проспорил, но сопротивляется только потому, что не хочет проигрывать. Интерес был в том, чтобы дожать противника - привести неопровержимые аргументы и вынудить его признать поражение.

Уже будучи подростком, как-то пристало 2 свидетеля иеговы (СИ). Я, как заядлый спорщик со стажем, наводящими вопросами быстро вывел их на логическое противоречие, где последнее их высказывание явно противоречило тому, что они говорили вначале. Далее последовала реакция, которую помню до сих пор. СИ буквально завис секунд на 10 - взгляд устремлен в бесконечность, на лице застыла дежурная улыбка. После этого, видимо, произошла перезагрузка и СИ начал мне снова что-то доказывать, почти слово в слово повторяя начало нашего разговора. Это было мне вторым уроком: некоторые спорят просто потому, что им нужно тебя в чем-то убедить и все их аргументы не обязательно соответствуют истине или заблуждениям, а должны лишь звучать правдоподобно для достижения поставленной цели.

Ну и, наконец, есть просто троли. Им не важен сам спор, им нужно развести вас на эмоции - "сделал гадость - на сердце радость". В этом случае спор бесполезен и, да, переспорить троля невозможно. Поэтому, совет тут один: Не кормите троля! Ему станет скучно и он уйдет.

Напомнило сюжет фильма WarGames, где военный ИИ управляющий ЯО, и который все воспринимал как игру, решил сыграть в 3-ю мировую войну, ядерную, разумеется. Главный герой сумел заставить ИИ перед началом войны запустить симуляцию. По результатам выходило, что победителей не будет. Тогда ИИ пришел к выводу, что единственная выйгрышная стратегия - не играть вообще.

В 12 лет родители повезли меня на море в Одессу. Тогда я впервые увидел море со знаменитой одесской лестницы. Был поражен, что море отчетливо закругляется у горизонта. С тех пор других доказательств шарообразности Земли мне не нужно.

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

Надо отметить, что для обсчета результатов (среднее, погрешности сигма и пр.) я тогда использовал програмку на бейсике zx spectrum (дело было в 1994 г.), а он пересчитал все вручную.

Из личного опыта:

Начальник почему-то очень не любил бренчи и вообще любые мерджи в гите. Он хотел, чтоб история была строго линейная. И он решил с этим бороться - лично каждый день делал ребейс. Мы ему говорили, что так нельзя и чем это чревато, но он видимо считал себя единственным, кто знает как все должно работать и никого не слушал. Несколько раз таки получалось как в этой статье про 2*2=5. После этого он разочаровался в ребейсе, но от своей идеи строго линейной истории не отказался. Он придумал гениальный метод: мы все свои коммиты присылали ему в виде патчей (диффов) по почте, а он уже самолично их эпплаил, чтобы получилась линейная история.

А еще он не любил длинные коммиты и заставлял всех делать коммиты по 2-3 строчки, не более. Причем, если ему какой-то коммит не нравился, то он его мог спокойно выкинуть. Случалось, что после такой ампутации проект тупо не собирался, и он делал втык разработчику.

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

Было много и другой дичи, про которую надо отдельную статью писать. На минуточку, это крупный и известный проект (название не скажу ибо NDA), но в клиентах у которого Микрософт, Амазон, Тошиба и др.

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

Из личного опыта:

"в российских настольных компьютерах Life Tech..."

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

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Registered
Activity