Рубрика «Песочница» - 83

image В продолжение, поднятой TimeCoder'ом темы о путешествии во времени, хочу предложить к обсуждению еще одну модель. TimeCoder в своей статье упомянул про световой конус в разрезе слияния реальностей. Однако давайте рассмотрим на этом же примере сам пространственно-временной скачек.
В простейшем случае можно рассмотреть наше пространство время, как четырехмерный массив, в котором каждой группе пространственных координат соответствует временнАя координата. Можно рассмотреть модель иначе, как одномереный массив пространств. Т.е. в каждой ячейке массива существует копия пространства. Мы воспринимаем мир линейно, как бы читая этот одномерный массив слева-направо в течение жизни. Такая модель исключает всякое ветвление, возможно лишь допущение, что таких массивов существует некоторое множество и они между собой никак не связаны. Нам этот случай не интересен, он практически не оставляет нам ни возможности выбора ни возможности пофилосовствовать. Наш мир в такой реальности подобен кинопленке, где все события предопределены. Поэтому пойдем в своих допущениях дальше и предположим, что наш временной массив двухмерный (или даже трехмерный). Можно было бы рассматривать просто пятимерный массив, но рассуждая сугубо о времени, хочется более жестко отделить его от нашего восприятия пространства, поэтому пусть три пространственных координаты будут просто абстрактной точкой во временнОм массиве. Эта ситуация подобна, уже разобраной TimeCoder'ом, с той разницей что у нас не создается вселенных, а они существуют все вместе и параллельно, и чем дальше они от некоторого рассматриваемого нами кусочка — тем более масшабны изменения между ними. Скажем две соседних вселенных не будут отличаться для простого обывателя ничем: в песочнице во дворе окажется на одну песчинку больше, ромашка в саду вырастет не стем числом лепестков и т.п. Однако чем дальше мы будем отклонятся по оси вселенных, тем существеннее будут изменения.
Читать полностью »

Как мы все знаем, евенты backbone.js делятся на две категории:

  • Изменение информации в моделях/коллекциях
  • Евенты DOM — дерева

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

Дабы не отступать от стиля backbone, хотелось реализовать возможность добавить событие socket.io так же, как событие DOM — дерева, а именно вот так:

var im = Backbone.View.extend({
  io_events: {
    'new_message': 'newMessage'
  },
  newMessage: function(message_data){
    //do something
  }
});

Долгие поиски по просторам интернета меня привели к подборке менее элегантных методов связки backbon'а и сокетов, которые, вроде, и решали задачу, но не так, как хотелось бы. Пришлось думать самому.
Читать полностью »

Хабрет, читателям!

Как упростить жизнь программисту при отрисовке графиков в прямоугольной система координатНе долго думая решил поделиться очень простым способом облегчить себе программерскую жизнь.
Иногда математические знания заложенные в школе запутывают начинающего программиста, что открыв исходник написанный несколько недель назад с трудом вспоминаешь что к чему.
Например, нам нужно нарисовать график какой нибудь функции на элементе Image1 с помощью Canvas. Для определения координат пикселя в современных языках программирования отсчет начинается из верхнего левого угла холста. А что, если нужно отрисовать точку на плоскости используя прямоугольную систему координат (далее ПСК). Система координат имеет горизонтальную ось абсцисс, вектор луча которой направлен слева направо и вертикальную ось ординат — снизу вверх. Это очень усложняет определение привычных для нас координат точек на графике, особенно при кодинге с большим количеством взаимозависимых переменных.
Дабы не запутаться в коде я решил написать функцию…
Читать полностью »

На Хабре уже много статей про 1С и ее «плохую» способность по интеграции с другими системами. И я соглашусь с ними, интегрировать 1С и Megaplan оказалась задачей, куда менее приятность чем я предполагал в начале.

В статье я не расскажу как взять и настроить синхронизацию через API с помощью веб-сервиса от начала и до конца. Но расскажу ключевые моменты после которых найти не достающею информацию будет не проблема.

Предыстория

Я попал в отдел 1С в котором была своя, написанная сотрудниками конфигурация по приему и управлению задачами «PM». Время шло конфигурация развивалась и обрастала новым функционалом и отказаться от нее уже не было возможности, так как она стала единым центром по приему и обработки задач, уже не только отдела 1С, но и всех IT отделов холдинга(на момент написания статьи обсуждается внедрение в систему Административно хозяйственного отдела и отдела эксплуатации зданий). В конфигурации была настроена синхронизация с LDAP, всеми базами холдинга, автоматическими уведомлениями по skype и другое.
Читать полностью »

Хочу табличку! Хочу табличку с сортировкой, опциональной разбивкой по страницам и близкой к стилю bootstrap, но так, чтобы в нее можно было добавить много много колонок.

Что нужно подготовить заранее?

1. Yii Framework ( http://www.yiiframework.com/ )
Нужно скачать, установить, запустить, разобраться с логикой построения проектов.

2. jQuery EasyUI ( http://www.jeasyui.com/ )
Нужно скачать, распаковать и скопировать в папку с ресурсами проекта в Yii Framework и подключить следующие файлы:

/easyui/themes/default/easyui.css
/easyui/easyui/themes/icon.css
/easyui/jquery-1.8.0.min.js
/easyui/jquery.easyui.min.js

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

В своей работе мне часто приходится использовать данные маршрутизаторы для решения своих задач. В данном случае, необходимо было предоставить доступ в интернет через роутер RB450G, имея возможность блокировать определенные сайты по маске имени и сохранять историю посещений. Далее будет показан пример решения такой задачи с использованием бесплатного ПО.
Читать полностью »

Сервис хранения заметок Clipboard.com закрывается

Сервис Clipboard, запущенный 2 года назад (13 октября 2011 г.), закрывается. Salesforce.com подписало соглашение о приобретении ими Clipboard.com Об этом было объявлено в блоге компании 9 мая.

Пользоваться Clipboard можно будет до 30 июня; все заметки пользователей будут доступны для экспорта в архив, после чего сервис полностью удалит весь контент.
Читать полностью »

В статье будет рассказано о возможном применении xdebug системными администраторами web-серверов. Может показаться, что администратор не должен заниматься диагностикой и отладкой кода, поскольку это – работа программиста. Это так. Но, как, в случае возникновения проблемы, убедить программиста в том, что его код неоптимален (если это действительно так) и нуждается в переработке, если программист все время заявлет: «У нас все хорошо – чините сервер»? Представим, что это программист, с которым нежелательно спорить. Например, наш очень дорогой и возмущенный клиент.
Читать полностью »

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

Хочу поделиться своей гипотезой на этот счет, близкой к ИТ тематике.
Читать полностью »

Вольно цитируя вступление к соответствующей статье на RailsGuides,

Миграции — это удобный способ управления структурой и изменениями схемы БД.

Конечно, можно вести дела по старинке, оперирую множеством SQL-файлов, или, о ужас!, редактируя куски SQL-кода в одном большом файле, который представляет собой актуальную схему БД.

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

Если Вы уже заинтересовались, или все еще не уверены, но перспектива иметь прозрачную историю изменений и возможность с помощью одной-двух консольных команд откатиться на любою версию схемы, звучит заманчиво, прошу под кат.
Читать полностью »


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