Новости информационных технологий - 26648

в 0:00, , рубрики: Песочница

Вступление. Из чего выбирать

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

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

Что же рассматривать при наличие 100-1000 пользователей и денег у компании? Даже конкретизируем: дистрибуция 200 одновременно работающих пользователей. Давайте смотреть.
Читать полностью »

Введение

Оговорюсь сразу, на многих ресурсах есть множество инструкций по настройке failover, от простейших настроек до сложных скриптов. Моя же статья подойдёт не всем, тут есть два необходимых условия:

  1. Интернет от провайдера приходит по двум PPPoE туннелям
  2. Провайдер должен отдавать DHCP на основном приходящем интерфейсе

Вводные данные

Инициализировать PPPoE соединения у нас будет роутер MikroTik hAP AC Lite. Перед роутером у нас стоят — GePON ONT Eltex NTE RG-1402G (основной канал) и Ubiquity Litebeam M5-23 (резервный канал, радио). Все устройства подключения к сети провайдера настроены в режиме моста (bridge).
Читать полностью »

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

Недавно, при написании одного из проектов, столкнулся с проблемой отображения границ в таблицах. Никогда не думал, что могут возникнуть сложности в такой тривиальной задаче.
В чем суть? По дефолту вокруг каждой ячейки отображается своя рамка (рисунок 1). Мне необходимо было, чтобы отображалась одна линия между двумя ячейками (рисунок 2). Для этого я таблице задал border-collapse: collapse и толщину границы 1px.

image

Самое интересное начинается, если стиль границы поменять с solid на dashed (рисунок 3).Читать полностью »

Кто не слышал про ICO? В двух словах, это сбор инвестиций с помощью криптовалют, так называемый “краудсейл”. Таких кампаний становится всё больше: в прошлом году их количество удвоилось, а в этом уже было проведено столько же, сколько в 2017. Проекты набирают миллионы долларов, но и теряют немало! До сих пор на слуху прошлогодние потери проекта CoinDash в результате взлома: около 10.000.000 $. При это часто самих основателей проектов подозревают в нелегальном выводе денег таким образом.

Согласно исследованию Ernst & Young, более 10% всех инвестиций в ICO просто теряются: в результате хакерских атак, в результате фишинговой и скамминговой активности. Как так выходит? Общая специфика проведения краудсейла такова: langing page с информацией, публичные персоны-организаторы, личный кабинет инвестора, заранее известные сроки проведения. Это играет на руку злоумышленникам, они вырабатывают сложные схемы и атакуют ICO. Разберем всё по порядку.

Как провести ICO и не потерять доверие - 1
Читать полностью »

Для начала немного несуществующих деревень и сёл

Сальтолово
Ничичи
Каверная Голяна
Придориусловка
Старотипенки
Кюканово
Кутюшевка
Верхний Стед
Сабаревка
Зеленокировка
Хадонские Выселки
Старый Куля
Октяга
Ржиново
Черемошно
Голодионово
Александрово-Полейково
Подлопаново
Малое Сусовое
Горы-Чусалы
Чубравяково


Зачем и почему

Всем привет, меня зовут Илья, я занимаюсь компьютационной биологией и биохимией, в свободное время я заставляю нейросети страдать ерундой.

Основываясь на аналогичных проектах (названия британских деревень, названия мест в Орегоне, названия различных цветов и их RGB), я решил научить нейросеть создавать названия несуществующих населенных пунктов

В качестве нейросети я решил воспользоваться torch-rnn, которую достаточно легко установить и настроить. Список городов и сел я нашел тут (можно скачать все в формате csv). С csv пришлось немного повозиться, чтобы привести ее к utf-8, после чего я запихнул ее в нейросеть и оставил на пару часов. Когда тренировка модели закончилась я взял небольшой сампл и получил следующий результат:

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

Про куки

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

$.cookie('cookie_name', 'cookie_value'); //установка
$.cookie('cookie_name'); //чтение
$.cookie('cookie_name', null); //удаление
$.cookie('cookie_name', 'cookie_value', {
    expires: 5,
    path: '/admin',
}); //опции

или

cookie.set('cookie_name', optios);
cookie.get('cookie_name');

В исходниках на получение куки всегда есть что-то из разряда

var cookies = document.cookie.split('; ');
for (var i = 0; i < cookies.length; i++) {
// и разбор самой куки
}

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

// прочитать
if (cookie.id === '1') {
    //удалить
    delete cookie.id;
}

//установить новое значение
cookie.key = '12341234';

//поменяем опции
cookie.options = {
    expires: new Date(Date.now() + 30*24*60*60*1000).toUTCString(),
    path: '/'
};

//обновить значение
cookie.key = '43214321';

Proxy

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

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

В данной статье я покажу, как реализуется ШИМ на микроконтроллерах семейства AVR.

ШИМ (широтно-импульсная модуляция) — процесс управления мощностью, которая подводится к нагрузке, при помощи изменения скважности импульсов, при фиксированной частоте.

На микроконтроллерах семейства AVR ШИМ реализуется весьма просто. В этой статье описывается пример реализации на микроконтроллере ATmega8.
Читать полностью »

Вступление

Уважаемые Хабрахабровцы, хочу поделиться с Вами своей разработкой для OS Android.
Данная статья ориентирована, во-первых, на новичков в андроид-разработке, во-вторых, на людей, которым интересна идея о безопасности общения по сети, в-третьих, просто на тех кому интересно.

Суть

Моя цель написать мессенджер, который позволил бы, в коей мере, уйти от всемирной слежки. Уйти? — спросите Вы. Да именно так я представляю себе, мое творение. Потому как общение клиента с сервером реализуется на сокетах, с применением ГОСТ-товского шифрования «МАГМА» (блочный симметричный).

Программный комплекс (назовем его комплексом, ибо он состоит из двух модулей, написанных собственными руками) имеет в своем составе следующие компоненты: клиентская часть, написанная в AndroidStudio и серверная часть, написанная в IntelliJ IDEA. Клиентов мы распространяем доступными нам способами: передачей APK по BlueTooth, WatsApp, PlayMarket, да и вообще как душа пожелает и как удобно Вашей аудитории. Сервер запускаем на своем ПК, можно конечно и арендовать какой-нибудь сторонний сервер, все равно данные там хранить мы не будем. Клиенты регистрируются, авторизуются и готовы для массовых переписок. (в перспективе реализую и индивидуальное общение ТЕТ-А-ТЕТ, а также шифрование).

Недоработки

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

Хватит лирики, перейдем к кодингу

Комментарии в коде писал для себя, поэтому думаю все будет понятно и по ним.

Начнем с сервера:

1. класс описания самого «ядра» сервера
Читать полностью »

Какое-то время назад мой рабочий ноутбук отказался включаться. Просто не реагировал ни на какие попытки, включая отключение батареи. У технической поддержки ушло несколько месяцев на то, чтобы замененить практически все компоненты от матрицы до материнской платы и выяснить, что проблема была в перетертом шлейфе матрицы. Шлейф заменили, машина ожила и вернулась ко мне. Но в первый же день выяснилась интересная особенность — видимо, в пылу борьбы со шлейфом ремонтеры поломали или отключили датчик закрытия крышки. Теперь ноутбук не засыпает при закрытии крышки. Какое-то время я пытался найти способ устранить это самостоятельно, но в этот раз действенных советов Гугл и форумы комании Lenovo, к сожалению, не дали. Второй раз отдавать машину в ремонт просто страшно.

Ок, я не могу решить проблему механически, но может быть можно придумать, какой-то простой workaround. Например, я привык, уходя блокировать компьютер нажатием Win+L, почему бы не сделать shortcut для перевод машины в спящий режим? Выяснилось, что отправить машину в sleep несложно, но вот привязать это к нажатию на Ctrl+Q, например, уже не так тривиально. Можно найти софт, который будет управлять для вас этими функциями. Ну или написать свой. И так вышло, что как раз сегодня есть пара часов времени и стойкое желание попрактиковаться в программировании.

Так как программист я посредственный, то писать решил на C# в Visual Studio Community Edition. Чтобы не усложнять создал пустой проект в формате Windows Form Application с одной формой, в которую добавил контрол notifyIcon. Форму сделал невидимой сразу после старта, а в обработчк MouseDoubleClick добавил код включения и выключения видимости, чтобы форму можно было штатным образом закрыть. Эта мысль пришла не сразу, а после того, как стало понятно, что приложение должно уметь отменить регистрацию глобальных shortcut-ов после своей терминации.Читать полностью »


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