Как стать автором
Поиск
Написать публикацию
Обновить
86
0
Deleted user @Deleted-user

Так вышло

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

Rust: «Назад к корням»

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

Мне приходит в голову множество разных целей для Rust в текущем 2018 году, к слову, 2017 год прошел для меня очень быстро, так что я задался следующим вопросом: если бы я мог выбрать одну-единственную цель для Rust в 2018 году, то что бы я выбрал?


Я буду пристрастен, и вот мое мнение:

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

Rust: «Небезопасные абстракции»

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

Ключевое слово unsafe является неотъемлемой частью дизайна языка Rust. Для тех кто не знаком с ним: unsafe — это ключевое слово, которое, говоря простым языком, является способом обойти проверку типов (type checking) Rust'а.


Существование ключевого слова unsafe для многих поначалу является неожиданностью.
В самом деле, разве то, что программы не "падают" от ошибок при работе с памятью,
не является особенностью Rust? Если это так, то почему имеется легкий способ обойти
систему типов? Это может показаться дефектом языка.


Но не все так просто, детали — под катом.

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

Общество телефонных зомби

Время на прочтение3 мин
Количество просмотров137K
Многие знают, что я хакер. При этом многих удивляет, когда я говорю, что терпеть не могу технологии. Да, когда я произношу это, я слегка преувеличиваю. На самом деле, меня просто стало раздражать, каким образом технологии вторгаются в нашу жизнь.

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

Не поймите меня неправильно, технологии — это великая сила, которая помогла нам достичь удивительных высот (мы отправили людей на е***ую луну). Но это не мешает мне думать, что наши недавние изобретения скорее снизили качество нашей жизни, чем улучшили. Мы превратились в общество телефонных зомби, склонивших головы над светящимися экранами в бесконечном поглощении бесконечных объемов бесполезной информации.
Читать дальше →

Потому что

Время на прочтение1 мин
Количество просмотров19K
Меня приглашают выступать на международных конференциях,

потому что...

Я изобрел инструмент под названием Compass,

потому что...

Я использую Sass и работаю в Caring.com,
потому что...

Уязвимость в JAVA позволила выкрасть у ФБР данные о 12 миллионах владельцев устройств Apple

Время на прочтение1 мин
Количество просмотров37K
Во второй половине марта 2012 года уязвимость AtomicReferenceArray позволила проникнуть на ноутбук специального агента ФБР Кристофера Стэнгла и похитить с его рабочего стола файл под названием NCFTA_iOS_devices_intel.csv, который содержал список из 12 367 232 уникальных идентификаторов (UDID) устройств на iOS, имена владельцев, названия и тип устройств, токены APN и проч.

Группа Antisec выложила в открытый доступ информацию об 1 000 001 устройств, убрав конфиденциальную информацию, и оставив только поля для идентификации устройств.
Читать дальше →

Самый ценный совет по программированию, который я получил

Время на прочтение1 мин
Количество просмотров16K
«Год или два, с момента начала работы в Bell Labs, я работал в паре с Кеном Томпсоном над интерактивным графическим языком, разработанным Джерардом Хольцманом (Gerard Holzmann). Я печатал быстрее, поэтому я сидел за клавиатурой, а Кен стоял позади меня. Мы работали быстро, и когда компилятор выдавал ошибку, я рефлективно начинал закапываться в проблему, изучая стек вызовов, вывод программы, запускал отладчик и так далее. Но Кен просто стоял рядом и думал, игнорируя меня и код, который мы только что написали. Вскоре я заметил закономерность: Кен зачастую понимал, в чем проблема, раньше меня и произносил: „Я знаю, что не так“. Обычно он был прав. Я понял, что Кен выстраивал ментальную модель кода и, когда что-то ломалось, это была ошибка в модели. И думая о том, как эта проблема могла возникнуть, он выяснял, в каком месте модель была неверна или где наш код мог неправильно эту модель отразить.
Читать дальше →

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

Время на прочтение1 мин
Количество просмотров5.6K
Syte был разработан Родриго Нери (Rodrigo Neri) — собственно его страничка и является одним из примеров использования Syte.
По сути, это простое и мощное Django-приложение, которое позволяет интегрировать такие социальные сервисы, как Tumblr, Twitter, Github, Dribbble и Instagram.

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

Moqups — новый сервис для создания макетов UI

Время на прочтение1 мин
Количество просмотров90K
Как характеризуют сервис сами разработчики, Moqups — это «изящное HTML5-приложение для создания макетов, концептов пользовательского интерфейса, прототипов, в зависимости от того, как вы сами это называете».



Для Chrome есть отдельное приложение.

На данный момент доступно более 60 шаблонов элементов, экспорт в PDF и PNG, клавиатурные шорткаты, группировка объектов, привязка к сетке и проч.

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

Клавиатурные сокращения с Javascript

Время на прочтение1 мин
Количество просмотров2K
Mousetrap — маленькая библиотека (1.4 KB) для обработки клавиатурных нажатий.

// single keys
Mousetrap.bind('4', function() { highlight(2); });
Mousetrap.bind("$", function() { highlight(3); }, 'keydown');
Mousetrap.bind('x', function() { highlight(4); }, 'keyup');

// combinations
Mousetrap.bind('command+shift+K', function() { highlight(7); });
Mousetrap.bind(['command+k', 'ctrl+k'], function() { highlight(8); });

// gmail style sequences
Mousetrap.bind('g i', function() { highlight(11); });
Mousetrap.bind('* a', function() { highlight(12)});

// konami code!
Mousetrap.bind('up up down down left right left right b a enter', function() {
    highlight([15, 16, 17]);
});

Как видно, поддерживаются как одиночные нажатия, так и сочетания и клавиатурные комбо.

Работает в Internet Explorer 6+, Safari, Firefox, Chrome (с включенным Vimium не работает).

Пробуйте — craig.is/killing/mice

Маленькая C-функция из преисподней

Время на прочтение5 мин
Количество просмотров3.6K
Недавно мой студент и я пытались понять одну тонкость в стандарте C. Самый простой способ прояснить подобные вопросы — это узнать, учли ли её разработчики компиляторов, то есть написать код и посмотреть, что с ним будут делать разные компиляторы.

Я написал такую функцию:
int foo (char x) {
  char y = x;
  return ++x > y;
}

Так как ++x увеличивает на 1 значение x, очевидно, что функция должна возвращать "1" для большинства значений x. Вопрос состоит в том, что она вернет для значения CHAR_MAX?

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

В Arch Linux по умолчанию включена проверка цифровых подписей пакетов

Время на прочтение1 мин
Количество просмотров6K
Разработчики дистрибутива Arch Linux уведомили пользователей о включении по умолчанию функции проверки достоверности источника пакетов на основании цифровых подписей начиная с выпуска пакетного менеджера pacman 4.0.3-2. Поддержка проверки пакетов по цифровой подписи была добавлена в дистрибутив ещё полгода назад, но до настоящего момента данная функция не была включена по умолчанию из-за того, что процесс создания цифровых подписей для всех пакетов потребовал времени.

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

Happy Hacking Keyboard

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

Преамбула


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



Мне надоели эти баталии, и я решил, что пришло время найти какую-нибудь компактную замену стандартной 104-кнопочной клавиатуре.

Требований было немного: удобная, надежная, матовая (Почему-то маркетологи решили, что потребителям нравится глянец и стали лепить его в промышленных масштабах на всё, чего касается потребительский палец). И механическая.
Читать дальше →

Разработчики Ubuntu представили инновационную альтернативу традиционным меню

Время на прочтение3 мин
Количество просмотров5.4K
Марк Шаттлворт представил новую систему меню 'Head-Up Display' (HUD), которая проповедует кардинально иные методы и может заменить обычную систему вложенных меню, которая существует в компьютерной индустрии уже более 30 лет. Теперь вместо путешествия через многочисленные выпадающие меню для поиска нужного приложения или команды, система HUD предложит пользователям просто напечатать в поисковой строке, что они хотят сделать. В процессе набора команд система будет автоматически подбирать и предлагать наиболее вероятные названия программ из приложений имеющихся в системе или команд, имеющихся в штатном меню текущего приложения.

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

Потребление памяти в фоновом режиме

Время на прочтение2 мин
Количество просмотров36K
В Хроме есть такая замечательная вещь, как приложения и расширения. И они могут замечательным образом работать в фоновом режиме.

Chrome уже давно обогнал firefox по потреблению памяти в схожих условиях, но то, что я увидел на прошлой неделе, поразило меня до глубины души.
Читать дальше →

Началось тестирование ZFS v28 для FreeBSD

Время на прочтение2 мин
Количество просмотров1.4K
Pawel Jakub Dawidek завершил работу по портированию во FreeBSD последней версии файловой системы ZFS и призвал энтузиастов принять участие в тестировании кода, перед его интеграцией в кодовую базу FreeBSD HEAD. Отдельно сообщается, что несмотря на стагнацию проекта OpenSolaris, работа над ZFS во FreeBSD будет продолжена своими силами, для этого уже подобралась неплохая команда разработчиков, некоторые из которых ранее принимали участие в разработке OpenSolaris, и несколько компаний выразили свой интерес к проекту. Большое внимание также будет уделяться сотрудничеству с проектом IllumOS, в рамках которого создано полностью свободное и развиваемое независимым сообществом разработчиков ответвление от кодовой базы OpenSolaris.
Читать дальше →

Роб Пайк подверг критике C++ и Java

Время на прочтение2 мин
Количество просмотров11K
На конференции OSCON Роб Пайк заявил, что промышленные языки программирования, в частности С++ и Java, слишком сложны и не соответствуют современным вычислительным стандартам.
— Они слишком многословны и их запутанность, сложность и многословность только растет со временем.
В качестве иллюстрации запутанности этих языков, Пайк показал нексолько примеров кода на С++.


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

Уменьшение размеров папки winsxs

Время на прочтение4 мин
Количество просмотров884K
Многие обладатели Windows Vista и 7 наверняка сталкивались с тем, что папка Windows c ходом времени разрастается как на дрожжах. Я мирился с этим до тех пор, пока 40-гиговый раздел с системой не начал периодически выдавать мне сообщения о том, что свободное место на нем заканчивается.

Я нашел один чудесный инструмент, магия которого позволяет уменьшить размер папки winsxs без потери производительности/стабильности/данных. Сначала я проделал все описанное под катом на своем домашнем буке, а сейчас для чистоты эксперимента повторю на рабочем.

Итак, приступим

Стрелки часов

Время на прочтение2 мин
Количество просмотров2.3K
Мне всегда нравились стрелочные часы. Я пробовал носить цифровые, так и не смог привыкнуть к часам в трее винды — для моего мозга это означает дополнительное цифро-аналоговое преобразование, поэтому вместо них у меня крутится Analog Clock.
Однажды в одной занимательной книжке я прочел условие задачи, в которой говорилось, что если поменять местами минутную и часовую стрелки, то получится абракадабра в большинстве случаев. Но есть такие состояния стрелок, когда их обращение приводит к реальному результату, тривиальное решение в данном случае — это полдень или полночь. А какие еще есть "временные пары" на циферблате? Тут я закрыл задачник и приступил к решению.
Читать дальше →

Ленимся!

Время на прочтение1 мин
Количество просмотров2.8K
Столько обсуждений борьбы с ленью, жуть просто!

Не надоело?

Лень — это же очень личное, можно сказать интимное состояние человека. Нет ни одного человека, который в минуты лени тупо смотрит в потолок. Кто-то сделает перекур с чае/кофепитием (хотя перекур для курильщика — это чаще всего технологический перерыв), кто-то втыкает в Интернет, кто-то смотрит телек или просто блотает с друзьями и прочее… А потом вдруг человек обнаруживает, что дедлайн подпёр жопу, или просто накопилось задач столько, что не знаешь, за что хвататься. И начинается сказ о потерянном времени.

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

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

Что же такое лень? Как с ней бороться? Как прекратить терять время, секунда за секундой? Может купить ежедневник? Или завести аккаунт на гугл-календарь, или на каком-нибудь online-планировщике? или может просто вести табличку в Excel? Как мотивировать себя?
Как найти один простой ответ на такое количество вопросов?

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

Не вижу смысла писать здесь о том, что помогает мне. Это ведь помогает МНЕ, а не вам. Хотите работать лучше — ищите способ. Хотите фелонить — причина(порой чрезвычайно увлекательная) всегда найдется.

UTF-8 + FreeBSD 8

Время на прочтение1 мин
Количество просмотров8.3K
Начиная с 8.0-RELEASE, FreeBSD будет поддерживать юникод в консоли.
Уже сейчас в восьмой ветке можно подключить UTF-8, проделав следующие шаги:
  1. Добавить в конфигурацию ядра строки options TEKEN_UTF8 и options TEKEN_XTERM
  2. Заменить 'cons25' на 'xterm' в /etc/ttys
freebsd-vt-unicode.png

Информация

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