Pull to refresh
43
0
kolbaskinmax @kolbaskinmax

Программист

Send message

CNC Multitool, новые приключения

Level of difficultyEasy
Reading time10 min
Views6.2K

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

Осторожно, много картинок...
Total votes 20: ↑20 and ↓0+20
Comments17

ЧПУ в хоббийной мастерской (часть 3)

Reading time7 min
Views30K


Изначально, планировал ограничиться двумя постами (раз, два) про мои ЧПУшные эксперименты. Но, тема оказалась многим интересной, поэтому, немного ее еще пораскрываю. В этом посте пойдет речь про написание самодельного софта для управления любительским ЧПУ.
Total votes 31: ↑31 and ↓0+31
Comments32

ЧПУ в хоббийной мастерской (часть 2)

Reading time6 min
Views28K


Первая часть
→ Вторая часть
Третья часть

В статье рассмотрим стандартное и нестандартное использование CNC-роутера. Для чего кроме вырезания деревянных картинок можно приспособить такой станок. Осторожно, трафик.
Total votes 59: ↑59 and ↓0+59
Comments93

ЧПУ в хоббийной мастерской (часть 1)

Reading time6 min
Views42K


→ Первая часть
Вторая часть
Третья часть

Работа программиста имеет один существенный недостаток: как правило, мы не можем потрогать результат своего труда. Можем наслаждаться красотой кода, восторгаться оригинальностью алгоритма, но пощупать программу, увы, никак. Меня этот нюанс профессии всегда расстраивал. Чтобы как-то компенсировать виртуальность результата в основной сфере деятельности, несколько лет назад я завел себе вполне материальное хобби — столярничество. По началу все шло хорошо, но очень скоро стали сказываться профессиональные болезни любого программиста — лень и перфекционизм. Особенно, добивал тот факт, что когда нужно сделать 10 одинаковых деталей я не мог качественно сделать одну и скопировать ее еще 9 раз. В общем, вы поняли, через некоторое время в мастерской появился ЧПУ. Этот рассказ о двухлетнем опыте владения этим чудом техники.
Читать дальше →
Total votes 56: ↑55 and ↓1+54
Comments158

Бесшовный клиент-сервер

Reading time9 min
Views15K
Любой клиент-серверный проект подразумевает четкое разделение кодовой базы на 2 части (иногда больше) — клиентскую и серверную. Зачастую, каждая такая часть оформляется в виде отдельного независимого проекта, поддерживаемого своей командой девелоперов.

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

Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments15

Ext JS на сервере

Reading time11 min
Views13K
фото от сюда https://github.com/tj/palette Когда речь заходит о библиотеке Ext JS, от знатоков приходится слышать довольно много негатива: тяжелая, дорогая, глючная. Как правило, большинство проблем связано с неумением ее готовить. Правильно собранный с использованием Sencha Cmd проект со всеми css, картинками весит в продакшне в районе 1Мб, что сопоставимо с тем же Angular. Да и глюков не сильно больше…

Можно по-разному относится к этому детищу компании Sencha, но даже принципиальные ее противники признают — лучшего решения для построения серьезных интранет проектов найти сложно.

На мой взгляд, самое ценное в Ext JS не коллекция UI компонент, а довольно удачная архитектура ООП. Даже с учетом бурного развития JS в последние годы, многие нужные вещи которые были реализованы в Ext JS еще 7 лет назад, отсутствуют в нативных классах до сих пор (нэймспэйсы, mixins, статические свойства, удобный вызов родительских методов). Именно это побудило меня несколько лет назад поэкспериментировать с запуском Ext JS классов в бакэнде. Про первые подобные опыты я уже делал посты на Хабре. В этой статье описана новая реализация старых идей и ряд свежих.

Перед тем как начнем, внимание вопрос: как вы думаете, где выполняется и что делает приведенный ниже фрагмент кода?

Ext.define('Module.message.model.Message', {
....
    /* scope:server */
    ,async newMessage() {
        .........
        this.fireEvent('newmessage', data);
        ......
    }
...
})
Читать дальше →
Total votes 13: ↑7 and ↓6+1
Comments14

Использование websocket в приложениях Extjs

Reading time9 min
Views14K
Websocket, наверное, самое серьезное и полезное расширение протокола HTTP с момента его появления в начале девяностых. Использование websockets для обмена данными с сервером намного более выгодно, чем привычный AJAX. Экономия трафика в стандартных приложениях существенна, особенно, при активном обмене клиента и сервера небольшими сообщениями. Также, существенно сокращается время отклика при запросах данных. Основным препятствием на пути широкого распространения этой технологии долгое время было то, что многие прокси-сервера криво поддерживали расширенную версию http-протокола. Что приводило, в худшем случае, к проблемам безопасности (пруф). За последние пару лет ситуация с поддержкой вебсокетов стала выправляться и сейчас, на мой взгляд, настало их время.

В этой статье описаны рецепты использования вебсокетов в стандартных компонентах Extjs (gridpanel, treepanel, combobox). И, также, в качестве замены Ext.Ajax.
Читать дальше →
Total votes 15: ↑13 and ↓2+11
Comments3

Janusjs: концепт системы, где клиент и сервер — сиамские близнецы

Reading time14 min
Views5.9K
image По роду своей деятельности мне часто приходится заниматься разработкой разнообразных crm-систем. Клиентскую часть уже очень давно собираю на Extjs (начинал еще со 2-й версии). На сервере пару лет назад прочно обосновался Nodejs, заменив привычный PHP.

В прошлом году появилась идея унифицированной платформы для клиентской и серверной частей веб-приложения на базе Extjs. После года проб и ошибок, пазл более-менее сложился. В этой статье я хочу поделиться концептом фрэймворка, код которого выглядит одинаково на клиентской и серверной стороне.
Читать дальше →
Total votes 6: ↑3 and ↓30
Comments17

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity