• Монетизация сервера. Как?

    @RadmirZ
    Делаем интернет-магазины на движке minicart.su
    Мы продаем хостинг по 5 т.р. в год, примерно 50-60 клиентов и вроде ничего, отбивается =)
    Ответ написан
    2 комментария
  • Как вытащить переменную за рамки функции в JavaScript?

    MarcusAurelius
    @MarcusAurelius Куратор тега Node.js
    автор Impress Application Server для Node.js
    Как раз этого делать не нужно. Вместо этого нужно понять идею асинхронного программирования. Все колбэки исполняются не по месту своего объявления, а тогда, когда к ним приходят данные, поэтому в Вашем примере кода сначала происходит console.log(items_list); а уже потом items_list = data И это хорошо, потому, что не происходит ожидания исполнения коллбеков, не происходит блокирования потока исполнения. Всю синхронную логику обработки полученных в коллбеке данных Вы можете написать прямо в коллбеке, а если нужно реализовать последовательный или параллельный вызов нескольких ассинхронных запросов (все, что связано с вводом/выводом, доступом к базе и файлам, например), то это можно сделать разными способами, самые популярные из них, это библиотека async и промисы. Я использую https://github.com/caolan/async Например:
    var async = require('async');
    var items_list, users_list;
    async.parallel([
        function(callback) { // делаем первый запрос к базе
          db.model('items').find({}, function (err, data) {
            items_list = data;
            callback(); // данные получены, возвращаемся
          });
        },
        function(callback) { // параллельно делаем второй запрос к базе
          db.model('users').find({}, function (err, data) {
            users_list = data;
            callback(); // данные получены, возвращаемся
          });
        }
    ],
    function() {
      // когда оба запроса уже завершены, то мы попадаем сюда
      console.dir({ items: items_list, users: users_list });
    });
    Ответ написан
  • Как найти работу джуниору?

    viktorvsk
    @viktorvsk
    Из языков знаю C++, Java, C#, Python, неплохо ориентируюсь в Unix, базах данных.

    Для начала сами для себя проясните, что это неправда. Плюсы "знает" Страуструпп. А вы, наверняка частично, знакомы с синтаксисом. А Торвальдс "неплохо" ориентируется в никсах.

    Во-вторых, проблема в том, что у тех, кто работает с кодом, сегодня не может не быть опыта работы. Книги, форумы, бесплатные онлайн курсы, бесплатные виртуальные серверы, открытое ПО, совместная разработка ...

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

    edinorog
    @edinorog
    Троллей не кормить!
    а нету советов. нету тупо и всё. ногами ходишь .. голосом говоришь и лыбу давишь. а не тратишь время на говорильню на ресурсе для помощи в косяках.
    Ответ написан
    1 комментарий
  • Как повторить фид вк?

    rinat_crone
    @rinat_crone
    Chef Technical Officer
    Я, конечно, желаю Вам роста, но врядли у Вас будет 100 000 000 записей в одной табличке в обозримом будущем (не логи ж там храните, ну). Поэтому не занимайтесь преждевременной оптимизацией, используйте одну таблицу в адекватной БД (рекомендую PostgreSQL) и правильные индексы. Это решит все Ваши проблемы с выборками и освободит время для развития продукта.

    Успехов!

    P.S. Храним миллионы записей, неразрешимых проблем или проблем масштабирования в будущем не видим.
    Ответ написан
    Комментировать
  • Какую серверную технологию выбрать для работы на фрилансе?

    @RadmirZ
    Делаем интернет-магазины на движке minicart.su
    PHP потихоньку улучшается и новые версии уже гораздо лучше чем раньше и сейчас это наиболее распостраненный язык для сайтов. Мы бы с радостью писали на питоне и работали с монго или чем нибудь другим новомодным, но когда 95% клиентов это php и mysql то выбора особо нет =)
    Ответ написан
    Комментировать
  • Как правильно работать с ветками в git?

    dizballanze
    @dizballanze
    Software developer at Yandex
    Бранчи обособленные - это да, суть ошибки в том, что есть несохраненные изменения и даже не очень важно, чтобы изменялись одни и те же файлы. Переключится можно или потеряв все изменения или сохранив их выполнив коммит/добавив в stash. По-этому гит предлагает вам решить, что делать с этими изменениями и только потом позволит переключиться на другой бранч.
    Ответ написан
    Комментировать
  • Как правильно работать с ветками в git?

    v_decadence
    @v_decadence
    Эта ошибка значит, что у Вас в рабочем дереве есть измененные файлы, которые будут перезаписаны (то есть изменения будут утеряны) в процессе переключения на нужную ветку. Git не даёт Вам потерять свою работу.
    Вам нужно сделать либо коммит, чтобы их зафиксировать и отчистить рабочее дерево перед checkout, либо stash, чтобы оставить работу на потом.
    Ответ написан
    5 комментариев
  • Эффект одинокой обезьяны: как он правильно зовётся?

    @386DX
    Есть идеально паралелящийся конвеер, например, разгрузка кирпичей 5 рабочими. Увольнение 1 рабочего приведет к снижению КПД на 20%

    Есть идеально непаралелящийся конвеер, например, один месит глину (не в том смысле), другой лепит чашку, третий раскрашивает и один не может заменять другого. Увольнение любого приведет к снижению КПД на 100% и остановке производства.

    Есть смешанные конвееры. когда верстальщик может за дизайнера, но хреново.

    нелинейно проседает
    А почему оно должно проседать линейно? См выше.

    ускорить дело за счёт качества.
    один не может выполнять чужие обязанности, очевидно что качество падает. Если бы мог, то качество тогда не падало и падения КПД не было бы вообще никакого, не линейного, ни 100%

    перекрёстного опыления
    с девушкой давно были?

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

    evnuh
    @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    PHP + любая БД + фреймворк - самое быстрое начало. Фреймворк возьмите самый примитивный, который реализует MVC, роутит маршруты и немножко шаблонизирует. Есть микро-форки популярных фреймворков типа Silex (Symfony) silex.sensiolabs.org и Lumen (Laravel) lumen.laravel.com
    P.S. Wordpress ни в коем случае не берите, это готовая cms, а чтобы её допиливать нужно 1) жопу вместо головы 2) не для новичка совсем.
    Ответ написан
    7 комментариев
  • Какова роль интерфейсов в ООП?

    Приведу пример на коленке. Хотим, например, написать абстрактную файловую систему. Для начала, определим интерфейс, для ФС:

    interface FileSystemInterface {
      public function write($file, $data);
      public function read($file);
    }


    Затем, хочу реализацию интерфейса ФС для работы с файликами:

    class OSFileSystem implements FileSystemInterface {
      public function write($file, $data) {
         // открываем файлик, пишем данные
      }
    
      public function read($file) {
        // открываем файлик, возвращаем данные
      }
    }


    Вдруг, кому-то захотелось файловую систему в облаке. Окей, не проблема, реализуем это:
    class CloudFileSystem implements FileSystemInterface {
      public function write($file, $data) {
         // открываем соединение с облаком, пишем данные
      }
    
      public function read($file) {
        // открываем соединение с облаком, возвращаем данные
      }
    }

    Пусть у нас есть кой-то код, работающий с файловой системой, назовем его "Хранилище файлов". Пусть он выглядит примерно так:

    class FileStorage {
      protected $Fs;
      
      public function __construct(FileSystemInterface $Fs) {
        $this->Fs = $Fs;
      }  
    
      public function saveFile() {
        $this->Fs->write('file.txt', 'file data');
      }
    
      public function getFile() {
        return $this->Fs->read('file.txt', 'file data');
      }
    }


    Отлично! Теперь мы можем хранилищу файлов отдать любой объект с реализованным интерфейсом FileSystemInterface. Пример:

    // Хранилище файлов работает с файловой системой ОС:
    $FS = new OSFileSystem();
    $FileStorage = new FileStorage($Fs);
    $FileStorage->getFile();
    
    // Хранилище файлов работает с файловой системой в облаке:
    $FS = new CloudFileSystem();
    $FileStorage = new FileStorage($Fs);
    $FileStorage->getFile();


    Использование интерфейса, в данном случае. позволяет нам писать только реализацию работы файловой системы, а бизнес-логика, работающая с файловой системой никак не меняется, она знает, что в любом случае файловая система реализует интерфейс FileSystemInterface и может без опаски использовать методы этого интерфейса.
    Ответ написан
    14 комментариев
  • Из математика в front-end разработчика. С чего начать?

    globuzer
    @globuzer
    gezgrouvingus progreszive ombusgrander greyderzux
    мне кажется вам прямая дорога в data-science, data mining, machine learning, neuro-technology, и подобные околонаучные и основанные на математике вещи, притом не фриланс, а нормальные штатные конторы, занимающиеся серьезными вещами, притом не только в РФ, но и за рубежом, возможно удаленная работа. и интересно, и близко к вам по направлению и высокооплачиваемо.
    а зачем вам веб? менять шило на мыло, притом с этим мылом вы будете отстовать от других специалистов, кто в этой области уже давно. зато с математикой в области обработки данных вы будете на равне, а то и может быть впереди остальных, у кого мало математического опыта. единственное вам нужно поднатаскаться в программировании, алгоритмах, языках Python, C, C++, C#, R, Statistica, Wolfram, параллельным вычислениям, все что наукоемкое....
    Ответ написан
    3 комментария
  • Из математика в front-end разработчика. С чего начать?

    @Espleth
    И вот скажите, нафига вам фронт-энд? Вы бросаете математику потому что она вам надоела, или потому что вы не можете ей зарабатывать нормально? Судя по посту - второе, а значит С++ в руки и идите пилить алгоритмы, где нужна математика. Всякие Яндексы и Гуглы таких любят, и платить будут хорошо.
    Ответ написан
    4 комментария
  • Дополнительные навыки - "запасная профессия"?

    @olexandr7
    Сертификаты, дипломы... Дружище, ты не в ту область идешь, тут полизать начальству недостаточно, тут надо учиться.
    Ответ написан
    1 комментарий
  • Input[type=text], Вопрос про выравнивания текста?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    input не предназначен для ввода текста более чем в одну строку. Используйте textarea.
    Ответ написан
    2 комментария
  • Какую литературу выбрать по php и как развиваться далее в веб-программирование?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Все старо как мир. Читаем мануал. Там есть все. Да и написано в целом понятно.
    php.net/manual/ru/index.php
    И знакомимся с современной разработкой getjump.github.io/ru-php-the-right-way
    И пишем свои велосипеды.
    Ответ написан
    Комментировать
  • Как правильно запускать приложения в терминале Ubuntu 14.10?

    @FireGM
    Надо запускать
    ./myprogramm
    В вашем случае
    ./project3
    Ответ написан
    Комментировать
  • Как вставить пробел через каждые 4 символа?

    @misc1 Автор вопроса
    <?php
     
    $str = "1234123412341234";
    echo chunk_split($str, 4, ' ');
    Ответ написан
    Комментировать