Передо мной стояла следующая задача: сделать фильтрацию всех товаров в инфоблоке по одному свойству, сохранив штатный функционал и рабочий «Умный фильтр». Вы скажете, что в битриксе есть замечательный «умный» фильтр с его фасетными индексами, а я скажу, что да, он есть. Но давайте взглянем на исходные данные задачиЧитать полностью »
Новости информационных технологий - 26211
Как сделать фильтр всех товаров на сайте по свойству, сохранив штатный функционал, и не сломав мозг?
1970-01-01 в 0:00, admin, рубрики: ПесочницаНедавно, при написании одного из проектов, столкнулся с проблемой отображения границ в таблицах. Никогда не думал, что могут возникнуть сложности в такой тривиальной задаче.
В чем суть? По дефолту вокруг каждой ячейки отображается своя рамка (рисунок 1). Мне необходимо было, чтобы отображалась одна линия между двумя ячейками (рисунок 2). Для этого я таблице задал border-collapse: collapse и толщину границы 1px.
Самое интересное начинается, если стиль границы поменять с solid на dashed (рисунок 3).Читать полностью »
Как провести ICO и не потерять доверие
1970-01-01 в 0:00, admin, рубрики: информационная безопасность, КриптовалютыКто не слышал про ICO? В двух словах, это сбор инвестиций с помощью криптовалют, так называемый “краудсейл”. Таких кампаний становится всё больше: в прошлом году их количество удвоилось, а в этом уже было проведено столько же, сколько в 2017. Проекты набирают миллионы долларов, но и теряют немало! До сих пор на слуху прошлогодние потери проекта CoinDash в результате взлома: около 10.000.000 $. При это часто самих основателей проектов подозревают в нелегальном выводе денег таким образом.
Согласно исследованию Ernst & Young, более 10% всех инвестиций в ICO просто теряются: в результате хакерских атак, в результате фишинговой и скамминговой активности. Как так выходит? Общая специфика проведения краудсейла такова: langing page с информацией, публичные персоны-организаторы, личный кабинет инвестора, заранее известные сроки проведения. Это играет на руку злоумышленникам, они вырабатывают сложные схемы и атакуют ICO. Разберем всё по порядку.
Как научить нейросеть придумывать названия российских населенных пунктов
1970-01-01 в 0:00, admin, рубрики: ПесочницаДля начала немного несуществующих деревень и сёл
Сальтолово
Ничичи
Каверная Голяна
Придориусловка
Старотипенки
Кюканово
Кутюшевка
Верхний Стед
Сабаревка
Зеленокировка
Хадонские Выселки
Старый Куля
Октяга
Ржиново
Черемошно
Голодионово
Александрово-Полейково
Подлопаново
Малое Сусовое
Горы-Чусалы
Чубравяково
Зачем и почему
Всем привет, меня зовут Илья, я занимаюсь компьютационной биологией и биохимией, в свободное время я заставляю нейросети страдать ерундой.
Основываясь на аналогичных проектах (названия британских деревень, названия мест в Орегоне, названия различных цветов и их RGB), я решил научить нейросеть создавать названия несуществующих населенных пунктов
В качестве нейросети я решил воспользоваться torch-rnn, которую достаточно легко установить и настроить. Список городов и сел я нашел тут (можно скачать все в формате csv). С csv пришлось немного повозиться, чтобы привести ее к utf-8, после чего я запихнул ее в нейросеть и оставил на пару часов. Когда тренировка модели закончилась я взял небольшой сампл и получил следующий результат:
Proxy как шаблон проектирования на примере работы с куками
1970-01-01 в 0:00, admin, рубрики: ПесочницаПро куки
При работе с куками частенько мы используем популярный вариант какой либо библиотеки, все они работают примерно одинаково.
$.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. класс описания самого «ядра» сервера
Читать полностью »
Неработающий сенсор закрытия крышки ноутбука и что из этого вышло
1970-01-01 в 0:00, admin, рубрики: ПесочницаКакое-то время назад мой рабочий ноутбук отказался включаться. Просто не реагировал ни на какие попытки, включая отключение батареи. У технической поддержки ушло несколько месяцев на то, чтобы замененить практически все компоненты от матрицы до материнской платы и выяснить, что проблема была в перетертом шлейфе матрицы. Шлейф заменили, машина ожила и вернулась ко мне. Но в первый же день выяснилась интересная особенность — видимо, в пылу борьбы со шлейфом ремонтеры поломали или отключили датчик закрытия крышки. Теперь ноутбук не засыпает при закрытии крышки. Какое-то время я пытался найти способ устранить это самостоятельно, но в этот раз действенных советов Гугл и форумы комании Lenovo, к сожалению, не дали. Второй раз отдавать машину в ремонт просто страшно.
Ок, я не могу решить проблему механически, но может быть можно придумать, какой-то простой workaround. Например, я привык, уходя блокировать компьютер нажатием Win+L, почему бы не сделать shortcut для перевод машины в спящий режим? Выяснилось, что отправить машину в sleep несложно, но вот привязать это к нажатию на Ctrl+Q, например, уже не так тривиально. Можно найти софт, который будет управлять для вас этими функциями. Ну или написать свой. И так вышло, что как раз сегодня есть пара часов времени и стойкое желание попрактиковаться в программировании.
Так как программист я посредственный, то писать решил на C# в Visual Studio Community Edition. Чтобы не усложнять создал пустой проект в формате Windows Form Application с одной формой, в которую добавил контрол notifyIcon. Форму сделал невидимой сразу после старта, а в обработчк MouseDoubleClick добавил код включения и выключения видимости, чтобы форму можно было штатным образом закрыть. Эта мысль пришла не сразу, а после того, как стало понятно, что приложение должно уметь отменить регистрацию глобальных shortcut-ов после своей терминации.Читать полностью »
Разработка редактора (расширение на C# для Visual Studio)
1970-01-01 в 0:00, admin, рубрики: ПесочницаДень добрый.
В связи с созданием большого расширяемого проекта, возникла необходимость дать разработчикам возможность собирать свои пакеты/модули под проект. (Нечто похожее на редактор Feature и WSP Package для SharePoint) Для этого необходимо создать редактор пакетов/модулей для Visual Studio. Для создания расширения под Visual Studio очень мало информации в интернете, а из официального нашел только это. Решил собрать свою библиотеку (VSExtensibilityHelper), которая бы облегчила пользователю создание VSIX дополнений. В ней собраны базовые классы для создания редакторов:
- BaseEditorFactory — Базовый класс фабрика
- BaseWinFormsEditorPane — Базовый класс для редактора на основе WinForms компонента
- BaseWpfEditorPane — Базовый класс для редактора на основе WPF компонента
Для чего я создал очередную библиотеку, чтобы уменьшить шаблонный код Redux.js
1970-01-01 в 0:00, admin, рубрики: ПесочницаДанный пост — перевод данной статьи
Я работал над новым проектом на React и Redux. Раньше при разработке проектов на React, я работал в одиночку, но в этот раз я был частью команды, где каждый член команды имел некоторый опыт в React и Redux. Проект должен был быть выпущен в продакшн за короткое время.
Читать полностью »