Архив за 03 апреля 2017 - 9

В Сети опубликовали новое изображение смартфона Moto X (2017), характеристики которого сообщил известный инсайдер Роланд Куандт (Roland Quandt).

Устройство имеет модельный номер XT180x и проходит под кодовым названием Sanders. В его оснащение входит однокристальная система Snapdragon 625. Объем оперативной памяти составляет 3 или 4 ГБ. Емкость флэш-памяти равна 32 или 64 ГБ.

Опубликованы новое изображение и характеристики смартфона Moto X (2017)

Читать полностью »

Continuous delivery с Travis CI и Ansible - 1
Настройка непрерывной доставки (Continuous delivery CD) для вашего проекта c github.com

Hеобходимо:

  • Репозиторий на github.com
  • Сервер для Ansible (для примера ip: 1.1.1.1)
  • Сервер для развертывания вашего проекта (для примера ip: 2.2.2.2)
  • Локальная машина с настроенным проектом
  • Базовые знания работы в командной строке, Travis CI и Ansible

Читать полностью »

image

Краткий обзор Matreshka.js. В посте используется ECMAScript 2017, который можно переписать на ECMAScript 5.

Основные функции

Функция bindNode связывает свойство и элемент.

const object = { name: 'Brendan' };
const node = document.querySelector('.name');
Matreshka.bindNode(object, 'name', node);
object.name = 'Doug';

Если свойство меняется, меняется и элемент, если элемент меняется (например, пользователь вводит текст), меняется и свойство. Из коробки Matreshka.js умеет обрабатывать любые элементы форм. Можно объявить байндинг для произвольных элементов см. документацию.

Функция calc связывает одно свойство с другими.

Matreshka.calc(object, 'fullName', ['firstName', 'lastName'], (firstName, lastName) => {
    return `${firstName} ${lastName}`
});
object.firstName = 'Brendan';
object.lastName = 'Eich';
// ...
console.log(object.fullName); // "Brendan Eich"

Когда меняется свойство-источник (firstName или lastName), меняется и свойство-цель (fullName).

Вместе с функцией bindNode можно объявлять длинные цепочки зависимостей: свойство a зависит от состояния элемента e1, свойство b зависит от свойства a, свойство c зависит от элементов e2 и e3 и от свойства b, изменение которого, как следствие, меняет e1, e2 и e3...

Такие зависимости можно представить как таблицу в табличном процессоре (например, Excell): в каждый момент времени вы думаете об одной формуле, а не о многочисленных связях все ячеек. Как следствие, получаете меньше багов, так как нужно думать об атомарных сущностях, а не обо всей "таблице" (приложении). Больше информации в документации.

Читать полностью »

В начале...

… не было ни композиции, ни наследования, только код.

И был код неповоротливым, повторяющимся, нераздельным, несчастным, избыточным и измученным.

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

Мрачные были времена.

Но вот лучик ООП воссиял над миром… Правда, несколько десятилетий1 никто этого не замечал. Покуда не появился графический интерфейс2, которому, как выяснилось, очень-очень не хватало ООП. Когда нажимаешь на кнопку в окне, что может быть проще, чем отправить кнопке (или ее представителю) сообщение "Нажатие"3 и получить результат?

И вот тут ООП взлетел. Было написано множество4 книг, расплодились бесчисленные5 статьи. Так что сегодня-то каждый может в объектно-ориентированное программирование, так?

Читать полностью »

Компания Gigabyte присоединилась к числу тех, кто выпустил обновлённые видеокарты Nvidia с повышенными частотами памяти. В данном случае речь о моделях Aorus GeForce GTX 1060 6G 9Gbps, Aorus GeForce GTX 1080 8G 11Gbps и Aorus GeForce GTX 1080 xtreme edition 8G 11Gbps.

Gigabyte выпустила три новые видеокарты

Читать полностью »

Что gdb можно как-то улучшать на питоне, знает каждый, кто хоть раз заглядывал в документацию. А кто хоть раз просматривал ее по диагонали, знает про такую штуку, как «Pretty Printers» — которые вроде позволяют gdb красиво печатать разные сложные структуры. Я документацию по диагонали просматривал, хотя особо и не вникал. Но однажды, набирая в очередной раз что-то вроде (все примеры из исходников MariaDB, которые я дебажу по много раз каждый божий день, иногда исключая выходные):

(gdb) p/t table->read_set->bitmap[0] @ (table->read_set->n_bits+7)/8

Я подумал «а фигли?». И все заверте…
Читать полностью »

Компания Asus пополнит ассортимент видеокарт GeForce GTX 1080 Ti моделью семейства ROG Poseidon. Как и ранее, это означает наличие гибридной системы охлаждения. В данном случае речь о воздушной СО, подготовленной также к подключению в контур ЖСО.

Адаптер Asus ROG GeForce GTX 1080 Ti Poseidon выделяется оригинальной подсветкой

Для подключения к помпе используются фитинги диаметром 1/4 дюйма. Конструкция охладителя видна на изображении ниже.

Читать полностью »

Несмотря на все достижения в области коммуникации, до сих пор личная встреча и личное присутствие позволяют лучше установить контакт и сделать больше, чем на расстоянии. Кроме того, непосредственное присутствие позволяет увидеть больше, чем напишут другие люди в коротких заметках о событии. К чему это я? В конце сентября в Аделаиде (Австралия) пройдет шестьдесят восьмой международный астронавтический конгресс (IAC). От России на нем будет официальная делегация, которая для нас, обычных людей, репортаж точно вести не станет. Но сейчас собираются средства на то, чтобы отправить в Аделаиду еще четырех девушек из России. Я поговорил с Антоном Громовым (редактор паблика SpaceX ВКонтакте и ведущий трансляций запусков SpaceX), который был на прошлом конгрессе в Мексике, девушками и главным организатором сбора средств, инженером, журналистом и популяризатором космонавтики Александром Хохловым.

Женский космический десант в Австралию? - 1
Читать полностью »

Обработка ошибок в C - 1

Введение

Ошибки, увы, неизбежны, поэтому их обработка занимает очень важное место в программировании. И если алгоритмические ошибки можно выявить и исправить во время написания и тестирования программы, то ошибок времени выполнения избежать нельзя в принципе. Сегодня мы рассмотрим функции стандартной библиотеки (C Standard Library) и POSIX, используемые в обработке ошибок.
Читать полностью »

Гайд о том, как с помощью Charles отслеживать пакеты и эмулировать медленную скорость Интернет-соединения на реальном Android -устройстве.

Скачать Charles можно на официальном сайте: www.charlesproxy.com

Продукт условно бесплатный (trial на 30 дней), но нам этого будет вполне достаточно.

Для проведения тестов Вам понадобится:
1) LAN-кабель с вселенным в него интернетом.
2) Ноутбук с возможностью подключения в него того самого LAN-кабеля и wi-fi передатчиком.
3) Реальное Android-устройство с установленным на него мобильным приложением, которое нужно тестировать.

Итак, отключаем ноутбук от всех возможных Wi-fi сетей и подсоединяем к нему LAN-кабель со священным Интернетом. Далее нам необходимо раздать wi-fi с помощью самого ноутбука.
Для этого нужно вызвать командную строку (обязательно — запуск от имени Администратора) и ввести следующие две команды:

netsh wlan set hostednetwork mode=allow ssid=WIFI key=12345678 keyUsage=persistent

netsh wlan start hostednetwork

(или просто скопировать данный текст в Блокнот, сохранить как *.bat-файл и каждый раз запускать его от имени Администратора).

Wi-fi точка доступа создана. подключаемся к ней своим Android-устройством, имя сети (как Вы догадались, наверное) «WIFI», а пароль – 12345678.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js