Все потоки
Поиск
Написать публикацию
Обновить
1028.12

Программирование *

Искусство создания компьютерных программ

Сначала показывать
Порог рейтинга
Уровень сложности

Баг месяца: эстафета от PC-Lint к PVS-Studio

Время на прочтение3 мин
Количество просмотров5.4K
Недавно мы опубликовали 2 статьи про ТОП 10 ошибок в открытых проектах C++ и C# за предыдущий 2016 год. Статьи понравились читателям и это натолкнуло на мысль: почему бы не сделать такой ТОП для каждого месяца? Ведь на нашем сайте огромная база ошибок, которая хорошо структурирована и из которой можно выбрать самые интересные баги, найденные в определенный промежуток времени. В этой заметке будет рассказано о новой рубрике «Баг месяца» и о том, из чего мы исходили, когда готовили список ошибок для нее.

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

Запись при чтении в postgresql: скандалы, интриги, расследования

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

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


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


Под катом небольшой рассказ о неочевидном поведении postgresql.

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

Чем отличается императивное программирование от декларативного

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

Предыстория


Не так давно я была в активном поиске работы и просматривала кучу сайтов с вакансиями/проектами. На некоторых из них «проходные» вопросы можно посмотреть еще до подачи отклика.

Большинство было вполне обычными, типа «сколько лет вы пользуетесь фреймворком Х?», но один мне показался интересным (я даже туда откликнулась, но #меняневзяли).

Это собственно и был вопрос из заголовка. И я решила разобраться. А лучший способ понять — это, как известно, объяснить. Так что добро пожаловать под кат.
Читать дальше →

Первый опыт разработки игры для Apple Watch

Время на прочтение4 мин
Количество просмотров9.2K
Всем привет! В своей статье я хочу рассказать о опыте разработки игры для Apple Watch. Игра называется Space Beaver(Бобер и Космос). Она также доступна и на iphone. Но в этой статье будет рассказ именно о версии для часов. Исходный код здесь.


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

Как развивать продукт, если в команде один разработчик и два заказчика?

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



Команда мечты


Волею судеб мы с коллегой взяли ответственность за развитие сайта подключения b2b клиентов к QIWI (ishop.qiwi.com) и страницы оплаты счетов (bill.qiwi.com). В момент нашего великолепного пришествия в проект, команда мечты состояла из двух заказчиков (мы), одного JavaScript разработчика на удаленке и одного специалиста QA. Накануне, кстати говоря, из команды ушел серверный Java разработчик. Также в рабочей группе имелся новенький проектный менеджер, но решив, что 3 управленца на 1 разработчика — перебор — разошлись.
Читать дальше →

Как оценить качество системы A/B-тестирования

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


Вот уже более полугода в компании используется единая система для проведения A/B-экспериментов. Одной из самых важных частей этой системы является процедура проверки качества, которая помогает нам понять, насколько мы можем доверять результатам A/B-тестов. В этой статье мы подробно опишем принцип работы процедуры проверки качества в расчете на тех читателей, которые захотят проверить свою систему A/B-тестирования. Поэтому в статье много технических деталей.
Читать дальше →

Запуск проекта Otus.ru

Время на прочтение3 мин
Количество просмотров15K
Друзья!

Сервис Otus.ru — это инструмент для трудоустройства. Мы используем образовательные методики для отбора лучших специалистов для задач бизнеса. Мы собрали и типизировали вакансии крупных игроков ИТ-бизнеса, создали на базе полученных требований курсы. Мы заключили соглашения с этими компаниями о том, что лучшие наши студенты пройдут собеседование на релевантные позиции. Мы соединяем, как мы надеемся, лучших работодателей с самыми замотивированными специалистами.

Сейчас мы делаем пилот, запускаем первый курс по Java. На подходе еще четыре курса, в планах — около 40. Но на этом этапе нам важно протестировать нашу образовательную технологию, сделать так, чтобы наш продукт был качественным.
Читать дальше →

Считаем до трёх: два

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

Троичные вычисления


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

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

Итак, вот список опубликованных статей цикла (будет обновляться):


Напоминаю, что единственным строительным блоком вычислителя будет троичный мультиплексор. Вот фотография оригинального тримукса дизайна Александра Шабаршина и моего исполнения на поверхностном монтаже. Одна такая плата несёт на себе два троичных (де-)мультиплексора:


Как я стал лучше программировать

Время на прочтение6 мин
Количество просмотров48K
Автор статьи — Джеймс Лонг, один из создателей Firefox Developer Tools

Несколько человек на React Conf спросили у меня совета, как программировать лучше. По какой-то причине люди видят во мне продвинутого программиста, к советам которого стоит прислушаться. Я подумал, стоит записать «ментальную модель» того, как я подходил к программированию на протяжении всех лет.

Некоторая информация: мне 32 года и 10 лет твёрдого опыта. Наверное, только в последние пару лет я приобрёл уверенность в том, что делаю. Но даже теперь я продолжаю сомневаться в себе. Дело в том, что это чувство никогда не уходит, так что старайтесь не обращать на него внимания, продолжайте хаки и накапливайте опыт.

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

Про биологию, мега-стройки и магических животных

Время на прочтение6 мин
Количество просмотров8K
История в многих частях с продолжением и еще никому не известным (но обязательно счастливым) концом.


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

История 3-го места на ML Boot Camp III

Время на прочтение5 мин
Количество просмотров13K
Недавно завершился контест по машинному обучению ML Boot Camp III от Mail.Ru.

Будучи новичком в machine learning мне удалось занять 3-е место. И в этой статье я постараюсь поделиться своим опытом участия.
Читать дальше →

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

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


Впечатляющие результаты ряда исследований, проведённые в последние годы, привлекли внимание мирового сообщества к теме машинного обучения. Со времён «зимы искусственного интеллекта» мы ещё никогда не были так воодушевлены возможностями этой технологии. Но несмотря на всплеск интереса, ряд ученых считают, что многие из нас уделяют слишком много внимания не тем исследованиям. За всей этой шумихой практически незаметной осталась небольшая группа исследователей, которые втихую закладывают фундамент для дальнейшего использования машинного обучения, которое позволит решить многие проблемы человечества.
Читать дальше →

Весеннее обострение: проектная школа в Иннополисе, методический интенсив и митап по инфобезу

Время на прочтение5 мин
Количество просмотров4K
Этой весной наша проектная школа в очередной раз состоится в новом месте. На это раз, мы едем в Иннополис – изучать новый город и университет, о котором пока только наслышаны. До школы мы планируем умудриться провести методический интенсив для преподавателей на основе проекта по интернету вещей и митап по информационной безопасности.

image
#ужевыехали
Читать дальше →

Ближайшие события

Разработка R&D-проектов продолжается: запуск Wolfram Language 11.1

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

Перевод поста Стивена Вольфрама (Stephen Wolfram) "The R&D Pipeline Continues: Launching Version 11.1".
Выражаю огромную благодарность Полине Сологуб за помощь в переводе и подготовке публикации


Содержание


Небольшой релиз — тоже неплохо
Визуальные изменения
Множество новых функций
Нейросети
Машинное обучение
Аудио
Изображения и визуализация
Больше данных
Интегрированные внешние сервисы
Больше математики, больше алгоритмов
Детализация дат
Настройка языка
Язык хранения
Программирование на низком уровне
Укрепление инфраструктуры
И еще кое-что


Небольшой релиз — тоже неплохо


Я рад сообщить о том, что сегодня вышла версия 11.1 языка Wolfram Language (и системы Wolfram Mathematica). На данный момент, версия 11.1 уже работает в Wolfram Cloud, а Desktop-версии уже доступны для загрузки для Mac, Windows и Linux.

Что нового в версии 11.1? На самом деле много чего. Если кратко:



В ней очень много нового. Можно подумать, что релиз .1 спустя почти 29 лет после выхода версии 1.0 вряд ли удивит. Однако в случае с нашей компанией дела обстоят иначе. С тех пор, как мы построили весь стек доступных сейчас технологий, мы лишь ускоряемся в своем развитии. И теперь даже в версии 11.1 представлено множество новых функциональных возможностей.
Читать дальше →

Создание кроссплатформенных приложений с помощью React Native

Время на прочтение8 мин
Количество просмотров43K
Предлагаем вашему вниманию перевод статьи, которая будет интересна начинающим разработчикам.

React Native — это JS-фреймворк для создания нативно отображаемых iOS- и Android-приложений. В его основе лежит разработанная в Facebook JS-библиотека React, предназначенная для создания пользовательских интерфейсов. Но вместо браузеров она ориентирована на мобильные платформы. Иными словами, если вы веб-разработчик, то можете использовать React Native для написания чистых, быстрых мобильных приложений, не покидая комфорта привычного фреймворка и единой кодовой базы JavaScript.

Конечно, мы и раньше слышали обещания об универсальной разработке приложений, с помощью фреймворков наподобие Cordova или Titanium. А что насчёт React Native? В этой статье мы рассмотрим данный фреймворк и особенности его работы и поговорим о том, насколько удобно использовать React Native для написания iOS- и Android-приложений.
Читать дальше →

Badoo time-series storage: итак, она звалась Кассандрой

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

enter image description here


Привет, Хабр! Меня зовут Евгений Гугучкин, я – разработчик Badoo в команде «Платформа».


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


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

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

Шишки, набитые за 15 лет использования акторов в C++. Часть I

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

Данная статья является первой частью текстовой версии одноименного доклада с февральской конференции C++ CoreHard Winter 2017. Так уж получилось, что вот уже 15 лет я отвечаю за разработку фреймворка SObjectizer. Это один из тех немногих все еще живых и все еще развивающихся OpenSource фреймворков для C++, которые позволяют использовать Модель Акторов. Соответственно, за это время неоднократно доводилось попробовать Модель Акторов в деле, в результате чего накопился некоторый опыт. В основном это был положительный опыт, но есть и некоторые неочевидные моменты, про которые было бы хорошо узнать заранее. О том, на какие грабли довелось наступить, какие шишки были набиты, как можно упростить себе жизнь и как это сказалось на развитии SObjectizer-а и пойдет речь далее.


Подозреваю, что многое из того, о чем я буду говорить, хорошо известно в Erlang-сообществе. Но Erlang-сообщество слабо пересекается с C++ сообществом. Кроме того, есть разница между тем, что доступно Erlang-разработчику и тем, что доступно C++ разработчику. Поэтому надеюсь, что данная статья окажется интересной и полезной C++никам.

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

Лучшие доклады HolyJS 2016 Moscow: Доступ открыт

Время на прочтение5 мин
Количество просмотров12K
Прошло три месяца после JavaScript-конференции HolyJS 2016 Moscow, и это значит, что сейчас самое время выложить видеозаписи докладов и составить рейтинг лучших. Напомню, что рейтинг составляется не «экспертным жюри», а участниками в форме обратной связи – более 400 человек ответили на наши вопросы и поставили оценки докладам, которые они слушали.

В этот раз топ подобрался интересный, разнообразный и почти полностью англоязычный. Вы найдете видео о (dev)tools и ServiceWorker'ах, о минимизации кода и роли UX в обойме навыков frontend-разработчика и о многом другом, включая WebVR.



Разнообразие зоопарка инструментов в мире JS не обошло стороной и HolyJS — почти каждый доклад в той или иной степени посвящен какому-либо фреймворку или инструменту, — но обзор для каждого из них дан глубокий и исчерпывающий, не заскучаете.

Расширения Intel SGX, учебное руководство. Часть 7, доработка анклава

Время на прочтение6 мин
Количество просмотров1.8K
В седьмой части серии учебных материалов, посвященных расширениям Intel Software Guard Extensions (Intel SGX), мы вернемся к работе с анклавом и немного доработаем его, чтобы он стал проще и эффективнее. Мы рассмотрим, как прокси-функции передают данные между незащищенной областью памяти и анклавом, а также поговорим об одной из расширенных возможностей синтаксиса языка Enclave Definition Language (EDL).



Вместе с этой частью серии предоставляется исходный код. В этой части мы перенесли приложение на Intel SGX SDK версии 1.7, а также в качестве среды разработки используем Microsoft Visual Studio* Professional 2015.
Читать дальше →

Ивент для Unity-разработчиков в Харькове

Время на прочтение1 мин
Количество просмотров2.9K
Открылась регистрация на шестую встречу uDev Tech Events! Тема ивента – «Разработка MMO RTS на Unity».

13 апреля Client Development Team Lead в Plarium Артем Дурнев расскажет об особенностях создания мобильных игр на примере успешных проектов Plarium.

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

Вклад авторов