Как стать автором
Обновить

Присматриваемся к одноплатникам на RISC-V, обзор модуля Sipeed Lichee RV на процессоре Allwinner D1

Время на прочтение20 мин
Количество просмотров24K
Sipeed Lichee RV

Одноплатные компьютеры на RISC-V процессоре сравнительно новое веяние. Поднебесная активно работает над снижением зависимости от западных информационных систем и технологий, именно поэтому новая открытая архитектура RISC-V одна из ключевых ставок Китая. Для продвижения в массы китайский чипмейкер Allwinner на базе ядра Alibaba/T-Head Xuantie C906 RISC-V разработал процессор Allwinner D1 и упрощенную модификацию Allwinner D1s. На сегодня разработано несколько одноплатников на RISC-V процессоре, и в первенство по массовости вырвалась компания Sipeed с модульным компьютером Система-на-Модуле Lichee RV с 512 Мб ОЗУ всего за $16.90, работающим на Linux. Разработчик может спроектировать несущую плату для данного модуля, добавив необходимые периферийные устройства и разъемы. В результате получится решение максимально подготовленное для себя. Данный модуль предназначен для создания интеллектуальных информационных систем, терминалов, роботов, и т.д. В первой части рассмотрим архитектуру процессора, возможности модуля, дистрибутивы, программное обеспечение. Во второй части детально рассмотрим порты и интерфейсы для программирования, напишем программы на Python и C#.
Читать дальше →
Всего голосов 32: ↑28 и ↓4+24
Комментарии37

35 лет игре «Ослик» Билла Гейтса

Время на прочтение6 мин
Количество просмотров21K
35 лет назад, в августе 1981 года в продажу вышла первая модель IBM PC (на фото слева) — первый массовый персональный компьютер фирмы IBM, с операционной системой PC-DOS 1.0 (MS-DOS) и интерпретатором BASIC.

Компания Apple с любопытством наблюдала за экспериментом IBM и даже приветствовала коллег большим рекламным объявлением в газете Wall Street Journal под заголовком «Добро пожаловать, IBM. Серьёзно». Хотя Стив Джобс в те времена экономил каждый цент, но всё-таки разрешил сотрудникам купить один экземпляр IBM PС и изучить его содержимое.

Сотрудников не слишком впечатлила аппаратная начинка IBM PC: она явно уступала мастерски сконструированной электронике Стива Возняка. С программным обеспечением дело обстояло ещё хуже: операционная система MS-DOS от Microsoft являлась клоном старой операционной системы CP/M, и даже демонстрационные программы были сделаны грубовато.

Особенно недоумение сотрудников Apple вызвала странная игра Donkey («Ослик»), написанная на BASIC.
Читать дальше →
Всего голосов 31: ↑24 и ↓7+17
Комментарии51

FAQ по программированию под Android от новичка, и для новичков

Время на прочтение16 мин
Количество просмотров158K
Предисловие к FAQ.

Программирование является моим хобби уже давно (правда на других языках и платформах), но до андроида руки дотянулись совсем недавно. Прошло несколько этапов, прежде чем я добрался до написания программ.
Сначала была пара месяцев посвященных Java, на сайте с «Сгибателем».
После, долгие попытки подружится с Eclipse, закончившиеся побегом на Android Studio.
На данный момент выпущено 7 программ и две находятся в разработке.
Данная подборка возникла как попытка структурирования и оптимизации полученной в процессе информации.
Заранее извиняюсь за возможно некорректную терминологию – так как практикую обучение через создание, и в теоретической части есть пробелы.

Надеюсь, что приведенные примеры окажутся полезными.
Читать дальше →
Всего голосов 114: ↑98 и ↓16+82
Комментарии23

Как я намучился с подключением проектора и нашёл целых 7 способов

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

Пошаговая настройка: подключение проектора к компьютеру, смартфону, планшету. Подробные инструкции 

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

Читать далее
Всего голосов 7: ↑4 и ↓3+1
Комментарии7

CTFzone write-ups – First comes Forensics

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


Прошло несколько дней после окончания CTFzone от компании BI.ZONE, а наши смартфоны до сих пор разрываются от уведомлений Telegram – чат с участниками битвы после конференции стал еще более оживленным. По отзывам игроков, многие задания CTFzone были очень нестандартными и действительно непростыми. Во время соревнования мы пообещали участникам, что, как только наши разработчики отоспятся и придут в себя, мы выложим райтапы для всех заданий в нашем блоге.

Начнем мы с направления Forensics, и в этой статье представляем вам решения на все таски – от задания на 50 до 1000. Мы знаем, что hackzard опередил нас и уже выложил райтапы к заданиям на 50 и 100, но с более крутыми тасками будет сложнее ;)
Читать дальше →
Всего голосов 14: ↑12 и ↓2+10
Комментарии2

Как бесплатно генерить картинки в Dall-E через ChatGPT 4

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров60K

Введение:

- обычный ChatGPT 3.5 работает тут https://chat.openai.com, но для генерации картинок нужен Dall-E 3 отсюда https://openai.com/dall-e-3 и желательно ChatGPT 4 (правильно осознать ваш креативный запрос), а они доступны только по премиум подписке (for Plus and Enterprise users) за 20 долларов в месяц

- чтобы обойти это ограничение, воспользуемся бескорыстием Microsoft, вложившей в OpenAI (разработчика ChatGPT) больше 13 млрд долларов для развития своего поисковика Bing 

- Bing предоставляет доступ одновременно и к ChatGPT 4 и к Dall-E 3, но через браузер Microsoft Edge и при наличии учётной записи Microsoft

Подготовка:

- создайте учётную запись в Microsoft https://signup.live.com/signup?lic=1

(если учётка уже существует, от Skype, например, пропустите этот шаг и найдите логин и пароль)

- скачайте браузер Edge https://www.microsoft.com/ru-ru/edge/download?form=MA13FW

(если браузер уже скачан, пропустите шаг)

Процесс:

- открываем браузер Edge и логинемся в нём с учётной записью Microsoft

- скачиваем VPN-плагин для браузера Edge, например, по ссылке далее и активируем его https://microsoftedge.microsoft.com/addons/detail/browsec-vpn-%D0%B1%D0%B5%D1%81%D0%BF%D0%BB%D0%B0%D1%82%D0%BD%D1%8B%D0%B9-/fjnehcbecaggobjholekjijaaekbnlgj

- открываем в браузере Edge ссылку https://www.bing.com/search?q=Bing+AI&showconv=1 и сохраняем ее в избранном

- если увидите три плашки "Творческий", "Сбалансированный" и "Точный" в разделе "Выбор стиля беседы" и строку запроса как в мессенджере в нижней части экрана, значит всё получилось (если видите "обычный" поиск Bing с разными ссылками типа "Новости о Bing AI",  "Что такое Bing" и строку запроса в верхней части экрана, значит что-то не получилось)

Читать далее
Всего голосов 24: ↑14 и ↓10+4
Комментарии62

Теория охотника и фермера

Время на прочтение6 мин
Количество просмотров12K
После очередной статьи на тему болезней 21ого века, кучи советов по тому как быть рационалом, как выстроить свое время, используя принципы и приемы GTD, как бороться с прокрастинацией, как иметь стопицот часов в сутках вместо 24, мне хочется высказать свою точку зрения, которая основана на очень редко встречающихся, но от этого не менее полезных, публикациях, плюс постоянных дискуссиях с моими коллегами по работе на эту животрепещущую тему.

Есть ли место в этом мире иррационалам? Нужно ли искать 25ый час в сутках? Так ли важно фиксировать свои задачи и четко следовать плану с мельчайшей детализацией на 5 лет вперед? Нужно ли бороться с ленью?

Выдохни…

image

Читать дальше →
Всего голосов 11: ↑9 и ↓2+7
Комментарии10

Блокировка сайта по решению суда может нарушать Европейскую Конвенцию по правам человека

Время на прочтение4 мин
Количество просмотров4.8K
Блокировка сайтов на основании судебных решений все чаще и чаще используется для ограничения распространения в Интернете контента, который считается незаконным. Это вызывает много судебных споров, которые рассматриваются множеством судов по всему миру. Не исключение и Европейский Суд, который в начале декабря 2015 года вынес постановление, касающееся блокировки YouTube в Турции [1]. В этом деле ЕСПЧ нашел нарушение права на свободу выражения мнения, хотя ранее отказывал в рассмотрении жалоб на блокировку ресурсов last.fm и myspace.com. Какие факторы заставили ЕСПЧ поменять мнение и рассмотреть жалобу, а также признать нарушение Конвенции? Во-первых, важное общественное значение ресурса YouTube, во-вторых, его важность для работы заявителей и, в-третьих, положения турецкого закона, которым не соответствовало решение турецкого суда о блокировке сайта. Теперь обо всем этом подробнее.
Читать дальше →
Всего голосов 7: ↑5 и ↓2+3
Комментарии5

На какие вопросы можно ответить, проанализировав 1 500 000 уникальных историй болезней?

Время на прочтение11 мин
Количество просмотров48K
Существует ли связь между астмой и шизофренией?
Диабет и биполярное расстройство личности — могут ли они иметь что-то общее?
Сможет ли выявить столь нетривиальные связи анализ базы данных по 1500000 пациентов США?

предупреждение: под катом очень много текста
Читать дальше →
Всего голосов 88: ↑77 и ↓11+66
Комментарии14

Уязвимости ритейлеров — три случая, когда OTP можно было получить в запросе

Время на прочтение4 мин
Количество просмотров8.3K
При входе в личные кабинеты различных сервисов, в целях безопасности, часто используется 2FA — помимо логина и пароля, нужно ввести одноразовый код.

Но, как оказалось, не всё так безопасно даже с двухфакторной аутентификацией — за последний год я нашёл три (!) сервиса, когда одноразовый код для входа, который отправляется клиенту в SMS, можно было посмотреть в самом запросе.

Далее кратко о том, чем это грозило, на конкретных примерах.

1. Популярная сеть АЗС, более 500 000 зарегистрированных клиентов.

Запрос при входе в веб-версию личного кабинета:
POST https://someazs.ua/ua/profile/auth/
Accept: application/json, text/javascript, */*; q=0.01
Accept-Encoding: gzip, deflate, br
Accept-Language: ru,en-US;q=0.9,en;q=0.8,uk;q=0.7
Connection: keep-alive
Content-Length: 408
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Cookie: PHPSESSID=6n3l2o90hfb020u9ag020u8ha1; usersomeazs_popupcoupons=1;...
Host: someazs.ua
Origin: https://someazs.ua
Referer: https://someazs.ua/ua/login/
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
X-Compress: null
X-Requested-With: XMLHttpRequest

data[phone_mask]: 951234567
data[phone]: 0951234567




Ответ: {"Status":0,"Code":"7038","status":true,"step2":true}

Код из SMS — 7038 — виден просто в ответе сервера.
Читать дальше →
Всего голосов 32: ↑32 и ↓0+32
Комментарии16

Лучшие инструменты с открытым исходным кодом и библиотеки для Deep Learning — ICLR 2020 Experience

Время на прочтение13 мин
Количество просмотров9K
Сложно найти на Хабре человека, который не слышал бы про нейронные сети. Регулярные новости о свежих достижениях нейронных сетей заставляют удивляться широкую публику, а также привлекают новых энтузиастов и исследователей. Привлеченный поток специалистов способствует не только еще большим успехам нейронных моделей, но и приводит к развитию инструментов для более удобного использования Deep Learning подходов. Помимо всем известных фреймворков Tensorflow и PyTorch активно развиваются и другие библиотеки, нередко более гибкие, но менее известные. 

Эта статья является переводом одного из постов neptune.ai и освещает самые интересные инструменты для глубокого обучения, представленные на конференции по машинному обучения ICLR 2020. 

Читать дальше →
Всего голосов 33: ↑33 и ↓0+33
Комментарии2

Флэш-память для загрузки FreeNAS и прочих embedded OS

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

Аннотация


Анализ ошибок и технических сбоев — традиционно наименее раскрытая и наиболее интересная тема, которая как раз и показывает, насколько удачная была инженерная идея. Построив некоторое время назад сервер NAS из старого железа, мы начинаем анализ происходивших с ним отказов. В этой статье речь пойдет об отказах из-за загрузочной флэшки и их вероятных причинах. Даны рекомендации по выбору флэш-памяти. Отчасти применимо и к другим встраиваемым системам, например, бытовым видеорегистраторам.

Еще один NAS своими руками, часть 2: хорошие воспоминания*


*Рекламный слоган одного известного производителя памяти звучит «Good memories start here».

Практически все специалисты рекомендуют при выборе загрузочной флэшки не экономить и не использовать популярный бренд noname. Несмотря на корневую файловую систему FreeNAS версии 9 в режиме read-only, потребительские USB-флэшки компактного дизайна за полгода отказывали дважды, в обоих случаях примерно спустя пару месяцев эксплуатации. Причем оба использованных бренда, по мнению некоторых опрошенных представителей отрасли, вполне адекватные и уважаемые, в поставке откровенного брака незамеченные.


На фото: два вполне адекватных представителя крохотных флэшек на 8Гб и 16Гб

В чем же дело? Бесконечен ли ресурс чтения флэш-памяти? Попробуем разобраться.
Читать дальше
Всего голосов 95: ↑95 и ↓0+95
Комментарии54

Большие уличные часы

Время на прочтение4 мин
Количество просмотров20K
Всё таки не хабраэффект не дает о себе забыть. Статья о том как сделать большие часы, которые можно повешать на здание. Скопирована на хабр т.к. сервер не в состоянии переварить столько посетителей.
Читать дальше →
Всего голосов 49: ↑45 и ↓4+41
Комментарии33

Разберемся раз и навсегда: AJAX, «кириллические символы», кодировки, prototype.js, jQuery, JsHttpRequest

Время на прочтение5 мин
Количество просмотров167K
AJAX, — это технология. Одной из часто используемых техник этой технологии является
посылка запросов при помощи объекта класса XMLHttpRequest.


Как же посылать и принимать AJAX запросы в нужной нам кодировке, нужно ли использовать однобайтовые кодировки или не обойтись без UTF-8. На все эти вопросы раз и навсегда ответит эта статья.

Читать дальше →
Всего голосов 64: ↑57 и ↓7+50
Комментарии125

ЗаETLье или Особенности рыбалки в Озере данных

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

Привет, меня зовут Алексей Белявцев и я ETL-архитектор в X5 Group. Наши объёмы данных соизмеримы с крупнейшими международными компаниями и требуют специального ухода и содержания, что накладывает определённый отпечаток на специфику используемых решений. Я не планирую грузить вас описанием детальной архитектуры (всё равно её нельзя публиковать), скриптами загрузки (их тем более) и другими скучными подробностями технической реализации, которые в достатке присутствуют во всех data-driven компаниях, а хочу заглянуть в будущее и попытаться представить архитектуру, удовлетворяющую всем потенциально возможным требованиям, масштабируемую, отказоустойчивую и просто приятную во всех отношениях.

Речь пойдёт о практиках сборки данных (подготовка снастей и поиск водохранилища), а также о нахождении оптимальной точки раздачи данных (лунке в зимний сезон или просто удачного места в рогозе) в реалиях очень big data, сотен систем-источников (СИ) и петабайтах данных (примерно как порыбачить в океане). Цель изложения заключается в консолидации и структурировании информации по теме и размышлениях об идеализированной архитектуре в зависимости от потребностей подразделений компании в данных. Будут высказаны предположения по опережающему развитию архитектуры под новые требования бизнеса третьего десятилетия 21 века, при этом многие из затронутых тем на текущем этапе развития направления являются более чем holywar-ными, причём подходы, успешно использующиеся в одних компаниях, могут быть провальны в других и наоборот (зависит от многих факторов).

Читать далее
Всего голосов 9: ↑7 и ↓2+5
Комментарии11

Как создать простой LoRa мессенджер: обмен зашифрованными текстовыми сообщениями между устройствами без интернета

Уровень сложностиСредний
Время на прочтение30 мин
Количество просмотров12K

В современном мире IoT, когда связь в отдаленных районах становится все более актуальной, технология LoRa (Long Range) предоставляет нам возможность создать дальнобойный, надежный, энергоэффективный и зашифрованный канал связи без необходимости иметь какую-либо сетевую инфраструктуру. 

В этой статье мы рассмотрим, как создать простой LoRa мессенджер с использованием своего протокола обмена и готовых модулей, работающих в режиме P2P (peer-to-peer) – не идеального, но интересного решения для обмена текстовыми сообщениями в условиях ограниченной инфраструктуры.

Для упрощения и автоматизации процесса обмена сообщениями мы воспользуемся Node-RED. Этот инструмент, помимо реализации основной логики обмена сообщениями, также предоставит графический интерфейс для мессенджера, что сделает процесс более доступным и интуитивно понятным. 

Выглядеть будет просто, потому что воспользуемся всем готовым :)

Свистать всех наверх!
Всего голосов 31: ↑29 и ↓2+27
Комментарии36

OpenSSL и Network Security Services (NSS) — две стороны одной медали

Время на прочтение31 мин
Количество просмотров8K
imageО какой медали идет речь в заголовке? Речь идет об инфраструктуре открытых ключей (Public Key Infrastructure — PKI/ИОК) на базе стандартов криптографии с открытым ключом (Public Key Cryptography Standards — PKCS). Инфраструктура открытых ключей включает в себя множество различных объектов и механизмов работы с ними, а также протоколы взаимодействия объектов друг с другом (например, протоколы TLS, OCSP). В число объектов ИОК/PKI входят сертификаты x509 и ключевые пары (приватные и публичные ключи), подписанные и зашифрованные документы (pkcs#7, CMS), защищенные контейнеры для хранения приватных ключей (pkcs#8) и личных сертификатов с ключами (pkcs#12) и т.д. В число механизмов входят не только криптографические функции, которые позволяют шифровать и подписывать документы по различным алгоритмам, но и функции, формирующие конечные объекты ИОК в соответствии со стандартами (сертификаты, запросы, подписанные/зашифрованные документы, пакеты протоколов и т.д. и т.п.). Да, и как не вспомнить центральный объект ИОК/PKI — Удостоверяющий Центр (УЦ).
Читать дальше →
Всего голосов 8: ↑6 и ↓2+4
Комментарии12

Криптография с открытым ключом: ключи RSA

Уровень сложностиСредний
Время на прочтение23 мин
Количество просмотров11K

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

Но знаете ли вы, что именно вы делали? Углублялись ли вы в детали процесса?

Знаете ли вы, что содержится в файле ~/.ssh/id_rsa? Почему ssh создает два файла с разным форматом? Замечали ли вы, что один файл начинается со слов ssh-rsa, а другой — с -----BEGIN RSA PRIVATE KEY----- ? Вы замечали, что иногда в заголовке второго файла отсутствует часть RSA и просто написано BEGIN PRIVATE KEY?

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

Читать далее
Всего голосов 24: ↑21 и ↓3+18
Комментарии1

Разбираем x.509 сертификат

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

Привет, %username%!

Так уж вышло, что несмотря на относительно неплохое понимание инфраструктуры открытых ключей, содержимое *.crt файлов всегда оставалось для меня полнейшей загадкой.
Нет, не поймите неправильно. Я знаю, что x.509 сертификат содержит информацию о владельце, открытый ключ, сведения об удостоверяющем центре и электронную цифровую подпись. Но при установке очередного сертификата меня всегда мучило любопытство.
Чем отличается идентификатор ключа от отпечатка? Какие данные сертификата подписываются, а какие нет? И что за структура данных позволяет хранить всю эту информацию, сводя избыточность к минимуму.
Но вот наконец-то любопытство перебороло лень и в данном посте я постараюсь описать структуру x.509 сертификатов и ответить на эти и другие вопросы.
Читать дальше →
Всего голосов 79: ↑75 и ↓4+71
Комментарии31
1
23 ...