Как стать автором
Обновить
124
0
Султан @sultee

Человек из медиа

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

Анализ сишного Hello World

Время на прочтение7 мин
Количество просмотров68K
Hello World — одна из первых программ, которые мы пишем на любом языке программирования.

Для C hello world выглядит просто и коротко:

#include <stdio.h>

void main() {
  printf("Hello World!\n");
}

Поскольку программа такая короткая, должно быть элементарно объяснить, что происходит «под капотом».
Читать дальше →
Всего голосов 227: ↑226 и ↓1+225
Комментарии142

Нерассказанная история ИИ

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

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


Давайте с вами изучим эту, человеческую историю ИИ – то, как инноваторы, мыслители, работники, а иногда и спекулянты создавали алгоритмы, способные воспроизводить человеческую мысль и поведение (или делать вид, что их воспроизводят). Идея о сверхразумных компьютерах, не требующих человеческого участия, может быть захватывающей – но истинная история умных машин показывает, что наш ИИ настолько хорош, насколько хороши мы сами.

Когда Чарльз Бэббидж сыграл в шахматы с первым механическим турком


Прославленный инженер XIX века, возможно, вдохновлялся первым примером шумихи вокруг ИИ



Читать дальше →
Всего голосов 18: ↑15 и ↓3+12
Комментарии3

Дуглас Энгельбарт: «Augmenting Human Intellect: A Conceptual Framework» (шаг 2)

Время на прочтение12 мин
Количество просмотров5.7K
Всем привет.

Представляю вам коллективный (хабра-) перевод основного документа (282 000 знаков), дела всей жизни Дугласа Энгельбарта. (Подробнее: 50 лет спустя. The Mother of All Demos)

image

Я считаю, что:

  1. Первоисточники крайне важны, иначе появляются «трактователи», которые интерпретируют ради своей выгоды (если не тупости).
  2. Проект надо делать открыто, публично и коллективно, а не в втихомолку пилить продукт пару лет, чтоб «завоевывать рынки». И тем более что все «заморочки» закрытой организации наследуются в продукт.
  3. Проект должен быть бесплатным и даже радикальнее — приносить убытки множеству игроков отрасли (гудбай венчурные инвесторы).
  4. Проект должен создаваться вне капиталистической логики, копирайта, текущего права и морали.

Слово Дугласу Энгельбарту:

Augmenting Human Intellect: A Conceptual Framework

By Douglas C. Engelbart
October 1962


I. Введение


II. Conceptual Framework


А. Общие сведения


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

Все воздействие человека на мир в основном связано с тем, что он может передавать миру через свои ограниченные моторные каналы. Это, в свою очередь, основано на информации, получаемой из внешнего мира по ограниченным сенсорным каналам; об информации, побуждениях и потребностях, возникающих в нем; и на его обработку.
Всего голосов 23: ↑20 и ↓3+17
Комментарии8

Разбираем протокол пейджерных сообщений POCSAG, ч2

Время на прочтение4 мин
Количество просмотров6.5K
Привет, Habr!

В первой части был рассмотрен протокол обмена пейджерными сообщениями POCSAG. Были рассмотрены цифровые сообщения, перейдем теперь к более «полноценным» сообщениям в формате ASCII. Тем более, что декодировать их интереснее, т.к. на выходе будет читаемый текст.


Для тех кому интересно, как это работает, продолжение под катом.
Читать дальше →
Всего голосов 33: ↑33 и ↓0+33
Комментарии12

DIY тепловизор на Raspberry PI или «Кажется теперь я знаю, чем займусь этим летом»

Время на прочтение6 мин
Количество просмотров101K
image

Всем привет!

Пришла зима, а с ней и задача проверить теплоизолирующие свойства построек загородной резиденции дачи. А тут ещё оказалось, что на известном китайском сайте появились вполне доступные тепловизионные модули. Не собрать ли себе экзотическую и, возможно, даже полезную вещь — самодельный тепловизор? Почему бы и нет, вроде и Raspberry где-то валялась… Что из этого вышло — расскажу под катом.
Читать дальше →
Всего голосов 142: ↑142 и ↓0+142
Комментарии192

Data Science: книги для начального уровня

Время на прочтение3 мин
Количество просмотров71K
Data Science — наука о данных, возникшая на стыке нескольких обширных направлений: программирования, математики и машинного обучения. Этим обусловлен высокий порог вхождения в профессию и необходимость постоянно получать новые знания.

Ключевыми навыками для начинающих специалистов являются:

  • умение писать код (Python);
  • способность визуализировать свои результаты;
  • понимание того, что происходит «под капотом».

На эти три категории разделены книги, которые специалисты Plarium Krasnodar подобрали для читателей с начальными знаниями в Data Science.

Читать дальше →
Всего голосов 23: ↑20 и ↓3+17
Комментарии8

Пишем свой язык программирования, часть 3: Архитектура транслятора. Разбор языковых структур и математических выражений

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

Введение


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

Для начала, по устоявшимся традициям, я приведу ссылки на предыдущие статьи:

Часть 1: пишем языковую ВМ
Часть 2: промежуточное представление программ

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

Также мне стоит разместить сразу ссылку на статью о проекте, который был написан мной ранее и на основе которого идет весь этот разбор полётов: Клац сюды. С ним пожалуй стоит ознакомиться первым делом.

И немного о проекте:

Небольшой сайт проекта
GitHub репозиторий

Ну и также скажу сразу, что все написано на Object Pascal, а именно — на FPC.

Итак, начнем.
Читать дальше →
Всего голосов 30: ↑23 и ↓7+16
Комментарии22

Новый язык программирования Mash

Время на прочтение6 мин
Количество просмотров48K
На протяжении нескольких лет я пробовал свои силы в разработке своего языка программирования. Мне хотелось создать на мой взгляд максимально простой, полнофункциональный и удобный язык.

В этой статье я хочу осветить основные этапы своей работы и для начала описать созданный концепт языка и его первую реализацию над которой сейчас работаю.
Читать дальше →
Всего голосов 86: ↑70 и ↓16+54
Комментарии201

Пишем свой язык программирования, часть 1: пишем языковую ВМ

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

Введение


Доброго времени суток всем хабрачитателям!

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

Я буду описывать создание языка, который описал ранее тут.

Он заинтересовал многих и вызвал бурную дискуссию в комментариях. Следовательно — тема интересна многим.

Думаю, что сразу стоит выложить информацию о проекте:

Сайт (будет заполнен документацией чуть позже).
Репозиторий

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

Кодить я умею на C/C++ и на Object Pascal. Проект я писал на FPC, т.к. на мой взгляд этот язык гораздо проще и лучше подходит для написание подобного. Вторым определяющим фактором стало то, что FPC поддерживает огромное количество целевых платформ и пересобрать проект под нужную платформу можно с минимумом переделок. Если вы по непонятным мне причинам не любите Object Pascal, то не спешите закрывать пост и бежать кидаться камнями в комментарии. Этот язык весьма красив и нагляден, а кода я буду приводить не так уж и много. Только то, что нужно.

Итак, начну пожалуй я своё повествование.
Читать дальше →
Всего голосов 34: ↑27 и ↓7+20
Комментарии26

Книга “Электричество шаг за шагом” от Рудольфа Свореня

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


Сегодня день информатики, и кто-то возможно помнит первые уроки по информатике в школе, и свой первый учебник “Основы информатики и вычислительной техники” (1990 год):

Открыть

В числе авторов этого учебника был — Р.А. Сворень.

Про легендарного человека — Рудольфа Анатольевича Свореня мы делали серию публикаций (раз, два), и в том числе про его замечательную книгу “Электроника шаг за шагом”, про то как она изменила жизнь людей. Изначально была озвучена идея переиздания этой полюбившийся многим книги (на данный момент мы собрали почти 2000 заявок от людей, кто ждут переиздание).

Книги Рудольфа Анатольевича обладают удивительным качеством — изложение материала настолько доступно и понятно, от простого к сложному, что всё становится “по полочкам” и по окончании книги люди действительно начинают осознанно и самостоятельно разбираться в предмете.

Есть хорошие новости — в ближайшее время готовится к выходу из печати новая книга “Электричество шаг за шагом” — на КДПВ — картина из неё. Эта картина показывает то цельное восприятие мира, что было у Рудольфа Анатольевича — и “электричество” для него был важным фрагментом Картины Мира, про который он хотел так же рассказать.

Книга “Электричество шаг за шагом” ещё не поступала в продажу (хотя была готова в 2012 году), и у вас есть возможность купить книгу — сделать предзаказ.

Подробности под катом.
Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии16

Прерывания от внешних устройств в системе x86. Часть 2. Опции загрузки ядра Linux

Время на прочтение13 мин
Количество просмотров21K
В предыдущей части мы рассмотрели эволюцию доставки прерываний от устройств в x86 системах (PIC → APIC → MSI), общую теорию и все необходимые термины.

В этой практической части мы рассмотрим как откатиться к использованию устаревших методов доставки прерываний в Linux, а именно рассмотрим опции загрузки ядра:

  • pci=nomsi
  • noapic
  • nolapic

Также мы посмотрим на порядок, в котором ОС смотрит таблицы роутинга прерываний (ACPI/MPtable/$PIR) и какое влияние на него окажет добавление опций загрузки:

  • pci=noacpi
  • acpi=noirq
  • acpi=off

Возможно вы пробовали комбинации из всех этих опций, когда какое-либо устройство не работало из-за проблемы с прерываниями. Разберём, что именно они делают и как они меняют вывод /proc/interrupts.
Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии4

«Высокий уровень самодисциплины». Джеффри Рихтер о том, как кодить, писать книги и создавать свои компании

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

Сегодня в нашей виртуальной студии один из самых известных дотнетчиков — Джеффри Рихтер.

В данный момент он — Partner Software Architect в Microsoft, работающий по направлению Distributed Cloud Apps & Storage. Иначе говоря, человек, который знает об Azure Storage всё.

F.A.Q.

Слишком много текста. О чём это всё?
Чтобы вам было веселей читать, для этой статьи мы придумали более интересную вёрстку. Слева будут говорящие головы, а справа — текст. Если вам уныло листать до интересующей части, то в оглавлении есть анкерные ссылки. В ролях:


Евгений phillennium Трифонов (нетехнические вопросы)
  • Советы разработчикам по созданию компании
  • Комбинирование разных видов деятельности
  • Что читать, что изучать, как писать


Олег olegchir Чирухин (технические вопросы)
  • Зачем Рихтер изучает JS, Golang и Python
  • Стоит ли продолжать писать на C++
  • Эволюция и будущее разработки на платформе Windows, .NET и вообще
  • Захватит ли JavaScript мир, нужна ли типобезопасность
  • Немного о пользе облачных провайдеров
  • Что лучше иметь — личный самолет или личный вертолёт
  • Как всё успевать



Почему эта статья попала в хаб JavaScript?
Только для тех, кому интересно мнение архитектора Azure относительно JS и его позиция в холиваре о типобезопасности. Этот холивар перетекает у нас из интервью в интервью, и конца ему не видно.


Почему эта статья попала в хаб С++?
Изначально Рихтер писал книги про C++. Только для тех, кому интересно мнение архитектора Azure относительно будущего и применимости C++


Джефф стал известен еще в начале 90-х, когда написал книгу о том, как программировать Windows 3.1. Его книга «Programming Applications for Microsoft Windows» стала классикой, позже выпускалась как «Windows via C/C++» и выдержала несколько изданий.

С появлением .NET он написал «CLR via C#» — тоже получилась классика, тоже несколько изданий. В то время он был одним из основателей компании Wintellect и, формально не будучи частью Microsoft, оказался более свободен в оценках. Чем и заработал репутацию крупного независимого эксперта по Windows. Это человек-легенда уровня Чарльза Петцольда и Дона Бокса.



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

Песочница и шпаргалка по изучению Python

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

Изучать Python3 я начал с документации на официальном сайте. Мне понравились примеры кода, но, к сожалению, они были там не интерактивными. Хотелось попробовать выполнить код самостоятельно, с разными входными данными и посмотреть на выводимый результат. Так же мне лично легче запоминаются конструкции языка, если я их набрал несколько раз вручную. Python консоль для этого подходит отлично, но хотелось так же иметь своего рода шпаргалку, к которой можно было бы вернуться при написании программ в дальнейшем, если, например, возникнет вопрос, как в Python-е написать цикл for и т.п. И последней каплей стало желание автоматической проверки стиля написания кода в соответствии с существующими стандартами. Читать и вникать в них было лень, поэтому хотелось чтобы проверка кода была автоматической и подсказывала какие ошибки я делаю и как их исправить.


В итоге все свои эксперименты я вылил на GitHub.


Читать дальше →
Всего голосов 49: ↑48 и ↓1+47
Комментарии20

«Зачем мы все это делаем?» — создатель Prisma и бывший лид проектов VK о своем новом секретном проекте

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


Помните приложение Prisma? В 2016 казалось, что через него была пропущена каждая вторая фотка в мире. Историю взлета и спада его популярности обсуждали тоже везде (в том числе и на Хабре).

Но в июне этого года создатель «Призмы» Алексей Моисеенков (darkolorin) вместе с сооснователем покинул компанию, не комментируя причины ухода. Почти сразу они стали известны и так. Алексей запустил новый стартап и уже поднял на него $1 млн инвестиций.

Компания называется Capture Technologies inc., но что она выпустит, пока не говорят. Известно, что это некий «аналог социальной сети, в котором большую роль будет играть камера и технологии искусственного интеллекта».

Мы с fillpackart напросились на беседу и попытались разузнать, хотя бы что у этого проекта под капотом, но снова свалились в обсуждение «быть или не быть».
Всего голосов 62: ↑55 и ↓7+48
Комментарии31

Подводные грабли SmartTV разработки

Время на прочтение6 мин
Количество просмотров15K
image

Привет, Хабр!

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

Всем кому интересна данная тема или просто любопытно посмотреть на новый фреймворк, который может и в SmartTV, просим под кат.
Всего голосов 39: ↑38 и ↓1+37
Комментарии35

Атомная память: 8-битный алфавит и 192-битная мелодия из игры Mario

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


С точки зрения науки наш прекрасный мир, окружающий нас, это нескончаемый поток данных. Каждый твит, каждый комментарий под видео на YouTube, переписка с родными посредством мессенджеров, кино, игры, цифровые книги и т.д. и т.п. Все это формирует так называемое информационное поле Земли. Концентрация данных в нем с каждым годом растет. Так к 2025 году общий объем данных в мире составит 163 зеттабайта (по данным forbes). Для примера, у меня есть внешний накопитель объемом 1 Тб, что по современным меркам не так и много. 163 зеттабайта это эквивалентно 163 миллиардам моих HDD. Площадь такого скопища носителей составила бы примерно 1,47 Тм2 (1 Тм = 1012 м), не говоря уже про массу в 26 080 000 тонн.

Это все забавные цифры, но проблема хранения большого объема данных существует, и ее пытаются решить многие ученые в мире. Сегодняшние наши герои смогли усовершенствовать собственное изобретение, использующее технологию атомной памяти. Как они это реализовали и как скоро подобная технология станет общедоступной мы узнаем из их доклада. Поехали.
Всего голосов 14: ↑14 и ↓0+14
Комментарии1

«Ручной» манипулятор

Время на прочтение14 мин
Количество просмотров38K
Как-то раз, во время обучения на втором курсе университета, передо мной была поставлена задача: стряпать что-нибудь «этакое», дабы подтвердить высокое звание «будущего инженера-робототехника». На этой пафосной ноте я отправился в глубины сознания для поиска идей. После непродолжительного путешествия появилась мысль об устройстве, теорией создания которого хочу поделиться с общественностью.

Суть разработки такая. Рассмотрим обычный, скажем, 5-ти осевой манипулятор (кинематическая структурная схема изображена на рисунке ниже). Его возможности при перемещении в пространстве широки: он способен совершать движения в 5-ти координатах, причём одновременно, т.е. 3 координаты по трём осям XYZ и вращение вокруг двух из них. В таком случае рабочий элемент манипулятора способен занять любое положение в рабочем пространстве и вместе с этим сохранить требуемую ориентацию рабочего органа (не считая поворот рабочего элемента вокруг собственной оси).


Всего голосов 68: ↑67 и ↓1+66
Комментарии23

Инструменты Apple для машинного обучения

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


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


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

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

Mind map вместо тест-кейса, или Как визуализация позволяет тестировать приложение быстрее

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

Привет! Меня зовут Катя, и я работаю тестировщиком мобильных приложений более пяти лет. Последние три года я тружусь в iOS-команде Badoo, и еженедельно мы релизим от трёх до семи новых фич, от трёх до пяти технических тасков и от пяти до 13 багфиксов. Как вы понимаете, приложение меняется с такой скоростью, что поддерживать классическую тестовую документацию (test cases) неэффективно: почти всегда она будет устаревшей.

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

В этом случае визуализация позволяет сэкономить кучу времени, поэтому мы решили попробовать использовать mind maps (или «ментальные карты»), которые так же удобны в использовании, как чек-листы, но более наглядны за счёт визуального формата.

Сегодня мы подробненько разберём созданную мной mind map для тестирования iOS-приложения (далее именуемую «моя прелесть»), а также пройдёмся по ресурсам, которые можно использовать при построении mind map для мобильного приложения, чтобы покрыть максимальное количество важных сценариев.
Читать дальше →
Всего голосов 46: ↑45 и ↓1+44
Комментарии32

Как я собирал компьютер для старых игр

Время на прочтение6 мин
Количество просмотров40K
oldpc

Привет, Хабр. В этой статье я хочу рассказать о том, как я собирал (покупал) себе старый компьютер для души и для старых игр. Под старыми я подразумеваю игры второй половины девяностых и некоторые игры начала нулевых. Хотя никто не запрещает запускать и более старые игры, благо DOS на таком компьютере всегда под боком.

За основу был выбран… в общем было выбрано то, что получилось найти в моём городе, без пересылок через пол России и смс. Искать такой компьютер я начал не так давно. Стационарного компьютера у меня уже давно нет, а тут что-то ностальгия по юности и некоторые статьи на Хабре о ретро-ПК сподвигнули меня на поиски. Красивых историй о сборке аутентичных 486DX2 с CRT монитором и защитным экраном не  будет, все несколько прозаичней (но зато практичней). 

Читать дальше →
Всего голосов 66: ↑62 и ↓4+58
Комментарии273
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность