Здравствуйте, уважаемые читатели. В этой публикации речь пойдет о немного нестандартных применениях такого хорошо известного формализма как XPath. Все знают, что он очень удобен для извлечения информации из XML- или HTML- или еще каких-нибудь *ML-документов (как простых текстовых, так и каких-нибудь виртуальных, которые являются верхним слоем представления какой-либо сложной информации), то есть для того, чтобы задавать этим документам какие-либо вопросы. Однако известно, что чем лучше сформулирован вопрос, тем большую часть ответа он уже содержит. Поэтому напрашивается простая мысль – а нельзя ли использовать записанные на XPath выражения как утверждающие, то есть достраивающие документ таким образом, чтобы это XPath-выражение было истинным? Думаю можно, и это первое, о чем здесь пойдет речь. И второе – если уж мы научимся путем прямого применения XPath создавать новые элементы в документе, то нельзя ли превратить XPath в простой алгоритмический язык программирования? В самом деле, обращаться к данным умеет, создавать данные умеет. Несложно представить, как на нем описать последовательность операторов и оператор ветвления, остается подумать о циклах в нем и о функциях. Это интересно, ну хотя бы, теоретически. И об этом тоже пойдет речь.
Читать полностью »
Рубрика «Программирование» - 221
Конструирующий XPath? Алгоритмический XPath? Ничего, кроме XPath
2019-08-24 в 19:49, admin, рубрики: XML, xpath, порождение программ, Программирование, язык программирования15 книг по машинному обучению для начинающих
2019-08-24 в 13:32, admin, рубрики: big data, data mining, machine learning, python, искусственный интеллект, ПрограммированиеСделал подборку книг по Machine Learning для тех, кто хочет разобраться, что да как.
Добавляйте в закладки и делитесь с коллегами!
Книги по машинному обучению на русском
1. «Математические основы машинного обучения и прогнозирования» Владимир Вьюгин.
О чем
Сначала изучите азы статистической теории машинного обучения, игр с предсказаниями и прогнозирования с применением экспертной стратегии. Их основы прекрасно объясняет автор книги, доктор физико-математических наук Владимир Вьюгин. Пособие рассчитано на студентов и аспирантов и в доступной форме излагает математические основы, необходимые для дальнейшей работы с машинным обучением.
2. «Верховный алгоритм» Педро Домингос.
О чем
Книга, благодаря которой даже ничего не смыслящие в математике и статистике люди поймут, что такое алгоритмы машинного обучения и каково их применение в жизни. Профессор Педро Домингос рассказывает о пяти основных школах Machine Learning и о том, как они используют идеи из различных областей научного знания — нейробиологии, физики, статистики, биологии, — чтобы помогать людям решать сложные задачи и упрощать рутину с помощью алгоритмов.
Читать полностью »
Приятное с полезным или разработка под ASIO на C++
2019-08-23 в 17:22, admin, рубрики: ASIO, asio4all, c++, звук, Программирование, электрогитара
Будучи потенциальным программистом и любителем электрогитар, я не мог остаться в стороне от разработки музыкального ПО. Все кто когда-либо пытался подключить электрогитару к компьютеру на ОС Windows, используя какой-либо гитарный процессор, знают, что зачастую для этих целей требуется наличие интерфейса ASIO (Возможно и другие, но ASIO наиболее популярен). Это связано с тем, что для обработки звукового ввода и вывода тратится значительное время, и, как следствие, при игре на инструменте слышно неприятную задержку, которая весьма сильно затрудняет игру. ASIO позволяет пропустить этап микширования звука при его выводе и, соответственно, значительно уменьшить задержку. Подробнее об этом здесь.
Читать полностью »
19 вопросов, которые стоит задать веб-разработчику на собеседовании
2019-08-23 в 14:48, admin, рубрики: Лайфхаки для гиков, Программирование, Разработка веб-сайтов, собеседование вопросы, собеседованияНаём новых сотрудников может оказаться настоящим кошмаром. Иногда, чтобы найти подходящего кандидата, приходится пройти долгий и трудный путь. Если вы ищете веб-разработчика, техническая сторона этой профессии значительно усложняет процесс поиска.
Подготовьтесь заранее
Есть такая поговорка: кто не планирует свою победу, тот планирует чужую. И она будет к месту, если вы ищете разработчика, особенно на удалёнку.
Вот главные советы.
Определите требования
Опытные веб-разработчики всегда очень заняты. Нужно определиться с вашими ожиданиями и объёмом работы кандидата. Чётко сформулируйте должностную инструкцию и особенности работы в компании. Соискатель должен ясно понимать рабочие обязанности и предлагаемые условия труда.
Читать полностью »
Подготовка приложения к Android Q. Часть 2
2019-08-23 в 14:09, admin, рубрики: android, Android App Development, android q, AndroidDev, Блог компании OTUS. Онлайн-образование, Программирование, Разработка под androidПеревод статьи подготовлен специально для студентов курса «Android-разработчик. Базовый курс». Также напоминаем о том, что мы продолжаем набор на расширенный курс «Специализация Android-разработчик»
О конфиденциальности и безопасности можно прочитать в первой части статьи.
2) User Experiences
а) Навигационные жесты
В Android Q Google попытался объединить все жесты навигации с помощью новой навигационной системы жестов, которая заменила плавающую навигационную панель (назад, домой и последние приложения).
- На что влияет: если ваше приложение содержит жесты, то они могут конфликтовать с системными жестами. Это повлияет на все приложения, работающие на Android Q (независимо от целевого SDK), поскольку первыми будут обрабатываться системные жесты.
- Рекомендуемый подход: Поскольку плавающая панель навигации фактически исчезла, рекомендуется в полной мере использовать доступное новое экранное пространство и обеспечить пользователям эффект погружения.
Инструменты для разработчиков приложений, запускаемых в Kubernetes
2019-08-23 в 6:47, admin, рубрики: devops, DevSpace, garden, kubernetes, Skaffold, telepresence, Блог компании Флант, микросервисы, Программирование
Современный подход к эксплуатации решает множество насущных проблем бизнеса. Контейнеры и оркестраторы позволяют легко масштабировать проекты любой сложности, упрощают релизы новых версий, делают их более надежными, но вместе с тем создают и дополнительные проблемы для разработчиков. Программиста, в первую очередь, заботит его код: архитектура, качество, производительность, элегантность, — а не то, как он поедет в Kubernetes и как его тестировать и отлаживать после внесения даже минимальных правок. Посему весьма закономерно и то, что активно развиваются инструменты для Kubernetes, помогающие решать проблемы даже самых «архаичных» разработчиков и позволяя им сосредоточиться на главном.
В этом обзоре представлена краткая информация о некоторых инструментах, которые упрощают жизнь программисту, чей код крутится в pod’ax Kubernetes-кластера.Читать полностью »
Пишем API на Python (с Flask и RapidAPI)
2019-08-22 в 15:19, admin, рубрики: api, python, Блог компании Skillbox, начинаем, Программирование, Учебный процесс в IT
Если вы читаете эту статью, вероятно, вы уже знакомы с возможностями, которые открываются при использовании API (Application Programming Interface).
Добавив в свое приложение один из многих открытых API, вы можете расширить функциональность этого приложения либо же дополнить его нужными данными. Но что, если вы разработали уникальную функцию, которой хотите поделиться с коммьюнити?
Читать полностью »
С Kingston в постели: необычные девайсы с чипами Kingston
2019-08-22 в 13:46, admin, рубрики: CES 2019, Kingston, Блог компании Kingston Technology, будущее здесь, гаджеты, микроконтроллеры, Программирование, программирование микроконтроллеров, умные гаджеты, чипы памятиСлава программируемым микроконтроллерам! Их массовость и дешевизна породили целый вал «умной» электроники — и крупные бренды, и стартапы бросились цифровизировать всё, что раньше было аналоговым или вообще не было электроникой. Иной раз посмотришь на робота-пылесоса или какой-нибудь фитнес-браслет, и задаешься мыслью, а что же за электроника там спрятана? Может, какие-нибудь редкие специализированные чипы производства никому не известной китайской компании?
Вы удивитесь, но, даже вскрыв чайник с Wi-Fi, вы увидите знакомые бренды на чипах. И Kingston в том числе — мы поставляем память для вообще любых устройств, где используются программируемые микроконтроллеры. Идет ли речь о смартфоне, терминале в магазине, роботе-пылесосе, да хоть ортопедической кровати, Kingston можно встретить везде. Если вкратце, то смотрите ролик. Если, как и полагается на Хабре, подробно — читайте пост!
10 самых влиятельных языков программирования последних 50 лет и их создатели
2019-08-22 в 10:30, admin, рубрики: Биографии гиков, Блог компании RUVDS.com, история, Программирование, разработка, языки программированияВ IT-вселенной существует множество языков программирования. С каждым годом их становится всё больше и больше. Например, сравнительно недавно появились языки Scala, Kotlin, Go и Closure. Но история говорит нам о том, что выживут лишь немногие из них.
Языки, о которых пойдёт здесь речь, внесли огромный вклад в мир разработки программного обеспечения. Именно поэтому они и попали в десятку самых влиятельных языков последних пятидесяти лет.
Языки — это важнейшая составляющая индустрии программирования. Их часто обсуждают, критикуют, их, с течением времени, улучшают. Они у всех на слуху, но их историю, хотя бы то, как зовут их создателей, знают далеко не все. Такое менее характерно для популярных языков. Например, все знают о том, что Джеймс Гослинг — это отец Java. Но далеко не каждый программист знает о том, кто создал Perl, Pascal, Lisp или Erlang.
Автор статьи, перевод которой мы сегодня публикуем, говорит, что к её написанию его подтолкнула вышеописанная ситуация. Здесь речь пойдёт о самых популярных и успешных языках программирования и об их создателях.
Читать полностью »
Dependency Injection, JavaScript и ES6-модули
2019-08-21 в 19:14, admin, рубрики: dependency injection, ES6, import, javascript, modules, Программирование, Разработка веб-сайтовЕщё одна имплементация Dependency Injection в JavaScript — с ES6-модулями, с возможностью использовать один и тот же код в браузере, и в nodejs и не использовать транспиляторы.
Под катом — мой взгляд на DI, его место в современных web-приложениях, принципиальная реализация DI-контейнера, способного создавать объекты и на фронте, и на бэке, а также объяснение, при чём тут Майкл Джексон.