• Как запустить несколько сайтов на одном Django?

    @yermocode
    Решал пару подобных задач на ruby on rails + passenger, для одной из них было создано грубо говоря 5 rails приложений размещенных на одном сервере (у каждого свой домен), одно из них было "главным" сайтом с личным кабинетом из которого происходило обновление контента на других 4 сайтах, суть была такая: все взаимодействия происходили по API, какие-либо изменения отслеживались с помощью websocket (необходимо было в реальном времени мониторить все активности). Это, если в кратце. Думаю на django построить подобную архитектуру не составит труда. Для другой задачи, необходимо было построить веб-приложение на одном домене, но должен был быть функционал создания n-го кол-ва "отдельных" сайтов с общим личным кабинетом. В этом случае задача была решена с помощью маршрутизации (routes), грубо говоря:

    //это был роут на основной сайт
    scope module: :mainClient do
        root to: 'index#home'
    end
    
    //роуты на остальные "подсайты"
    namespace :subSite_1 do
        root to: 'index#home'
    end
    
    namespace :subSite_2 do
        root to: 'index#home'
    end

    в данном случае, каждый "подсайт" включая "главный" имели свои view, style, script. На django не писал но думаю логика от этого сильно не поменяется.
    Ответ написан
    Комментировать
  • Хочу заняться мобильной разработкой, что правильней изучить в настоящее время - C# и Xamarin или Swift?

    impwx
    @impwx
    Разработчик
    У обоих вариантов есть свои плюсы и минусы.

    На Swift можно комфортно писать только под экосистему Apple. Xamarin же позволяет сделать кроссплатформенное приложение, но только с элементарным интерфейсом. Шаг в сторону от предложенных вариантов - и приложение начинает обрастать уродливыми проверками с платформозависимым кодом. Кроме того, бывают случаи, когда Apple выпускает обновление iOS, которое ломает совместимость с Xamarin и пока в Microsoft не выпустят патч, ваше приложение работать на новой операционке не будет.

    Так что всё зависит от ваших предпочтений. Если знаете C# - то порог вхождения в Xamarin однозначно ниже. Но более применимой на практике технологией мне все равно кажется Swift.

    Кроме того, для публикации приложений под iOS в обоих случаях потребуется физический Mac (или обходные пути для его получения) и платная лицензия разработчика.
    Ответ написан
    1 комментарий
  • Что нужно знать, чтобы писать клиент-серверные приложения на C#?

    Morpheus_God
    @Morpheus_God
    Это чисто по Шарпу.
    .Net. Сетевое программирование для профессионалов.
    И тут посоветовали эту книжку. Она правда не для Шарпа, но тоже интересно прочесть.
    Эффективное программирование TCP IP.
    Ну и знание самого Шарпа:)
    Ответ написан
  • Почему Python используют для написания нейронных сетей, а Ruby/Php/Perl нет?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Я бы мог сейчас начать перечислять длинный список преимуществ Python перед остальными языками и разжечь лютый холивар, но не буду. Самое главное преимущество Python перед другими языками - это предельно простое взаимодействие между кодом на Python и кодом на C\C++. Это даёт возможность писать простую и изящную логику в скриптах, а тяжёлые вычисления выносить в нативный код.
    Ответ написан
    Комментировать
  • Как создавали сайты до Django и вообщем без фреймворков?

    @PolinaRuRu
    в начале 2000-ых, я открывала notepad и писала там html-код. жесткий.
    потом открывала другой notepad и писала там css-код.
    потом это соединяла воедино.

    Потом был шаблон наипростейшего форума на PHP со своей БД. Но шаблон форума был как черный ящик.
    Потом через БД я научилась делать менее жесткие html- страницы. К примеру, запрос возвращал ссылку на картинку, в зависимости от вводимого значения.

    Потом были сайты с FLASH-анимацией.

    Прошло много лет.

    Сейчас я пишу на питоне. Использую все возможные фрэймворки, какие только найду. Если не нахожу, то пишу сама. Сейчас я ненавижу веб-разработку, и все что с ней связано.
    Пишу дэсктопные приложения, скрипты для работы с дэсктопными приложениями и для работы с БД.
    Не нужно не использовать фрэймворки. Это не совсем правильно.
    Для фана - да. Как некоторые художники сейчас сами делают акварель, а не покупают в магазине. Для понимания работы - не самый лучший вариант. Нужно двигаться вперед. Понимание черного ящика придет само со временем.
    Ответ написан
    Комментировать
  • Каков путь развития разработчика, с/с++/python?

    AgentProvocateur
    @AgentProvocateur
    Советую хорошо подумать, правильно ли выбрал сферу деятельности для кардинальных перемен. В it 26 лет - это уже внушительный возраст для входа, кто бы что ни говорил. Не слушай студентов на тостере и онлайн-коучеров, а для начала посмотри такое мнение и такое (и другие ролики). Если ты не ссышься кипятком от вида кода, и не вскакиваешь в 5 утра, чтобы быстрее сесть программировать, то минусов в этой деятельности может оказаться куда больше, чем плюсов. Ну и вообще, чтобы сбить флёр романтики тыц и тыц.

    Стоит отметить, что в ближайшие 10 лет возникнет переизбыток "айтишнеков" и острый дефицит инженерных/рабочих кадров. Соответственно, с первыми произойдет то же, что и с бухгалтерами/юристами/экономистами/риелторами, а вторые будут нарасхват и высокооплачиваемыми. Инженеры советской закалки уйдут, а техносфера никуда не денется, и станет куда более горячей сферой, чем сайтики и мобильные приложухи.

    Если охота не отбилась, то нужно определиться со сферой - энтерпрайз (c#, java), мобайл (java, swift, kotlin и т.д.), web-разработка (а там либо фронтенд - html, css, туча js-фреймворков, либо бэкенд - php, python, ruby, node.js и также туча фреймворков). А может и вовсе администрирование серверов, devops, big data, машинное обучение, статистика, системная аналитика, gamedev и пр. По каждой нише свой огромный технологический стек, которого хватит на годы только изучения...потом годы вырастания из джуниора, потом годы закрепления в мидлах, а потом до свидания, потому что 25-летних синьоров на улице очередь стоит))

    От того, что ты взял первые 3 языка из топ-2017 толку мало (java куда дел тогда?). На полноценное освоение (прежде чем к полноценной работе приступать), нужно минимум 2 года потратить активного набивания шишек (и не час-полтора после работы, а с утра и до вечера). Пройди курс "основы программирования на языке X", и сразу двигайся по выбранной нише, нет смысла залипать на C/C++ если нет конкретной цели их приложить к чему-либо.

    Если тебе "для души" - то пробуй всё, на что глаз ляжет, и выбирай на практике, а не по советам с форумов. Если нужно поскорее на работу выйти, основной спрос на джуниоров идет в java, web (как правило, вёрстка, php и cms), 1С. На фрилансе главенствует web-разработка, в основном js на фронтенде и php на серверной части. Чтобы понять, за что браться, достаточно открыть хх.ру, биржи фриланса и изучить спрос.

    Но я действительно настоятельно рекомендую не вестись на моду, сказки об уютных лофтах, кофе-печеньках, огромных зарплатах и продолжать развиваться в инженерии. Меняй сферы, компании, расти до главного инженера, будут у тебя и деньги, и личная жизнь, и стабильность, и работа интересная, а не сколиоз, выжигание глаз кодом и погоня за новыми фреймворками))
    Ответ написан
    6 комментариев
  • 1С программист. Начало карьеры. Как эффективно обучаться?

    @seamen
    программист любитель
    Расскажу свою историю становления программистом 1С и что из этого получилось.
    Решил я несколько лет назад войти в сферу 1С. Для этого я целый год по вечерам после работы, несколько раз в неделю изучал самостоятельно по книгам программирование 1С. И в течение года я сдал три экзамена на сертификаты по 1С (чё то там про Предприятие и УТ). Занимался как раз по курсу Радченко. Только там было Предприятие 8.2 а не 8.3. И ещё несколько хороших книг по 1С.
    В общем через год меня взяли стажёром в контору, которая занималась внедрением 1С. Взяли благодаря сертификатам, я думаю. В описании вакансии было что-то написано про помощь наставников во время работы. Но по факту тебе просто ставят простейшую задачу и интернет в помощь. К коллегам особо с вопросами не по пристаёшь, так как люди мы все взрослые, и несколько раз задавать один вопрос "не комильфо". Просидел я так за компом, втупляя, три дня и нихрена не сделал. Глаза устали здорово за эти 24 часа. Я опупел.
    Помощь была со стороны руководителя несколько раз. Это было описание алгоритма решения задачи. Алгоритм я и сам в принципе знал. Просто не смог его переписать в код. Вот и всё. Отношение было благожелательное, нареканий нет. Не знаю в чём тут дело. Такой вот у меня опыт вхождения в 1С. Тут я понял что такое быть программистом. Если бы я знал программирование 1С, наверное было бы проще.
    Так я сам инженер-машиностроитель. После того раза опять ушёл в свою область. Но попытки "войти вайти" не прекращаю. Сейчас изучаю C#. Скорее как хобби, потому что это всё-таки трудно без специального образования.
    Ответ написан
    Комментировать
  • Франчайзинг, как старт карьеры 1С Программиста. Имеются ли подводные камни?

    @Dementor
    программист, архитектор, аналитик
    Пофантазируем. Предположим, что тебя не поставили на телефон, а сразу разрешили что-то программировать. Предположим, что тебе дают задачу "у клиента Х не проводится документ, выдает ошибку - нужно исправить". Ты лезешь в код и находишь, что ошибка из-за незаполненного реквизита. Ок, ты с чувством выполненного долга удаляешь непонятную проверку и сдаешь работу. На следующий день прибегает взмыленный начальник: "Ты что натворил? У клиента полетели все отчеты и период не закрывается!!!" - оказывается логика одной из подсистем крутится вокруг того, что тот реквизит ВСЕГДА должен быть заполнен и тебе было нужно не комментировать ошибку, а вывести сообщение пользователю, что он забыл внести важное значение...

    В 2004 году, когда меня зеленым новичком взяли в одну контору программистом с нулевыми знаниями программ моей фирмы, языка программирования (FoxPro) и основ экономики/бухгалтерии (включая терминологию), меня тоже изначально посадили на телефон оператором службы поддержки. Классический рабочий день - принимал звонок, бегал в мыле между сотрудников пытаясь узнать решение проблемы, лазил в листинги в попытках разобрать логику кода..., отзванивался клиенту и решал его проблему. В результате за два месяца уже знал всю терминологию, знал особенности всех наших программ и довольно неплохо программировал на FoxPro. При этом я настолько хорошо себя зарекомендовал, что мне полностью доверили проект перевода наших российских бюджетников на новый план счетов (согласно приказа Минфина РФ от 26.08.2004 № 70н). А через год я уже по заказу одной из киевских газет написал с нуля программу для учета распространения тиража печатной продукции.

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

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    1) jquery и vue.js совершенно разные вещи и решают они совершенно разные задачи. jquery создан для кросcбраузерной работы с DOM. Vue.js и подобные созданы для работы с данными.

    2) Не факт. Для создания модальных окон, лайтбоксов, слайдеров, вам может понадобиться там и jquery, т.к. аналоги jquery плагинов не всегда есть на нативном javascript. + Готовых компонентов для vue.js не так уж и много, по сравнению с react или angular. Но их кол-во растёт

    3) А что вам даёт jquery, кроме добавления нескольких плагинов? По сути, ничего такого vue вам не даст.

    4) Очень многое. Разделение всего и вся на компоненты. Которые можно переиспользовать в разных частях сайта не думая о дублировании стилей, js логики и т.п.

    5) Да во всех можно использовать, будь то блог или интернет магазин.

    6) Если проект с нуля, то можно использовать vue.js. НО!!! Для начала, вам, его нужно изучить и достаточно хорошо!!! А так же, скооперироваться со своей командой. Дизайнерами и серверными разработчиками.

    7) Лично я, пока не знаю его на достаточно хорошем уровне, но уже могу легко написать на нём блог и прикрутить node.js + express + mongodb для обработки данных на сервере. Бесконечная подгрузка постов, фильтрация данных без перезагрузки и триллион всего.

    Гуглите на youtube видосы по vue.js, лично вам, на русском, что бы понять, что это такое и для чего вообще используют подобные фреймворки. Изучите хорошенько javascript иначе не сможете писать на этом фреймворке.

    Я проходил курс тут. Он на английском, но достаточно понятный.

    P.S. jQuery можно использовать вместе с vue.js без всяких проблем
    Ответ написан
    7 комментариев
  • Зачем мне лучше использовать Vue.js в проектах, чем не использовать?

    Fragster
    @Fragster
    помогло? отметь решением!
    1. это разные вещи
    2. если не завязан на компоненты, использующие jquery (хотя тот же bootstrap есть отвязанный)
    3. ничего, так как в лендингах обычно немного логики, разница ощущается при росте количества связей
    4. смотря что за страницы, см. выше
    5. single page applications, rich internet appalications
    6. когда появляется input/блок содержимое которого связано с какими-то данными, меняющимися в другом inputе/блоке
    7. тысячи их. например таблица с фильтром целиком на клиенте.
    Ответ написан
    5 комментариев
  • Гик паранойя: чем опасно фото с паспортом в руках?

    ipswitch
    @ipswitch
    IT-инженер
    Не делаю и не использую сервисы, требующие такой "верификации".
    Особенно злостно, когда это даже не на сайте просят загрузить, а в оффлайне используют для "верификации клиента", к примеру, курьеры банков "Открытие", ТКС и других, фотографируя клиента с паспортом, паспорт отдельно и клиента отдельно на свой смартфон. Вот это ещё хуже чем "предоставьте селфи с паспортом". Такое себе всё из себя сертифицированное средство криптозащиты персональных данных, млин. Смартфон Prestigio. Тьфу!
    Ответ написан
    Комментировать
  • Гик паранойя: чем опасно фото с паспортом в руках?

    Jump
    @Jump
    Системный администратор со стажем.
    Делаете ли вы фотографии своих данных, селфи с паспортом в руках и т.д, когда сервисы просят это?
    Разумеется нет.
    Во первых я вообще селфи не делаю - это ж идиотизм, в жизни есть более интересные занятия.
    Во вторых я не отправляю свои фото кому попало - например разным сервисам.

    Я считаю, что в России такие данные часто перетекают к злоумышленникам
    Такие данные, как и многие другие зачастую перетекают к злоумышленникам. Россия в этом плане не исключения, у нас с этим тоже не все хорошо.
    Ответ написан
    Комментировать
  • Стоит ли начинать разработку сайта сразу с API?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    например можно не трогая фронтенд сменить фреймворк или даже язык.
    В большинстве случаев, можно сменить фреймворк не трогая фронтэнд. Например, если Ваш фреймворк использует шаблонизатор "Twig". В некоторых случаях, так же можно сменить язык, подвергая шаблоны минимальной модификации, которую можно провести через "Найти/Заменить". Но, я бы на Вашем месте не сильно обольщался на эту "возможность".

    Ну например выбрать 10 новостей в нужном формате
    делаем GET запрос
    Обычно делают POST-запрос, и не в формате адресной строки (GET-параметров), а отправляется так же, запрос в формате JSON. Обратите внимание на ключевое слово "обычно", т.е. не всегда.

    Применяется такой подход к проектированию?
    Это скорее подход к разработке, уровня "клиент-сервер", и/или REST API.

    И может есть готовые решения о которых можно почитать.
    Не совсем понятно, какое именно готовое решение Вы хотите получить. HTTP-клиенты и обработка JSON-данных, встроена во многие языки, или реализована в виде готовых библиотек.

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

    Насколько я понимаю, Вы хотите обернуть РСУБД (SQL-БД), работающую через (unix-)сокет, в более примитивные API, выдающие ответы в формате JSON? А чем Вас ответ в формате "SQL result resource" не устроил? :) При использовании РСУБД (и не только) Вы так же можете сменить и шаблонизатор, и фреймворк и язык и всё остальное, а необходимый функционал написать на уровне самой БД, в виде хранимых функций/процедур, без дополнительных, ненужных цепочек передачи данных.
    Ответ написан
    4 комментария
  • Система бандлов в Symfony: где писать свой код?

    GTRxShock
    @GTRxShock
    SA
    если приложение простое, достаточно src/AppBundle, если посложнее то можно (и зачастую нужно) разбивать на бандлы и группировать как захочется, аля src/OrganizerBundle, src/AdminBundle и тд

    p.s. если бандлов ожидается много, можно добавить еще уровень вложенности
    src/Organizer/CoreBundle, src/Organizer/AdminBundle и тд

    почитайте бест практики по поводу бандлов для простого приложения
    symfony.com/doc/current/best_practices/creating-th...
    для сложных эти рекомендации неприменимы.

    mycompanny:MyBundle - это стандартная заглушка со 2 версии, если просто название бандла оставить, думаю ничего не сломается
    Ответ написан
    3 комментария
  • Django vs RoR...?

    yurtaev
    @yurtaev
    Пишите то на чем удобно и что чаще всего используете (язык в том числе). Имел прекрасную возможность реализовать проект на джанге и на рельсах. Проект с большим развесистым API изначально был на джанге, потом я с горящими глазами за пару дней реализовал его на рельсах, я был в восторге от того что все есть из коробки, программирования на основе соглашений, REST full api описывается тут же в контроллере, куча батареек на все случаи жизни, слежение за зависимостями. Мне казалось дикостью что core девелоперы джанги отказывались ломать совместимость в пользу ускорения введения новых фич. Плюс руби на котором все делали кучу удобных DSL-ей на все случай жизни. Но через большое время жизни проекта я понял что мне очень не хватает опыта с рельсами, а еще больше с руби, мой основной язык работы питон + огромная волна задач на js (полноценные веб приложения с большой логикой), и когда вновь возникали задачи на проект с рельсами я чувствовал дискомфорт от того что простые задачи требовали кучу времени. Затем вновь была джанга, она уже казалась такой родной, я знаю почти все её уголки, и с большей уверенностью смогу решить на ней любые поставленные задачи. У джанги нет того многообразия батареек и фишек из коробки, поэтому стоит немного уделить внимание поиску решений задачи прежде чем писать код. Управление статикой, миграций, деплой, все решается батарейками, не хуже чем на рельсах. Когда я стал замечать рутинные задачи которые решались на рельсах, я старался находить пути решения, обычно на это уходит 5 минут поиска или кодинга (большая часть решается фабриком).
    А в настоящее время набирает просто гигантскую популярность nodejs у которой просто гигантское количество батареек аналогов которых нет не у кого.
    Я это все к тому что надо выбирать инструмент с головой, тот что более знаком, желательно написанном на основном для себя языке. Но если есть возможность то пробовать все то что приносит радость, я очень благодарен моему начальству которое дало мне эту возможность.
    Ответ написан
    2 комментария
  • Чем занимается 1C-программист?

    Jump
    @Jump
    Системный администратор со стажем.
    1C программист это человек который умеет писать код на языке платформы 1с.

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

    saboteur_kiev
    @saboteur_kiev
    software engineer
    В китае очень плохие каналы в мир, вдобавок байду активно ранжирует сайты по скорости отклика.

    Но внутри есть и нормальная скорость, просто Китай очень большой. В отличие СНГ, где наверное 80% населения живет в нескольких миллионниках, в Китае и самих миллионников больше, и вообще жилые массивы территориально встречаются чаще. Все соединить одной надежной сетью нереально, поэтому разница очень зависит от территории. Ну и про крупные миллионники сложно говорить - там население такое, что 10-гигабитные каналы не справляются.

    В общем - территориально зависит, но 10 мбит вы явно мало искали..
    Ответ написан
    1 комментарий
  • Как проверить баланс сим-карты МТС на PHP?

    copist
    @copist
    Empower people to give
    У них есть Личный кабинет и мобильное приложение. Там доступен баланс.

    А. Решение через "Личный кабинет"
    1. имитировать логин в личный кабинет с помощью curl с сохранением кук и прочей мишуры
    2. имитировать запрос в личный кабинет на страницу баланса с помощью curl
    скорее всего эта страница содержит баланс
    https://login.mts.ru/profile/header?ref=https%3A//ihelper.sib.mts.ru/selfcare/welcome.aspx&scheme=https&style=2015v2&updat&updat&updat

    3. парсить HTMl баланс через XML или регулярку
    https://monosnap.com/file/DLyZ0XcQfjQykKLxS4fVkJWP...

    Б. Решение через мобильное приложение
    1. Снифить трафик между андроидом и сервером через прокси
    2. Имитировать такие же пакеты
    3. В итоге получить пакет, в котором есть баланс
    Ответ написан
    1 комментарий
  • Как вывести компонент веб-формы в цикле news.list?

    winer
    @winer
    занимаюсь разработкой сайтов на 1c-bitrix
    Вы пытаетесь вывести внутри news.list комплексный компонент bitrix:form. Не стоит так делать. Я так понимаю, что Вам надо вывести в одном из полей формы какой то текст, зависящий от элемента $arItem в news.list. Например название товара.

    Я бы эту задачу решил так:
    1) создаем файл /ajax/form.php - в нём размещаем компонент bitrix:form.new ( в его параметрах настраиваем режим ajax - AJAX_MODE => Y и т.д.)
    2) Пишем js скрипт который будет выводить эту форму в модалку. Можно использовать fancybox или стандартную bx библиотеку . (BX.PopupWindowManager). После вывода модалки подставляем в форму нужное нам название товара.
    3) В шаблоне news.list создаем кнопку, на которую навешиваем наш js скрипт.
    Ответ написан
    Комментировать