• Мини ip телефония (voip) дома?

    vit1251
    @vit1251
    Software Engineer
    Да, можно.
    Ответ написан
    Комментировать
  • Как получить сообщение целиком используя python socket?

    vit1251
    @vit1251
    Software Engineer
    Вам нужно реализовать протокол (соглашение поверх вашего транспортного протокола).

    В вашей задаче вижу два решения:

    1. Ждать завершения команды и отправить весь результат. Создаете буфер наполняете его до завершения дочернего приложения, а после формируете заголовок отправляете и к заголовку подцепляете буфер. Заранее длину заголовка должны знать обе стороны. Самой простой реализацией будет реализация в Twisted twistedmatrix.com/documents/9.0.0/api/twisted.prot...

    2. Создать подобие шины данных и передавать события. Одним из событий передача строки из приложения. Это отлично подойдет для "непрерывнух" (длгих или вечных) приложений генерирующих вывод. Так же можно поразмыслить над вводом в приложение и тут Вы реализуете интерсктивную подсистему SSH (в SSH еще есть и exec, sftp и т.д.). В целом для этой задачи с событиями уже можно применить готовые решения для шин данных ZeroMQ, системы AMQP и т.д.

    Если вопрос не академический, то рекомендую обратить внимание на готовые системы оркестрации (по русски это наверное так звучит - прошу поправить в комментариях если иначе).
    Ответ написан
    Комментировать
  • Нужна ли архитектура MVC для сайта?

    vit1251
    @vit1251
    Software Engineer
    Структурирование поможет разобраться в вашей системе, но следует серьезно подумать не получите ли Вы где-то серьезные ограничения например не будет ли у Вас ситуации когда на один запрос всего одна транзакция и т.п. В любом случае MVC всегда можно привести к обычному коду, а вот обычный код к MVC нет.
    Ответ написан
    Комментировать
  • Как хранить действия пользователей по примеру соц сетей?

    vit1251
    @vit1251
    Software Engineer
    Смотрите слово UNION подсказывает, что Вы собрались использовать SQL, а так же будете испытывать накладные расходы СУБД на обеспечение транзакций и реляционной модели, но большая часть ваших операций это выборка данных с фильтрами и добавление в конец.

    Обеспечивать транзакции в целом не нужно и отношение к другим таблицам очень сомнительна. Вполне вероятно, что лучше всего смотреть в стоорону NoSQL с поддержкой MapReduce.
    Ответ написан
    Комментировать
  • Как можно организовать парсинг из Outlock?

    vit1251
    @vit1251
    Software Engineer
    Можно заменить сервер с MS-Exchange на любой другой и хранить сообщения после получения на сервере в виде файлов. СУществует например несколько стандартных механизмов по хранению писем: MBOX, MAILDIR и т.д. тогда получение писем и обработка их может сводиться к обращению к файловой системе.
    Ответ написан
    Комментировать
  • Изучение языка программирования для маленького города: PHP или 1C?

    vit1251
    @vit1251
    Software Engineer
    1. Создание сайтов на PHP от все будут требовать еще и знание сопутствующих технологий вроде HTML, CSS и дизайн, верстка. Окунетесь в детали хостингов и деплоя проектов и т.д.

    2. С 1С ваши познания будут направлены в область бухгалтерии и если сайты нужны компании один раз в два три года, то вот обслуживать 1С нужно постоянно.

    С моей точки зрения 1С гораздо более надежная профессия, но если есть желание развиваться в технологическом направлении и постоянно изучать новые инструменты для все тех же операций по обработаке данных в базе данных и выводу шаблонов по сети, то вам скорее в PHP.
    Ответ написан
    6 комментариев
  • Две функции main?

    vit1251
    @vit1251
    Software Engineer
    Господа следует понимать, что Вы делаете:

    1. lua.c это интерактивный шелл и одновременно интерпритатор Lua (должен быть сборан с liblua);
    2. luac.c это транслятор в байткод Lua (должен быть соборан с liblua);
    3. liblua это статическая(или динамическая) библиотека (должна быть собрана без файлов [lua.c, luac.c]);

    Более подробно можно найти в директории с документацией в том же каталоге или в Makefile:

    lua is the stand-alone Lua interpreter. It loads and executes Lua programs, either in textual source form or in precompiled binary form. (Precompiled binaries are output by luac, the Lua compiler.) lua can be used as a batch interpreter and also interactively.

    luac is the Lua compiler. It translates programs written in the Lua programming language into binary files that can be loaded and executed with lua_dofile in C or with dofile in Lua.
    Ответ написан
    Комментировать
  • Провайдер email с API доступа к содержимому почтовых ящиков

    vit1251
    @vit1251
    Software Engineer
    Еще один фиктивный сервер почты: mesghub.com с доступом по API
    Ответ написан
    Комментировать
  • Тестирование email рассылок

    vit1251
    @vit1251
    Software Engineer
    Еще один фиктивный сервер почты: mesghub.com с доступом по API
    Ответ написан
    Комментировать
  • Как можно писать звук, который воспроизводит звук Linux на Python?

    vit1251
    @vit1251
    Software Engineer
    Более детально задачи по подзадачам:

    1) Перехват звука (скорее всего задача уходит корнями в перехват Alsa или PulseAudio, но проще читать сам файл со звуком - тот же WAV проще всего через import wave, а скажем mp3 есть биндинкги lame);

    2) Анализ спектра (для этого нужно получить сам спектр, тут пригодиться знание МАТАНА оу наконец-то или просто взять сишный FFT скажем тот же numpy);

    3) Рисование (для рисования есть примеры на официальной флешке в дириктории opt, или pygame или DirectFB);
    Ответ написан
    Комментировать
  • В какую область переквалифицироваться программисту?

    vit1251
    @vit1251
    Software Engineer
    ищите проблему. возможно она в другом. например хочу машину работаю 24/7 а купить немогу. или хочу спать до 11 и купаться в бассейне(ссылка на Авиасейлс в Пхукете) а работодатель гонит к 9 на другой конец города. и т д
    Ответ написан
    1 комментарий
  • Зачем нужны таск менеджеры GULP и GRUNT?

    vit1251
    @vit1251
    Software Engineer
    Мое мнение это мода! На выполнение одинаковой работы (минифаер, шаблонизация, склеивание и т.д.) понаписали много инструментов. Вот посмотрите раньше не так много было подобных инструментов, а сейчас почти для всего понаписали. С одной стороны хорошо есть выбор, а с другой стороны вместо одного удобного и простого решения (и это не ваш Sublime) вроде общего формата ZIP, RAR, JPG существует много много похожих средств автоматизации и в каждом каркасе своя система (мы вот зачем-то вообще на Java писанную пользовали). Но мода конечно пройдет и все это передохнет. Другое дело, что вместо решения глобальной проблемы создают очередные костыли, а потом сверху еще и еще....
    Ответ написан
    Комментировать
  • Первый рабочий день программист. С чего начать?

    vit1251
    @vit1251
    Software Engineer
    Подумайте как мыслит Ваш потенциальный работодатель? Например, проект писанный 20 программистами 40 лет и теперь на него пришли Вы, а есть вообще уверенность, что у вас экспертиза появиться в ближайшие хотя бы пол года по проекту, а через хотя бы год вы сможете реализовать к проекту хоть какое-то решение? Выглядит как попытку оживить трупа и очень пугает, что Вы один программист - вообще у меня есть пример одной компании где на три продукта штат в два этажа разработчиков (порядка 500 человек). Не уверен я что у Вас адекватная вообще гос-корпорация ... Идите лучше Junior в любую контору если толковый парень сразу подниметесь, а нет так научат и подниметесь, а так будете только сопли жевать в одиночку ....
    Ответ написан
    Комментировать
  • Лучшая программа или ресурс для автоматического обзвона по выбранному диапазону номеров?

    vit1251
    @vit1251
    Software Engineer
    Возможно вам подойдет любая система с API и разработчик поможет вам в реализации вашей проблемы. например на фрилансе полно таких ребят. Системы с API такие Comtube, multifon и clikatel или типо того
    Ответ написан
    Комментировать
  • C++14 имеет достаточно фич, что бы забыть о PHP?

    vit1251
    @vit1251
    Software Engineer
    Я вообще не понимаю Вашу проблему? Если Вы пишите на C++, то не составляет труда просто сделать свою ветку PHP выпилить сложение строк и получить интерпретируемый язык с тем поведением, которое Вам нужно.

    И я уверен Вы найдете последователей и любителей писать long-pool приложений. А если дописать PHP и снабдить его Threading и допилить до хорошего уровня ООП-шный Runtime, то цены вам не будет…
    Ответ написан
  • Как лучше организовать структуру БД, для организации модуля друзей на сайте?

    vit1251
    @vit1251
    Software Engineer
    Не специалист в этом вопросе, но что лучше делать подзапрос как предложили

    SELECT login, friends.id AS check_id, friends.friend_id AS check_friend_id,
    (SELECT id FROM friends WHERE id=check_friend_id AND friend_id=check_id)AS checkout
    FROM friends LEFT JOIN users ON (users.id=friends.friend_id)
    WHERE friends.id=?i
    HAVING checkout IS NOT NULL ORDER BY login

    ИЛи же сделать:

    SELECT id,friend_id FROM subscription s1
    INNER JOIN subscription s2 WHERE s1.uid = s2.fuid and s1.fuid = s2.uid;

    что в принципе даст пересечение на себе?!

    Тут вопрос производительности )))
    Ответ написан
    Комментировать
  • Как лучше организовать структуру БД, для организации модуля друзей на сайте?

    vit1251
    @vit1251
    Software Engineer
    Почему-то подумал, что можно повесить на Redis в множество. Быстро считать сколько друзей позволит. Правда не знаю как делать выборки по друзьям из базы )))
    Ответ написан
    Комментировать
  • Какой php фреймворк выбрать для небольшой социальной сети?

    vit1251
    @vit1251
    Software Engineer
    По поводу социальной сети — столкнетесь с проблемами:

    1. организации стены (не ясно где хранить столько мусторных записей в таблицах или очерядх),
    2. если будут рекомендации, то как их считать OpenSlope для одной тоько MySQL на PHP медлителен.
    3. Сообщения в виде чата что там GROUP BY для того что бы была видна стена.

    P.S. Других проблем вроде особо не замечено. Писать FW с нуля смысла не вижу задолбаетесь — потратите уйму времени просрете деньги инвестора ничего не сделаете… В FW уже проделанные за вас RBAC, MAIL, MVC, VALIDAION и т.п. базовые штуки… Нужно только дозатачивать под нужный результат…
    Ответ написан
    Комментировать
  • Какой php фреймворк выбрать для небольшой социальной сети?

    vit1251
    @vit1251
    Software Engineer
    > Скоро узнаю, что за запросы Yii посылает в MySQL

    Вы сначала узнайте, а потом начинайте писать!!!

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

    P.S. А теперь по делу:

    1. что сильно напрягает, так это сложность прописывания order для разных баз данных например ->order = '`createdAt` DESC' для MySQL и ->order= '«createdAt» DESC'; для PostgreSQL меня немного смущает задание кавычек для полей с учетом регистра.

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

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

    4. Как в DAO ->select задавать красиво count(item) AS item_count так и не понял. Сначала думал, что ассоциативным массивом, но потом методом проб и ошибок пришел к выводу что только через прямую вставку строки 'count(item) as item'
    Ответ написан
    Комментировать
  • Слишком медленная обработка изображений на Python с PIL + NumPy

    vit1251
    @vit1251
    Software Engineer
    а я все подумываю может GD собрать на выходных для Python. А то действительно PIL какой-то уж очень ИМХО тормозной.
    Ответ написан