Задать вопрос
  • Как можно обновить iframe на jQuery при нажатии на ссылку?

    nalomenko
    @nalomenko
    Руководитель отдела разработок в студии «Lava»
    Есть несколько способов

    //Обновить один конкретный iFrame
    $('#iframe')[0].contentWindow.location.reload(true);
     
    //Обновить все iFrame на странице
    $('iframe').each(function() {
      this.contentWindow.location.reload(true);
    });
    
    //Еще один способ обновить все iFrame
    $('iframe').attr('src', $('iframe').attr('src'));
    Ответ написан
    Комментировать
  • Какие тестовые задания дают на верстальщика?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Не нормально.
    Не нормально в качестве теста перелопатить реальную страницу или сверстать с нуля лендос.
    Уточнение: не нормально, если такое тестовое задание не оплачивается.

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

    @McBernar
    У вас скромный рейт. Хотя, возможно, для Чехии это нормально.

    Я работал и работаю на фрилансе уже много лет. И в штате много лет тоже работаю.
    Поэтому могу кое-что сказать.

    Минусы

    1. Все байки про фриланс — правда.

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

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

    4. Очень много мудаков среди клиентов. Со временем научишься их определять с первых же слов в переписке. Но до этого придется некоторое количество раз обжечься.

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

    6. Хорошее описание проекта, хороший продукт сам по себе — на фрилансе этого мало. Повезет, если получится удаленно вписаться в команду, которая делает или большой проект или делает много проектов на потоке. Если же это разовые проекты, то будь готов к задаче вида "ну мне вот сайт нужен с формой, сообщениями и робокассой, а ну вот еще там корзина, да".

    7. Забудь про стабильность. Сегодня ты заработал двойную зарплату, а в следующем месяце процентов 50. Нет никого, кто строго раз в две недели будет тебе перечислять деньги на карту.

    Плюсы

    1. Свобода в выборе задач и проектов. Это прям кайф.

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

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

    4. Есть возможность учиться. Не вечером после работы, днем, когда голова свежая.
    Офис эту возможность сильно ограничивает.

    5. Есть много времени и сил на свои проекты. То, до чего не доходили руки целый год офисной работы, может быть сделано довольно быстро.

    Где работать
    Попробуй везде. И на фл и на апворке есть свои плюсы и минусы.
    Но самые лучшие клиенты — это, конечно, которые приходят напрямую.
    Ответ написан
    3 комментария
  • Как конвертировать yml (xml яндекс.маркета) в CSV?

    @bik Автор вопроса
    Пока пользуюсь этим:
    <?php
    ignore_user_abort(1);
    error_reporting(0);
    header("Content-Type: text/html; charset=utf-8");
    
    	$cat = array();
    	$xml = new XMLReader();
    	$xml->open('./yml - Kopie.xml');
    		
    	while($xml->read() && $xml->name !== 'category');
    		while($xml->name === 'category'){
    			$node = new SimpleXMLElement($xml->readOuterXML());
    			$id = +$xml->getAttribute("id");
    			$name = ''. $node;
    			
    			$cat[$id] = $name;
    			
    		$xml->next('category');
    		}
    	$xml->close();			
    
    //////////////////////////////
    
    	$xml = new XMLReader();
    	$xml->open('./yml - Kopie.xml');	
    		
    	$allparams = array();
    	$idparams = array();
    	while($xml->read() && $xml->name !== 'offer');
    		while($xml->name === 'offer'){
    			$node = new SimpleXMLElement($xml->readOuterXML());	
    			$id = +$xml->getAttribute("id");
    			
    			foreach ($node->param as $param){
    				$name = ''. $param['name'];
    				$value = ''. $param;
    				$allparams[] = ''. $param['name'];				
    				$idparams[$id][$name] = $value;
    			}				
    		$xml->next('offer');
    		}
    	$xml->close();
    	
    	$allparams = array_unique($allparams);
    	sort($allparams);
    
    //////////////////////////////
    
    	$xml = new XMLReader();
    	$xml->open('./yml - Kopie.xml');
    	$flag = true;	
    	while($xml->read() && $xml->name !== 'offer');
    		while($xml->name === 'offer'){
    			$node = new SimpleXMLElement($xml->readOuterXML());
    			
    			$id = $xml->getAttribute("id");
    			$available = $xml->getAttribute("available");
    			$url = $node->url;
    			$price = $node->price;
    			$currencyId = $node->currencyId;
    			$delivery = $node->delivery;
    			$local_delivery_cost = $node->local_delivery_cost;
    			$typePrefix = $node->typePrefix;
    			$vendor = $node->vendor;
    			$vendorCode = $node->vendorCode;
    			$model = $node->model;
    			$description = $node->description;
    			$cpa = $node->cpa;
    			$weight = $node->weight;
    			$pickup = $node->pickup;
    			$c = +$node->categoryId;
    			$category = $cat[$c];
    			
    			$picture = '';
    			foreach ($node->picture as $pic){
    				$picture .= $pic .' ';			   
    			}					
    			
    			if($flag){
    				$str = '"id";"Наличие";"url товара";"Цена";"Валюта";"Доставка";"Цена доставки";"Тип";"Производитель";"Код производителя";"Модель";"Описание";"Заказ на маркете";"Вес";"url картинки";"Самовывоз";"Категория";';
    				$j = count($allparams);
    				while($j-- > 0){
    					$str .= '"'. $allparams[$j] .'";';
    				}
    				$str .= PHP_EOL;
    				$str = mb_convert_encoding ($str ,"Windows-1251" , "UTF-8" );			
    				$path = fopen("out.csv", "a+");
    				fwrite($path, $str);
    				fclose($path);
    				$flag = false;
    			}
    			
    			$params = '';
    			$j = count($allparams);
    			while($j-- > 0){				
    				$params .= '"'. $idparams[$id][$allparams[$j]] .'";';			
    			}		
    			
    			$str = '"'. $id .'";';
    			$str .= '"'. $available .'";';
    			$str .= '"'. $url .'";';
    			$str .= '"'. $price .'";';
    			$str .= '"'. $currencyId .'";';
    			$str .= '"'. $delivery .'";';
    			$str .= '"'. $local_delivery_cost .'";';
    			$str .= '"'. $typePrefix .'";';
    			$str .= '"'. $vendor .'";';
    			$str .= '"'. $vendorCode .'";';
    			$str .= '"'. $model .'";';
    			$str .= '"'. $description .'";';
    			$str .= '"'. $cpa .'";';
    			$str .= '"'. $weight .'";';			
    			$str .= '"'. $picture .'";';
    			$str .= '"'. $pickup .'";';
    			$str .= '"'. $category .'";';
    			$str .= $params;
    			$str .= PHP_EOL;
    			
    			$str = mb_convert_encoding ($str ,"Windows-1251" , "UTF-8" );			
    			$path = fopen("out.csv", "a+");
    			fwrite($path, $str);
    			fclose($path);			
    			
    		$xml->next('offer');
    		}
    	$xml->close();
    gc_enable();
    echo 'ok';
    ?>


    Предварительно сокращаю описание товаров:
    sed 's#\(<description>\).*\(</description>\)#\1'xxxxx'\2#g' test.xml > test2.xml
    Ответ написан
    1 комментарий
  • Какую книгу взять для полнейшего понимания ооп в php?

    artem90
    @artem90
    TeamLead, Developer
    Из книг посоветую начать с этих:
    Ответ написан
    Комментировать
  • Как вы понимаете (исходя из своего опыта), что на заказ (на фрилансе) откликаться не стоит?

    @wwwden
    Когда нужно отказать:

    - Если при первом разговоре заказчик говорит - "нам нужен человек", который будет делать что-то. Вместо - "нам нужен сайт, дизайн и т.п.". Значит подсознательно заказчику нужен не результат (сайт, дизайн), а человек которому будут выедать мозг.

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

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    - Представление о MVC имею. Раньше писал пару проектов на CodeIgniter, но на нём на мой взгляд мало что есть из коробки, и много времени уходит на разработку.
    С тех пор изобрели Composer, при должном желании прикручивается он и к CI в том числе :)

    - Нужен современный не заброшенный фреймворк, с достаточным количеством документации. Не обязательно на русском, но будет плюсом.
    На русском - CodeIgniter, на не русском - Laravel, Symfony и другие.

    - Хотелось бы большое количество подключаемого функционала из коробки, для экономии времени разработки. Например уже написанная логика авторизации, регистрации, восстановления пароля и разграничения по уровням доступа. Понимаю что всё равно придется немного допиливать под свои нужды, но времени это сэкономило бы кучу.
    Composer - решает 99% проблем, практически в любом фреймворке.

    - Возможность работы с различными БД из коробки
    Пока фреймворков без этой штуки не видел, но есть... Вы не поверите, Composer, что бы сменить/поставить "другой" ORM, если Вам "текущий" чем-то не подошел.

    - Поддержка кэширования из коробки. И желательно что бы была поддержка некешируемых областей при генерации страницы, а сам кэш был управляемым.
    То о чем Вы говорите, это: Varnish, Nginx+SSI и т.д. кэширование "из коробки" есть в Symfony (т.к. если его отключить, страницы может генерироваться феерически долго)

    - Не тяжелый фреймворк, в котором оптимизирован код, и который не жрёт огромное количество ресурсов на сервере. Если будет поддержка PHP7 - тоже плюс.
    По моему, любой современный фреймворк, если уже даже "Битрикс" небеизвестный до этого до этого дошел... некоторые фреймворки вообще скоро будут требовать PHP7, а не только "поддерживать".

    - Проект будет ориентировочно крутиться на nginx+php5-fpm. Думаю практически все фреймворки смогут работать в этой среде, но вдруг...
    Я пока таких "вдруг" не встречал. Если у админа голова и руки на месте - то никаких "вдруг" быть не должно. А вообще, у PHP версии 5.х, есть как минимум 3 основных "ветки", это <5.3, >=5.3 или 5.4+ и т.д., ещё кое-какие отличия были в 5.5 и 5.6, но не такие "разительные", подробности можно почитать в истории версий PHP. По этому, нужно конкретнее указывать версию, например, Laravel требует 5.6+

    - Возможность масштабирования. В принципе не обязательно, но возможно однажды будет масштабироваться проект.
    Это не возможность фреймворка - а навык программиста/админа.

    - Всякие плюшки из коробки типа каптчи, обработки и обрезки изображений и прочие приятности будут огромным плюсом и будут иметь «больший вес» при выборе, т.к. важна простота и скорость разработки.

    1. Yii2
    2. CMS + готовые модули CMS
    3. Вы не забыли, что есть... composer?!

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

    Большое спасибо за время уделенное прочтению моего вопроса, и огромное спасибо за Ваши ответы.
    Не за что! Кнопка "Мне нравиться" - сразу под сообщением :D
    Ответ написан
    4 комментария
  • Какой PHP фреймворк посоветуете для быстрой разработки проекта?

    @entermix
    Попробуйте Google Framework, ничего нового Вам не посоветуют.
    Ответ написан
    Комментировать
  • Как вы понимаете (исходя из своего опыта), что на заказ (на фрилансе) откликаться не стоит?

    @ehs
    Architect / 3d designer
    Есть еще хороший маркер - заказчик думает что лучше вас знает как делать работу, как частный случай - "This will take no more than an hour for a good professional"
    Ответ написан
    2 комментария
  • Как сделать функционал вставки моего кода на сайт другим людям, как это делает вк?

    riot26
    @riot26
    <:З )~~
    iframe или кусок js, который сделает запрос куда нужно и отобразит всё на странице
    Ответ написан
    Комментировать
  • Как защитить сайт от копирования?

    gobananas
    @gobananas
    finishhim.ru
    1. Отсылать фотографию вёрстки и фотографию кода (если хотят посмотреть валидность)
    2. Показывать упрощённую вёрстку без скриптов
    3. При сдаче сдавать 1 страницу, брать оплату, сдавать ещё 1 ещё оплата
    4. Не работать с теми кому не доверяешь ))
    5. Ну про предоплату я не говорю, хотя категорическое отсутствие предоплаты бывает странно. Я когда от имени компании заказываю вёрстку (несложные проекты) всегда вносим около 30% как предоплату, понятно что даже если что-то пойдёт не так, то для компании это небольшие деньги.
    6. Демонстрация своего экрана
    Ответ написан
    Комментировать
  • Как и где собрать команду для стартапа?

    @semki096
    Мне кажется что проблема всех провальных начинаний кроется в молодости, если человек думает что мир крутится вокруг него. Вот когда приходит понимание что ты есть диполь дрожащий в этом мире, тогда может что то получиться. Пример с фейсбуком не катит, у него дедушка был то ли Рокфеллером то ли Фордом.
    Ответ написан
    Комментировать
  • Как и где собрать команду для стартапа?

    @imikh
    то есть работать они будут в свободное время за возможную долю из прибыли конечного продукта

    не будут
    Ответ написан
    Комментировать
  • Как и где собрать команду для стартапа?

    noby2000
    @noby2000
    Founder.
    Найти профессионалов вряд ли получится, потому что зарплаты им платить в соответствии с рынок просто нет возможности, то есть работать они будут в свободное время за возможную долю из прибыли конечного продукта.

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

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Делайте с помощью json-ld и 90% оптимизации считайте уже сделали!
    Здесь статья с примерами разметки.
    Ответ написан
    3 комментария
  • Как и где собрать команду для стартапа?

    @FoxInSox
    то есть работать они будут в свободное время

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

    @Sn0wSky
    Куча js в одну строку делается для экономии килобайтов, а не для "скрытия". Разве что он возможно будет обфусцирован, но это вряд ли остановит того, кому реально очень хочется.
    HTML'a не может не быть, если только они всё в канвас не запихали, что тоже html :)

    Абсолютных методов не бывает и быть не может
    Ответ написан
    1 комментарий
  • Как максимально быстро можно переиндексировать сайт?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    1. Пересоздайте карту sitemap.xml
    2. Удалите и загрузите заново путь к этому файлу в webmaster.ПОИСКОВИК.ltd
    3. Отправьте пинг pingsitemap.com
    Ответ написан
    Комментировать