Pull to refresh
64
0

Разработчик

Send message
я всегда открыт для критики и ваших комментариев.

Тут комментировать особо нечего. Пост на 100% состоит из общих тезисов, при этом они не очевидны и ничем не подкреплены: ни одной цифры, ни одного примера, ни одной ссылки.


Да даже, о чем данный пост, не понятно: о миссии компании? Что за компания? Что за миссия? Логично, конечно, что компания для своего существования должна что-то делать, и логично, что развитие — это чаще всего хорошо, а как иначе? Бывают случаи, когда у организаторов компании нет понимания, что они делают и зачем? Или Вы про то, что зарабатывание денег не может являться целью? Хотя если компания зарабатывает, значит ее услугами и/или продуктами пользуются, а соответственно компания полезна людям — тоже не цель? Чет ничего не понял.


Ну и тезис про два типа компаний в России звучит одиозно, никого не защищаю, просто не каждый день такие, до неприличия узкие, мысли встречаю.


UPD. Не хотел комментировать на самом деле, просто решил посмотреть, что мне, в качестве читателя, дало слияние, и так сказать, бомбануло.

Да, поддержка сейчас так и рекомендует делать, но это борьба с симптомами.
Я AdBlock и прочие блокировщики возненавидел, когда понял, что они нарушают функциональность приложения. Там не было ни рекламы и ничего такого, что могло бы вызывать срабатывание правил. Просто обычный баг, который сложно отловить. Суть его в том, что в определенный момент AdBlock начинает резать загрузку изображений в фоне. Самое интересное, что эта проблема начинает проявляться после какого-то промежутка времени, условно через 30 секунд существования процесса вкладки: то есть если открыть вкладку и запустить на ней приложение, некий контент загрузится, а возможно даже весь, но потом дополнительный контент перестает подгружаться, и если после этого обновить страницу по F5, то контент вообще не грузится. И если проблема появилась в браузере, то воспроизводится стабильно, но причины появления и способы лечения пока не удалось выяснить.

На их форуме нашел одно сообщение, описывающее похожую проблему (возможно плохо искал, adblockplus.org/forum/viewtopic.php?t=31035), но из-за сложности воспроизведения та ветка ни к чему не пришла, а у автора топика проблема решилась с обновлением браузера. Пока особо ничего не анализировал, но от пользователей жалобы приходят часто, и, судя по сообщениям, они сталкиваются с похожим поведением: типа вчера загружалось, а сегодня через раз или вообще не грузится, хотя ничего не менялось за этот период. Также сам наблюдал это на своем компьютере (помогло пересоздание профиля пользователя в Chrome, но так себе решение), и на паре компьютеров коллег. Сейчас делаю исследование, которое поможет связать ошибки загрузки файлов с наличием AdBlock у пользователя, и если будут явные корреляции, что будет означать наличие бага, то надеюсь данные помогут в его исправлении.

Может кто сталкивался с похожим, и обладает большей информацией? А то у меня все никак руки не доходили взяться за это дело, возможно уже все давно решено.
Да это плагин, просто для фана, такой команды по умолчанию нет. Плагин генерирует ссылку на основе параметров, перейдя по которой, можно увидеть кусок кода, шутливый комментарий и картинку. Пример в комментарии выше.
Уметь что-то делать самостоятельно и использовать готовое, не противоположные вещи. Часто ли Вы что-то собираете из сорцов, когда есть бинарники, полностью удовлетворяющие вашим требованиям, но созданные не Вами? Или пишете код для решения популярной задачи, которая до Вас была решена уже тысячу раз? Готовое обычно можно использовать быстро, просто и эффективно, эти сборки от ребят из scotch box не исключение. Не говоря уж про то, что некоторым разработчикам вообще не обязательно знать что, да как там работает.
Не могу согласиться. Достаточно простой пример это продукты google, тот же Google Drive. На десктопе на интуитивном уровне нажимаю правой кнопкой, чтобы произвести некоторые действия над файлом (как впрочем и клацаю по горячим клавишам), это удобнее чем каждый раз искать иконки в тулбаре и достаточно очевидно. На телефоне же приходится удерживать тап, чтобы можно было выделить файл и произвести над ним манипуляции, для телефона это тоже достаточно очевидный подход. Как создать из этого целостное решение, которое будет одинаково удобно и для тач устройств, и для обычной мышки, мне не совсем понятно. Но я и не UX специалист, мне просто нравится пользоваться понятными и удобными интерфейсами, к которым давно привык.
if not заменяется на unless.

И только сейчас подумал, что у меня ни разу не возникало необходимости, что-то сравнить в шаблоне, при работе в Meteor. Просто заранее определял методы у объектов.
Я так понял, что это не номера фигур, а номер положения фигуры в пространстве. Точнее номер, определяющий комбинации поворотов по трем осям.
Совсем не применимое к практике решение:
1) Ограничение 50 запросов в день, по крайней мере еще два месяца назад так было;
2) Постоянное распознавание, даже уровень шумов не учитывается, при котором запись прекращается;
3) Со скоростью распознавания действительно проблемы, особенно если имеется только GSM соединение.

Мы делали также примерно, только вместо гугла был яндек, и распознавание через яндекс велось только при определенных командах распознанных через сфинкс.
Совсем недавно занимался подобными эксперементами. Кстати в качестве звукового драйвера использовали пакет из системы hark, но по большей части из-за того, что пришлось использовать библиотеку для определения источника звука. В hark кстати тоже есть распознавание речи, но на основе julius, на сколько я понял, и еще ряд занимательных возможностей в том числе и интеграция с ROS, правда так и не удалось в нем разобраться полностью в виду ограниченности срока выполнения задания.

На счет распознавания в pocketsphinx не могу сказать ничего положительного, в итоге настроили на нем несколько команд, и была команда на подобие «Ok, Google», которая записывала звук и отсылала запись на Яндекс SpeechKit.

Еще мне разобраться со сфинксом очень помогла данная статья.

И кстати с установкой описанной в данном посте у нас возникли проблемы, точнее при таком варианте установки gstreamer0.10-pocketsphinx тянет старую версию pocketsphinx, в которой отсутсвовали какие-то необходимые возможности, уже не помню что точно было не так. В итоге сфинкс поставили из сорцов (да как и большую часть либ для этого проекта), а интеграцию с ROS сделали выдернув скрипт и допилив его под себя.

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

Да вы можете четко контролировать какой код и где будет выполняться. Есть специальные директории client и server, файлы в которых будет доступны только в определенных средах, и еще можно использовать условия типа
if (Meteor.isClient)
  // ваш клиентский код
if (Meteor.isServer)
  // серверный код

Есть ли миграция кода между клиентом и сервером, не обмен JSON, не RemouteProcedureCall а дословно миграция исполняемого кода?

Не совсем понял вопрос, но у вас есть возможность писать код в одном файле и он будет доступен в обоих средах, если вы про инъекции кода в реалтайме, то нет такого нет, однако с помощью тех же механизмов RPC и eval это легко осуществимо, правда не совсем понимаю где это может пригодится.
В таком случае можно сравнить по величине сообщества, количеству релизов и любым другим показателям. Даже если брать суммарно все проекты дерби, у метеора показатели в разы выше. И метеор тоже не монолитен, у него есть более двух тысяч специализированных пакетов, причем их количество выросло на треть примерно за месяц.
Метеор активнее развивается, а дерби потихоньку загибается.

Derby VS Meteor
upd.
Также с помощью дополнительных пакетов можно контролировать чуть ли не каждое поле.

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

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

Еще немного маркетинга
я не ваша целевая аудитория

Могу посоветовать ознакомится, мне за пару месяцев он сильно понравился, но опять же так совпало, что проект как будто под него был придуман. До этого было пару проектов на nodejs и socket.io, так я прям радуюсь как ребенок каждый раз когда вроде бы сложные вещи, на которые бы потребовалось потратить пару дней с тем стеком, на метеоре пишутся в три строчки. Если вы с ним знакомы, и вам не понравилось, ну увы.
А сборщик, понимая их, будет собирать отдельные пакеты для разных окружений.

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

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

На счет велосипеда не согласен. Чтобы подключить пакет в проект на метеоре, достаточно ввести одну строчку, после чего даже страничка сама обновится. Для сборки самого пакета они сделали апи, которое сильно облегчает процесс сборки, нет нужды как то именовать файлы или даже вообще придерживаться какой то структуры. Модульное тестирование из коробки. Собственное хранилище этих пакетов, что облегчает поиск и дает удобство при использовании их менеджера в проектах на метеоре. И это помимо поддержки особенностей разработки на метеоре в принципе. Как мне кажется они сделали это, не потому что npm имеет один фатальный недостаток, а просто так было проще, а пользователем от этого стало удобнее, все в плюсе.

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

А вот наоборот использовать пакеты из метеор в других проектах не получится, так зачем их хранить где-то на стороне?

На счет того что мало пакетов, так это пока, люди активно портируют библиотеки, и даже самому это можно сделать очень быстро в случае необходимости.

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

Можете дополнительно ознакомится с официальным ответом на вопрос «зачем нужен этот пакетный менеджер?», возможно там найдете какие-то ответы.
По сути вариант предложенный вами в Meteor и реализовали. Вы можете подключить любые пакеты из npm в пакет для метеора, у указать как правильно будут использоваться все зависимости. Так же вам ничего не мешает на основе каких нибудь gitmodules перенести библиотеки различных авторов в ваш проект.

Вся фишка в том, что в пакете можно явно определить какие части библиотеки будут доступны только на сервере, какие на клиенте, а какие и там, и там. Вы делаете свой пакет, например, который работает с редис, с клиента доступ к редису можно обеспечить только вызовом удаленных процедур, но ведь конечный api может быть единым как для сервера так и для клиента, все эти вызовы можно скрыть от пользователя и ему не понадобится вникать в суть работы и придумывать протоколы передачи, он просто где ему вздумается вызывает SuperLib.makeCool() и получает ожидаемый результат, без необходимости что-то подключать и настраивать. Идея подобной изоморфности и послужила созданием нового пакетного менеджера, потому что в противном случае нужно было бы стандартизовать форматы пакетов для других систем, и соответственно проку для разработчиков не для этого фреймворка от таких пакетов было бы мало.

И плюсом ко всему они сделали удобный апи для создания пакета и плюшки для управления этими пакетами.
Один раз я довольно элегантно решил проблему маршрутизации в express.
Для маршрутов создавал небольшой json файл, а все перенаправление вообще получилось в несколько строк. Конечно json может не самый удачный формат, но мне не много путей описать надо было.

Но lookback выглядит интересным, только у него цели немного другие чем в express.

Information

Rating
4,790-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Works in
Date of birth
Registered
Activity

Specialization

Frontend Developer