Задать вопрос
  • Простая библиотека на чистом javascript для изучения внутренностей?

    backbone.js
    underscore.js

    комментариев больше чем кода, наслаждайся :)
    Ответ написан
    2 комментария
  • Как учить Node.js?

    alexbaum
    @alexbaum
    JS-разработчик, наставник.
    Посоветую найти ментора (наставника, мастера) и сделать совместно какой-нибудь несложный проект. Будет вдвойне продуктивнее, если этот проект будет в интересующей вас предметной области — каталог, игра, афиша, калькулятор стоимости отпуска и тд.
    Ответ написан
  • Почему фрилансеры готовы общаться только в чате?

    Потому что не существует вещей, которые голосом объяснить было бы быстрее и проще. Гундеть в чате 30 минут или написать большой структурированный месседж за 5 минут, в котором будет все необходимое - что проще и быстрее? Разработчик прочитает, обдумает (и его никто не будет переспрашивать "ну что, как сделаем-то?", "чего молчим?") и напишет такой же структурированный ответ, с уточнениями по каждому неясному пункту.

    Видеопрезентации в 95% случаев заканчиваются тыканьем курсора в какую-либо область сайта и вещанием за кадром "ну вот тут видите, вот это вот нужно вот так переделать". Разработчики не тупые, и понимают задачу (при грамотной ее постановке) еще до созвона.

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

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

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

    Исключение - вступительная беседа минут на 5-10, без объяснения технических деталей, просто для знакомства, ну и, если имеем дело с командой, мит-апы, конференции, где действительно формат с несколькими участниками порой требует видео и звука.
    Ответ написан
    Комментировать
  • Почему фрилансеры готовы общаться только в чате?

    sadisme
    @sadisme
    font-size:30rem
    Всё просто. В 99% ситуаций общения голосом, желают типичные "гуманитарии", которые от темы разработки бесконечно далеко. Ты им говоришь "напишите ТЗ", а они в ответ "давайте я лучше вам всё по телефону расскажу". Они думают если не разбираются в вопросе и не могут ТЗ написать, то уж голосом точно всё объяснят как надо. И не дай бог вам согласиться (а просят как правило настойчиво, ибо самим лень разбираться в вопросе и что-то писать), вынесут вам мозг по полной.
    Ответ написан
    6 комментариев
  • Как растянуть абсолютно позиционированный сайдбар по высоте на 100%?

    @WQP
    Через js вычисляй высоту и приписывай её к блоку.
    Высота b-aside-left = высоте b-main content-width

    Нужен где-то clearfix https://yadi.sk/i/fHORod9gtpMuP
    Ответ написан
    5 комментариев
  • Как организован workflow фронтенд разработчика?

    sabramovskikh
    @sabramovskikh
    Давай так.
    Бери PSD шаблон небольшого лендинга.
    Открываешь в фотошопе, сохраняешь все картинки из него.
    Делаешь папку проекта где будут index.html style.css и папка с картинками.
    В голове делишь на блоки - верхнее меню, слайдер, первый блок, второй блок. Делаешь код html для меню, делаешь для него стили в style.css и так по очереди. Описал один блок в html, написал для него css.
    Сейчас тебе больше ничего не надо, только картинки, html и css на самом базовом уровне, никакой адаптации, никаких saas less gulp b прочего не надо.
    Качаешь для хрома расширение pixel perfect и выравниваешь все блоки как в дизайне.

    Так ты делаешь один лендинг, один корпоративный сайт и один интернет магазин. Сам функционал тебе делать надо.
    Каждый проект заканчиваешь до конца, пока все не будет по дизайну. Будут вопросы пиши на тостер. Закончишь пиши на тостер, проси оценить верстку, только выкладывай куда-нить на бесплатный хостинг, работаешь над тем, что посоветует.

    Далее уже только после всего этого можешь на лофтблог посмотреть, там есть уроки по разным технологиям фронтэнда
    Ответ написан
    2 комментария
  • Как организован workflow фронтенд разработчика?

    serjikz
    @serjikz
    web-developer
    Давайте по пунктам постараюсь рассказать, как вообще надо работать во front-end.
    1. Вы должны научиться думать блоками (блоками в потоке, выпадающими из потока, flex-блоками и тд и тп). Научиться можно только когда вы поймете как на самом деле надо верстать.
    2. Начните с простой вёрстки. Возьмите макет в .psd (80% работы над каждым сайтом вы будете пользоваться PhotoShop и если вы его не знаете хотя бы на предбазовом уровне - печаль беда), импортируйте оттуда все нужные вам картинки ну и начинайте верстать шаблон поблочно, смотря где какой цвет шрифта, размер, жирность, размер блока, фон этого блока и тд и тп.
    3. Зачем вы себе морочили голову gulp, sass, bootstrap когда ещё верстать даже нормально не умеете - я увы не понимаю. Вам ни один из этих инструментов не поможет пока вы не будете уметь именно верстать. На данный момент не думайте о технологиях, структуре и тд и тп. Просто сверстайте хоть какой-нибудь макет хоть как-то.
    4. Общайтесь с людьми, которые вам могут помочь продвинуться в этой сфере. Таковых крайне много. Можете ко мне в скайп добавиться и узнавать некоторые вещи, можете к другим, к кому угодно фактически, наверно 60-70% верстальщиков с удовольствием поделятся с вами своим опытом
    5. Пишите код аккуратно. Был тут недавно вопрос, в котором человек предоставил код, а там ни{ } нету, ни отступов нормальных нет, ну и половина ; просто потеряны, а в html теги применяются не по назначению вовсе. Нельзя так делать ни в коем случае, иначе ваш уровень не поднимется с уровня плинтуса.
    6. Файловая структура: папки css images js и на уровне с этими папками лежат файлы .html либо .php всё. Если говорить о препроцессорах и сборщиках - не лезте пока в это, потом узнаете как только научитесь нормально верстать. Я думаю нет смысла объяснять что в папках тех должно лежать. Если вы считаете себя особенным - можете распределять внутри images картинки по папкам на составляющие, к примеру сделать папку отзывов, папку галерей каких-нибудь и тп, но я чаще так не делаю, не хочу чтоб дополнительные символы засоряли мне код и ухудшали читаемость.
    7. Связывать между собой html и css судя по всему вы и так уже умеете и привязывать к ним js. Не знаю что вам мешает сверстать любой сайт если вы понимаете как устроены эти 3 технологии (а на них по факту всё и держится).

    Итог: Забудьте про sass, gulp и прочее пока не сверстаете шаблонов 10, эти технологии вас никак не ускорят и никак вам не помогут пока вы не будете уметь просто верстать с шаблона .psd и писать нужные скрипты на js или jQuery хотя бы. Научитесь немного фотошопу и занимайтесь практикой. Найти те самые .psd вообще не проблема, их куча бесплатных в интернете.
    Ответ написан
    2 комментария
  • Что делать дальше после изучения основ javaScript + jquery?

    Rou1997
    @Rou1997
    Доброго вам времени суток, Андрей Рысь !

    Первое правило Junior Front-End разработчика, и разработчика вообще - это выполнение задач от руководства или заказчиков.
    Использование конкретных инструментов - jQuery, JavaScript, Angular, Brainf*ck - задается требованиями конкретного руководителя или заказчика, либо остается на усмотрение разработчика (если пишем с нуля), который в любом случае смотрит на задачу, и никогда не определяется числом голосов в интернет-холиварах, где всегда одни за легкое и простое, другие за глубокое, универсальное, но тяжелое, и все друг друга ненавидят!

    Поэтому, чтобы понять куда двигаться дальше, необходимо изучить эти самые требования руководства и заказчиков, никто в здравом уме не будет против того, что вы лично поинтересуетесь, чем они занимаются и как к ним устроиться, а не ограничитесь текстом вакансии или "треда" на фриланс-бирже.
    Чтобы проибрести опыт работы - необходимо работать! Первым блин - всегда комом! Удачи!!!
    Ответ написан
    3 комментария
  • Каков будет правильный выбор биржи для начинающего верстальщика?

    werty1001
    @werty1001
    undefined
    есть ли смысл идти на русские фриланс биржи

    Если нет проблем с английским, очевидно - нет.

    можно ли добавлять в своё портфолио сайты сверстанные для себя, т.е. не настоящие проекты

    Да. Мол вот я сверстал, дизингер вот такой то и ссылка.

    не будет ли проблем с правовыми вопросами из-за того что я использую чужие(хоть и бесплатные) psd шаблоны

    Если продавать не будете или приписывать себе авторство, то все будет норм.
    Ответ написан
    Комментировать
  • Что значит "опыт верстки под битрикс, вордпресс и т. д."?

    SV0L0Ch
    @SV0L0Ch
    Разработчик специализируюсь на Bitrix и Wordpress
    В большинстве случаев верстка под CMS это верстка с учетом особенностей движка и его "требований" по стилям.
    Пример из жизни - для сайта на битриксе была сделана верстка. При натяжке оказалось, что прописанный в css фон сайта появляется в визуальном редакторе битрикса из-за пересечения стилей. После того как в шаблоне сайта был переименован основной контейнер и соответствующий стили, все стало нормально.
    Т.е. ваша верстка не должна перекрывать стандартные стили служебных частей движка.
    Ответ написан
    Комментировать
  • Как работает функция .toFixed() в javaScript?

    Stalker_RED
    @Stalker_RED
    >> Как работает
    Хреново он работает. Хотие точность - используйте Math.Round()

    Демка: jsfiddle.net/Stalk/5spu017s/1
    Ответ написан
    2 комментария
  • Фрилансеры, какие способы продвижения себя вы используете?

    noys
    @noys
    красноглазик
    В дополнение к советам выше рекомендую пиарить себя не только в онлайне, но и в оффлайне. Тем самым можно убить много зайцев одним выстрелом:
    -- новые знакомства
    -- практика общения
    -- новые впечатления
    -- сарафанное радио (для этого надо уметь общаться, быть профессионалом, не косячить и не срывать сроки, быть вообще компетентным и пунктуальным товарищем даже в самых казалось бы незначительных мелочах - будьте совершенны и достигайте еще большей степени совершенства).
    -- обретение союзников
    -- взаимовыручка
    -- совместный досуг
    Ответ написан
    Комментировать
  • Чем скачать yandex-плейлист целиком?

    написал php-скрипт
    <?php
    
    const MP3_DIR = '/drive2/Dropbox/backup/mp3/';
    
    require_once __DIR__ . '/vendor/autoload.php';
    
    $curl = new \Zelenin\Curl();
    
    $playlist_url = 'http://music.yandex.ru/?ncrnd=6537#!/users/Muz-winamp/playlists/1046';
    
    preg_match_all( '/users\/(.*)\/playlists\/(.*)/isu', $playlist_url, $matches );
    
    $owner = $matches[1][0];
    $playlist_id = $matches[2][0];
    
    $response = $curl->get( 'http://music.yandex.ru/get/playlist2.xml?kinds=' . $playlist_id . '&owner=' . $owner );
    
    $playlist = json_decode( $response['body'], true );
    
    $playlist_title = $playlist['playlists'][0]['title'];
    
    $tracks = implode( ',', $playlist['playlists'][0]['tracks'] );
    
    $response = $curl->get( 'http://music.yandex.ru/get/tracks.xml?tracks=' . urlencode( $tracks ) );
    
    $tracks = json_decode( $response['body'], true );
    $tracks = $tracks['tracks'];
    
    $playlist_dir = MP3_DIR . $playlist_title;
    if ( !file_exists( $playlist_dir ) && !is_dir( $playlist_dir ) ) {
    	mkdir( $playlist_dir );
    }
    
    foreach ( $tracks as $track ) {
    	$artist =  $track['artist'];
    	$title = $track['title'];
    
    	$response = $curl->get( 'http://storage.music.yandex.ru/download-info/' . $track['storage_dir'] . '/2.mp3' );
    
    	$xml = new DOMDocument();
    	$xml->loadXML( $response['body'] );
    
    	$host = $xml->getElementsByTagName( 'host' )->item(0)->nodeValue;
    	$ts = $xml->getElementsByTagName( 'ts' )->item(0)->nodeValue;
    	$path = $xml->getElementsByTagName( 'path' )->item(0)->nodeValue;
    	$s = $xml->getElementsByTagName( 's' )->item(0)->nodeValue;
    	$n = md5( 'XGRlBW9FXlekgbPrRHuSiA' . substr( $path, 1 ) . $s );
    
    	$mp3_url = 'http://' . $host . '/get-mp3/' . $n . '/' . $ts . $path;
    	
    	//echo $mp3_url . PHP_EOL;
    
    	$response = $curl->get( $mp3_url );
    	$mp3_name = addslashes( $artist . ' - ' . $title . '.mp3' );
    	echo $mp3_name . PHP_EOL;
    	file_put_contents( MP3_DIR . $playlist_title . '/' . $mp3_name, $response['body'] );
    }
    Ответ написан
    21 комментарий