Чтобы полюбить такой будильник, запах должен исходить от настоящих свежеиспечённых булочек и настоящего свежесваренного кофе. Лживый будильник, который вместо по-настоящему испечь и сварить только пахнет, будет заслуженно ненавидим.
Из итогов года: 18 декабря Khronos Group объявили, что выпустить Vulkan до конца года, как они собирались, не выйдет, но всё почти уже готово и вот-вот, буквально на днях, выйдет версия 1.0 вместе с совместимыми драйверами.
Напомню, что Vulkan, который изначально планировали назвать glNext — API для 3D-графики, работающий на более низком уровне, ближе к драйверам, чем OpenGL. Он основан на AMD Mantle и должен стать ответом на DirectX 12. В числе компаний, участвующих в проекте — AMD, Nvidia и Google.
Странный какой-то препод. Тот факт, что разность между квадратами целых чисел — арифметическая прогрессия с шагом 2 (как раз 1, 3, 5...) вполне очевиден и к тому же элементарно выводится раскрытием скобок в выражении (n + 1)^2.
В итоге получается нечто вроде «пляшущих человечков» — шифр подстановки, только начертаний символа будет больше одного. В принципе, с большой базой картинок и дополнительным шифрованием сообщений может быть более-менее безопасно, но вряд ли практично. При наличии большой базы картинок сообщения можно передавать куда как эффективнее.
Мне думается, в укрощении таких монстров можно выделить несколько направлений:
повышение адаптабельности ПО — так, чтобы оно «из коробки» могло намного лучше подстраиваться под все особенности, на порядки упрощая и удешевляя внедрение;
движение на встречу предыдущему пункту — стандартизация управляющих процессов, устранение индивидуальных «заскоков», исторически сложившихся причуд и управленческих костылей;
технологический шаг вперёд в методах разработки ПО, который позволит повысить надёжность и предотвратить критические ошибки — усовершенствование доказательного программирования и повышение его практичности, разработка методов обнаружения сбоев и, главное, восстановления от этих сбоев «на лету».
И поскольку сложность систем растёт, всем этим неизбежно придётся заниматься с очень большим усердием.
Вряд ли топ-пользователям такой сети будет по нраву то, что у любого новичка со столь желанным смартфоном появится возможность узнавать о планируемых мероприятиях и уклоняться от участия.
Для замусоривания сети достаточно, чтобы объём хранимого там мусора на порядки превышал объём полезной информации. Вряд ли участникам сети будет интересно замусоривать свои хранилища терабайтами бессмыслицы, среди которых сиротливо вкраплены отдельные байты чего-то нужного. Квадриллионы йоттабайтов — это для коллизии хешей.
А вот принцип раздачи только запрошенных файлов, про который говорит ruikarikun, как раз решает проблему с мусором, хотя при этом начинаешь задумываться о том, не начнут ли становиться недоступными непопулярные, но всё же полезные файлы.
UUID тут не подходит, идентификатор должен однозначно зависеть от содержимого файла, а не генерироваться случайно. Взяли с запасом — чтобы избежать атаки дней рождения с учётом возможных атак злонамеренных личностей. Например, правообладателей (вспомним фирмочки, выкладывавшие мусор с привлекательными названиями в P2P-сети).
Кстати, неясно, насколько сеть защищена от целенаправленного захламления большим количеством мусорных файлов.
Fossil будет очень удобен, если документы текстовые, и просто удобен, если бинарные.
С работой на разных системах проблем не будет, fossil к системе никак не привязывается и состоит из единственного исполняемого файла.
Совершенно верно: выражает, понятно, формализованно. SQL ведь делался как раз с этим прицелом. Тем не менее, какой-нибудь трёхэтажный составной запрос с маловразумительными именами таблиц и полей, коих немало можно накопать на The Daily WTF, намекает нам, что даже на таком превосходном и продуманном языке степень интенциональности может очень сильно варьироваться и в первую очередь зависит от прикладываемых разработчиком усилий.
В моём представлении «интенциональность» программирования не имеет прямой связи с естественным языком. Это способ формулировки программ, в котором приоритет уделяется смыслу описываемых действий, а выбор конкретного способа осуществления по мере возможности отдаётся на откуп машине. Скажем, вызов функции sort вместо вписывания пары циклов «пузырька» повышает интенциональность. Такие программы легче для понимания, а формализованный анализ и поиск ошибок забирается на более высокий уровень абстракции, что повышает надёжность.
Нетрудно заметить, что факт использования естественного языка сам по себе не гарантирует какой-то высшей степени интенциональности: на естественном языке легко можно наформулировать такой ереси, что волосы дыбом встанут, или же просто растекаться мыслью по древу, болтаясь вокруг основной сути. Для семантически однозначных программ нужен семантически однозначный язык, будь то ассемблер, питон или ыфкуиль.
Не совсем по теме статьи, но всё же не мог не вспомнить одно интересное наблюдение. Была у нас одна сотрудница, выступавшая на конференциях с докладом о той пользе, которую она наносит и причиняет предприятию блокировкой соцсетей. Помимо всего прочего, она высчитывала экономический эффект от этих блокировок, руководствуясь довольно любопытным набором подразумеваемых положений. Положения эти, опять же, в неявной, не высказываемой вслух форме, во многом разделяют кадровики, особенно на государственных предприятиях, и заключаются они примерно в следующем:
сотрудники приносят предприятию прибыль, в точности равную размеру своей зарплаты
этот процесс происходит строго в рабочее время (к примеру, начинается ровно в 8:00, прекращается в 13:00, возобновляется в 14:00 и завершается в 17:00)
скорость принесения прибыли неизменна
за время, проведённое, в соцсетях, сотрудник не приносит предприятию никакой прибыли
недопуск сотрудника к соцсетям автоматически означает, что всё то время, что он там проводил бы, сотрудник станет посвящать полезной деятельности, приносящей прибыль
Как мне кажется, в сформулированном виде они выглядят куда более странно, чем в подразумеваемом.
С такой формулировкой соглашусь. Но что же делать, куда деваться нам, мечтающим о бритве будущего из «Пандорума»? Лазеры жгутся больно, подлецы такие, на ультразвук тоже надежды мало.
Напомню, что Vulkan, который изначально планировали назвать glNext — API для 3D-графики, работающий на более низком уровне, ближе к драйверам, чем OpenGL. Он основан на AMD Mantle и должен стать ответом на DirectX 12. В числе компаний, участвующих в проекте — AMD, Nvidia и Google.
И поскольку сложность систем растёт, всем этим неизбежно придётся заниматься с очень большим усердием.
А вот принцип раздачи только запрошенных файлов, про который говорит ruikarikun, как раз решает проблему с мусором, хотя при этом начинаешь задумываться о том, не начнут ли становиться недоступными непопулярные, но всё же полезные файлы.
Кстати, неясно, насколько сеть защищена от целенаправленного захламления большим количеством мусорных файлов.
С работой на разных системах проблем не будет, fossil к системе никак не привязывается и состоит из единственного исполняемого файла.
Нетрудно заметить, что факт использования естественного языка сам по себе не гарантирует какой-то высшей степени интенциональности: на естественном языке легко можно наформулировать такой ереси, что волосы дыбом встанут, или же просто растекаться мыслью по древу, болтаясь вокруг основной сути. Для семантически однозначных программ нужен семантически однозначный язык, будь то ассемблер, питон или ыфкуиль.
Как мне кажется, в сформулированном виде они выглядят куда более странно, чем в подразумеваемом.