Pull to refresh
122
14.2

Маркетолог

Send message

Проклятие знания. Как когнитивные искажения влияют на разработку?

Level of difficultyEasy
Reading time8 min
Views1.7K

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

 В такие моменты мы начинаем думать: «Как это можно не понять? Это же элементарно!» или «Он просто прикидывается, чтобы я сделал его работу!». Но, скорее всего, истина лежит гораздо глубже. Мы забываем, что когда-то и сами этого не знали. И в этом замешано проклятие знания.

Проклятие знания — ошибка мышления, из-за которой мы предполагаем, что другие люди обладают теми же знаниями, что и мы.

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

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

Читать далее
Total votes 13: ↑11 and ↓2+14
Comments2

Когда имён недостаточно. REST-клиент на F#. Часть 2. Методы

Level of difficultyMedium
Reading time14 min
Views1.1K

В прошлой части мы проецировали внешние контракты в DTO на примере REST. В этой будем проецировать методы контрактов в нечто, что позволит вызывать их вот так:

let! issues = gitflic.project.["kleidemos"].["myFirstProject"].issue.GET(limit = 24)

Имитация пути метода вызывает наибольший интерес, однако её реализации будет предшествовать ряд самодостаточных стадий.

Читать далее
Total votes 6: ↑5 and ↓1+6
Comments0

ИИ нуждается в огромной вычислительной мощности. Могут ли помочь световые чипы?

Reading time7 min
Views1.7K

Оптические нейронные сети, использующие фотоны вместо электронов, имеют преимущества перед традиционными системами. Но они также сталкиваются и с серьезными препятствиями.

Закон Мура уже работает весьма быстро. Он утверждает, что примерно каждые два года число транзисторов в компьютерных чипах увеличивается в два раза, и это приводит к значительному скачку скорости и эффективности. Но потребности в вычислениях в эпоху глубокого обучения растут ещё быстрее — темпами, которые, вероятно, могут меняться. Международное энергетическое агентство прогнозирует, что в 2026 году искусственный интеллект будет потреблять в 10 раз больше энергии, чем в 2023 году, и что центры обработки данных в этом году будут потреблять столько же энергии, сколько вся Япония.

Читать далее
Total votes 5: ↑4 and ↓1+4
Comments4

Интеллектуальное право: за что может прилететь информационному посреднику. Объясняем на примере хостинг-провайдера

Reading time11 min
Views1.6K

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

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

Читать далее
Total votes 7: ↑6 and ↓1+5
Comments1

Когда имён недостаточно. REST-клиент на F#. Часть 1. DTO

Level of difficultyEasy
Reading time14 min
Views1.5K

В данном цикле я хочу поговорить об одном из вариантов представления REST-клиента. Но я буду обсуждать частное (REST), чтобы использовать его как точку опоры для перехода к общему — проблеме проекций внешних контрактов. В первых двух частях я сосредоточусь на синтаксисе и «архитектурных» ходах, а потом поговорю о генераторах кода. Сложность будет расти с каждой частью, но предлагаемые подходы даже в рамках одной части можно применять независимо. Например, сейчас мы поговорим про DTO (Data Transfer Object), в следующий раз — про перенос методов и их иерархии. Это близкие модули, но их взаимное влияние осознанно будет сведено к минимуму.

Ранее я накатал большой цикл по локальному F#-кодогену и высказал намерение периодически возвращаться к генераторам на примере каких-то узконаправленных задачек. Данный цикл — пробный шар в этом направлении. Он логически вытекает из последних двух частей цикла, так что осилившие «Большой код» смогут посмотреть на уже знакомые концепции немного под другим углом.

Читать далее
Total votes 8: ↑7 and ↓1+6
Comments0

Новый прорыв приближает умножение матриц к идеалу

Level of difficultyMedium
Reading time7 min
Views41K

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

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

Возьмем, к примеру, умножение матриц или массивов чисел. В 1812 году французский математик Жак Филипп Мари Бине разработал базовый набор правил, которым мы до сих пор обучаем студентов. Это работает прекрасно, но другие математики нашли способы упростить и ускорить процесс умножения матриц.

Читать далее
Total votes 56: ↑47 and ↓9+53
Comments58

Лучшими кубитами для квантовых вычислений могут быть нейтральные атомы

Level of difficultyMedium
Reading time12 min
Views1.8K

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

В конце прошлого года технологический гигант IBM объявил о том, что может показаться важной вехой в квантовых вычислениях: о первом в мире чипе под названием Condor, содержащем более 1000 квантовых битов или кубитов. Прошло всего два года после того, как компания представила Eagle, первый чип с более чем 100 кубитами. Казалось, что эта область стремительно движется вперёд. Создание квантовых компьютеров, способных решать полезные задачи за рамками даже самых мощных классических суперкомпьютеров, требует ещё большего их масштабирования — возможно, до многих десятков или сотен тысяч кубитов. Но это ведь всего лишь вопрос техники, верно?

Читать далее
Total votes 8: ↑8 and ↓0+9
Comments0

Комфортная работа в Linux. ZRAM и гибернация — особенности взаимодействия

Level of difficultyMedium
Reading time16 min
Views9.2K

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

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

Если типовые задачи вашего компьютера требуют в 2-3 раза больше оперативной памяти, чем стоит в системе, наилучшим решением будет её увеличение. Если установить больше памяти невозможно технически (самый, пожалуй, острый пример — нетбуки на процессоре Atom с максимально возможным объёмом RAM 2 Гб) — ресурсоёмкие задачи лучше перенести на более мощный аппарат, а этот использовать только для офисно-браузерных задач (отдать детям или родителям). В случае же менее значительной нехватки (в пределах половины имеющегося объёма RAM), есть возможность улучшить ситуацию.

Читать далее
Total votes 17: ↑17 and ↓0+20
Comments28

Аутентификация go с использованием токенов PASETO

Reading time10 min
Views2.1K

В этой статье мы напишем небольшой сервис аутентификации на go с использованием токенов PASETO. Этот токен можно использовать вместо JWT для процесса аутентификации. Если хотите узнать о PASETO подробнее, то можете почитать статьи на Хабре или гитхабе.

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments0

An incursion under C#. Протаскиваем F# в Godot

Level of difficultyEasy
Reading time18 min
Views2.1K

Godot — игровой движок, который имеет нативную поддержку dotnet. К сожалению, эта поддержка до такой степени заточена под C#, что F# она выходит боком. Почти все проблемы разрешимы, но при недостатке опыта они скатываются в большой пластилиново-волосатый валик у самого входа в подземелье, который иногда приводит к преждевременной и бессмысленной гибели. Чтобы избежать этого в данной статье я дам программу-минимум, которая позволит выжить в Godot, но не выжать из него максимум.

Это не значит, что у сочетания F# + Godot нет своих плюшек. Просто мне хотелось съесть вначале сосредоточить всех мух в одном месте, а котлетами заняться потом и в более свободной манере. Также я предполагаю, что на данную статью будут натыкаться как новички в F#, так и новички в Godot, поэтому местами я буду дублировать базовые руководства.

Читать далее
Total votes 10: ↑10 and ↓0+11
Comments0

Подводный поезд, аэротакси и электросамолёт. Как меняется сфера транспорта, и что нас ждёт в будущем

Level of difficultyEasy
Reading time12 min
Views1.7K

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

Читать далее
Total votes 7: ↑6 and ↓1+5
Comments8

Исследователи приблизились к новому пределу скорости решения задачи коммивояжера

Reading time6 min
Views2.5K

Целочисленное линейное программирование может помочь найти ответ на множество реальных проблем. Теперь исследователи нашли гораздо более быстрый способ это сделать.  

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

Читать далее
Total votes 10: ↑8 and ↓2+9
Comments1

Как собрать компьютер из оригами

Reading time5 min
Views2.5K

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

В 1936 году британский математик Алан Тьюринг выдвинул идею универсального компьютера. Это было простое устройство: бесконечная полоса ленты, покрытая нулями и единицами, вместе с машиной, которая могла двигаться вперед и назад по ленте, меняя нули на единицы и наоборот в соответствии с некоторым набором правил. Он показал, что такое устройство можно использовать для выполнения любых вычислений.

А в сентябре 2023 года Инна Захаревич из Корнельского университета и Томас Халл из колледжа Франклина и Маршалла показали, что всё вычислимое можно вычислить, сложив бумагу.

Читать далее
Total votes 13: ↑12 and ↓1+14
Comments1

Большой код. Учимся генерировать F#-исходники с помощью Fantomas. Часть 4. Расширения, обобщения и методы

Level of difficultyHard
Reading time17 min
Views812

В прошлой части мы научились определять собственные типы и модули. Мы облекли все достопримечательности в конкретные типы и теперь можем снабдить их индивидуальными свойствами-ребрами (см. рисунок ниже).

В этой части речь в первую очередь пойдёт про Fluent API, но мы также поковыряем тему параметров в дженериках и функциях. Это последняя статья, где детально разбирается AST. Я определённо будут возвращаться к кодогену, но предметом разбирательств будут принципы формирования выходного кода, а их реализация ввиду их линейности будет выноситься за скобки.

Читать далее
Total votes 9: ↑7 and ↓2+7
Comments0

Большой код. Учимся генерировать F#-исходники с помощью Fantomas. Часть 3. Модули и типы

Level of difficultyHard
Reading time20 min
Views1.2K

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

Мы возьмём сугубо игровую задачу с понятным результатом и на её примере узнаем:

• на какие ноды AST стоит обратить внимание в первую очередь;
• где Fantomas-у нельзя доверять;
• где можно хакать;
• где лучше придерживаться пуризма;
• и как на F# можно строить Fluent API.

В этой части мы сосредоточимся на общей организации генератора, входных данных и основных элементах AST. В следующей сделаем то же самое, но на более сложном уровне, сместив повествование в сторону устройства Fluent API.

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments2

Что случится, когда Солнце поглотит Землю

Level of difficultyEasy
Reading time6 min
Views5.3K

Недавние наблюдения за стареющей чужой планетной системой помогают ответить на вопрос: что произойдёт с нашей планетой, когда Солнце начнёт умирать?  

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

Через 5 миллиардов лет Солнце превратится в красного гиганта. Выживет ли Земля — «вопрос открытый», — сказала Мелинда Соареш-Фуртадо, астрофизик из Университета Висконсина в Мэдисоне. Конечно, Земля может быть поглощена Солнцем и уничтожена. Но в некоторых сценариях Земля ускользает и выталкивается дальше в Солнечную систему.

Читать далее
Total votes 14: ↑10 and ↓4+8
Comments18

О неуловимой киберпреступной группировке Mahagrass: RemCos, BadNews и CVE-2017-11882. Часть 1

Level of difficultyEasy
Reading time11 min
Views1.7K

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

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

Читать далее
Total votes 8: ↑7 and ↓1+6
Comments1

Проблематика RaaS или почему вымогатель BlackCat так быстро прогрессирует

Level of difficultyEasy
Reading time11 min
Views2K

Приветствую, читатели. Не так давно в сети была обнаружена новая версия вымогателя BlackCat, и на этот раз злоумышленники начали использовать передовой инструмент под названием Munchkin. Он позволяет вредоносу развертываться из виртуальной среды на другие сетевые устройства. Теперь эта Кошка способна шифровать не только удаленные сетевые ресурсы через протокол SMB, но и ресурсы Common Internet File System (CIFS). 

Исследовательская лаборатория по кибербезопасности Palo Alto Networks впервые обнаружила обновленный инструментарий Черной Кошки. По их словам, теперь вымогатель распространяется через ISO-файлы Linux и Windows. Когда жертва устанавливает образ в виртуальную среду (WMware, VirtualBox или другие), срабатывает ранее упомянутый Munchkin. В этой цепочке он является одновременно и дроппером и трояном удаленного доступа (RAT). Вшитый вредонос загружает в систему BlackCat, а после распространяет его и на удаленные сети.

Читать далее
Total votes 7: ↑6 and ↓1+5
Comments0

Почему PASETO лучше для аутентификации, чем JWT

Reading time8 min
Views12K

В веб-разработке одним из наиболее популярных решений является аутентификация на основе токенов. Чаще всего для создания системы аутентификации используют JWT (порой даже там, где это не нужно). Но несмотря на популярность, JWT имеет ряд недостатков. Поэтому появляются новые решения для аутентификации на основе токенов. В этой статье мы рассмотрим PASETO — токен, который был разработан для замены JWT.

Читать далее
Total votes 16: ↑14 and ↓2+12
Comments9

Библиотека Helium от проекта tauOS

Reading time7 min
Views1.3K

В настоящее время существует множество самых разных операционных систем на базе ядра Linux. Далеко не все разработчики заморачиваются созданием собственных приложений для своих дистрибутивов. Если кто-то и озаботится написанием парочки программ, то они, как правило, пользуются уже готовыми библиотеками для разработки приложений. 

Ребята из tauOS решили, что существующих библиотек в мире явно недостаточно, и запилили еще одну. Так появилась библиотека виджетов под названием Helium. Она основана на GTK и предоставляет разработчикам некоторое количество готовых компонентов для создания графического интерфейса пользователя.

В этой статье я хочу немного рассказать о компонентах библиотеки Helium, о том как запускать приложения, написанные с ее помощью, и как на ней разрабатывать свои программы. Репозиторий библиотеки можно найти здесь. Все действия, приведенные в этой статье, выполнялись в Fedora Linux 39 (Workstation Edition).

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments3
1
23 ...

Information

Rating
Does not participate
Location
Россия
Works in
Registered
Activity