• Каков план личностного развития JavaScript программиста с нуля?

    @Shetani
    www.codecademy.com/tracks/javascript
    https://www.codeschool.com/paths/javascript
    John Resig, Bear Bibeault "Secrets of the JavaScript Ninja"
    Douglas Crockford "JavaScript. The Good Parts"
    Стефанов С. "JavaScript. Шаблоны"
    Дэвид Херман "Сила javascript"
    Ответ написан
    1 комментарий
  • Случайно раз оставил при 100% батареи на зарядке на всю ночь ipad mini, могло от одного раза что-нибудь случиться?

    C телефоном всё будет в порядке, а с Вами наверное нет. Паранойя - весь прогрессивная...
    Ответ написан
    2 комментария
  • Как сделать портфолио?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Все просто: jsfiddle.net/b33wT

    <div class="menu">
        Выбираем:
        <button class="btn" data-type="design">Дизайн</button>
        <button class="btn" data-type="html">Верстку</button>
        <button class="btn" data-type="php">Программирование</button>
        <button class="btn" data-type="all">Всё</button>
        <button class="btn" data-type="none">Ничего</button>
    </div>
    
    <div class="portfolio">
        <div class="item type_design">Дизайн 01</div>
        <div class="item type_design">Дизайн 02</div>
        <div class="item type_design">Дизайн 03</div>
        <div class="item type_html">Верстка 01</div>
        <div class="item type_html">Векстка 02</div>
        <div class="item type_html">Верстка 03</div>
        <div class="item type_php">Программирование 01</div>
        <div class="item type_php">Программирование 02</div>
        <div class="item type_design type_html">Дизайн + Верстка 01</div>
        <div class="item type_design type_html">Дизайн + Верстка 02</div>
    </div>


    var $buttons = $(".btn"),
        $items = $(".item"),
        type;
    
    $buttons.on("click", function () {
        type = $(this).data("type");
        selectItems();
    });
    
    var selectItems = function () {
        switch (type) {
            case "all":
                $items.show();
                break;
            case "none":
                $items.hide();
                break;
            default:
                $items.hide();
                $items.filter(".type_" + type).show();
                break;
        }
    };
    Ответ написан
    4 комментария
  • Каков план личностного развития PHP программиста с нуля?

    somenumboola
    @somenumboola
    Team Lead in B-online Solutions
    Буду исходить из "дано" задачи "PHP программист" и из того что автор вопроса стремится заниматься сугубо back-end программированием. Заранее прошу прощения, я несколько увлекся
    Итак:
    1. Установка сервера (Open Server, Xampp, Denver), на начальном уровне. (просто из exe)
    2. Общие принципы.
    2.1. Типы данных.
    2.2. Переменные.
    2.2.1. Работа с переменными по ссылке.
    2.2.2. Методы объявления и уничтожения переменных.
    2.3. Управляющие конструкции (если знаком, то особенности синтаксиса в рамках языка).
    2.3.1. Условия.
    2.3.2. Циклы.
    2.4. Конструкции вывода(print, print_r, echo).
    2.5. Конструкции отладки и управления выполнением(var_dump,die,exit,break в циклах, пустой return;).
    2.6. Пред определенные глобальные переменные($_GET,$_POST,$_REQUEST,$_SERVER), константы зарезервированные под модификаторы (static, function, const, $this)
    2.7. Особенности версий 5.3, 5.4.
    2.7.1. Анонимные функции.
    2.7.2. Замыкания.
    2.7.3. Особенности объявления массивов.
    2.7.4. Пространства имен.
    3. HTTP протокол.
    3.1. Заголовки входящие.
    3.2. Заголовки исходящие.
    3.3. Процесс общения.
    3.4. Метод php “header(…)” в контексте темы.
    3.5. Глобальная переменная $_SERVER[] в контексте темы.
    4. Установка сервера на среднем уровне (основы файла .htaccess и RewriteRule)
    5. Процедурное программирование.
    5.1. Математические методы.
    5.2. Оперирование типами.
    5.2.1. Методы оперирования массивами (array_values,array_keys,array_map и т.д.)
    5.2.2. Методы оперирования строками (strlen,substr и т.д.).
    6. ООП.
    6.1. Классы.
    6.1.1. Инкапсуляция(public,protected,private). Понимать разницу.
    6.1.2. Наследование.
    6.2. Интерфейсы.
    6.2.1. Имплементация интерфейсов.
    6.3. Абстрактные классы.
    6.4. Полиморфизм.
    6.5. Магические методы.
    6.5.1. Базовые (__construct,__get,__set,__destruct)
    6.5.2. Расширенные (__invoke,__serialize,__isset)
    6.5.3. Разобраться когда стоит применять магические методы а когда это плохая практика.
    7. Библиотека SPL, и расширение поведенческих возможностей классов за ее счет.
    8. Базы данных.
    8.1. SQL
    8.2. Примитивный уровень общения с БД. (mysql_connect,mysql_close,mysql_query).
    8.3. Средний уровень общения с БД(PDO и другие кастомные библиотеки).
    8.4. Высокий уровень (ActiveRecord,DataAccessObject,ObjectRelationMapping).
    8.5. NoSql БД на примере MongoBD (настоятельно рекомендуется, но не обязательно).
    9. Фреймворки. На мой вигляд можно начать с Kohana. Сужу по уровню вхождения стажеров которых видел и отсутствию пространств имен с которыми по первах могут возникать проблемы.

    И главное, Внимание! Личностные качества.
    - Усидчивость.
    - Владение Google при оттачивании темы или сложной задаче на уровне, когда поисковик видит в пользователе не то что DDOS а полноценный физический краш. тест.
    - Не брезгливость. Умение заставить себя разбираться в гов… хм. Нелицеприятных дебрях.
    - Збагойствие. Отсутствие паники при различных ошибках и не состыковках. Всегда остыть и попробовать снова, но по другому.
    Ответ написан
    5 комментариев