Этот хабратопик предназначается для всех тех, кто хочет с головой (или не очень) погрузиться в волшебный мир программирования, но пока не знает, с чего начать. Возможно, вы уже предпринимали попытки научиться программированию, однако безнадежно забуксовали.
Так получилось, что около четырех-пяти месяцев назад я решил слегка разнообразить свой досуг новым хобби и вплотную заняться веб-программированием. Как я докатился до жизни такой — это тема для совсем другой статьи, и речь сейчас пойдет не об этом. Речь пойдет о трудностях, с которыми я столкнулся, и к которым абсолютно не был готов. Возможно, этот топик поможет вам лучше подготовиться и не повторить моих ошибок.
Итак, после осознания навязчивого желания хотя бы немного да освоить это таинственное ремесло, каждый задает абсолютно логичный вопрос — «С чего же мне начать»? Ответов может быть множество — к услугам новичков скринкасты, книги, курсы, онлайн-обучение, форумы и прочее, и прочее. Учи-нехочу.
PRO 100 Урок 1 (videoHD)
И так как никакой общепринятой системы самообучения программированию не существует, можно смотреть и читать все без разбору, дни напролет. При желании, в чтении можно захлебнуться, однако для уверенного продвижения по лестнице знаний необходимо четко и эффективно расходовать свое время и силы, и если не знать с чего начать и куда двигаться — вы попросту забредете в дремучий лес, по которому можно блуждать неделями, пока, наконец, вы не выйдете на верную тропинку. Если выйдете вообще — велик шанс, что вам попросту все это дело быстро надоест.
Я и сам пошел по этому пути — скачивал тучи роликов, впридачу купил несколько книг, читал их и забрасывал, потому что мне все-равно не хватало знаний и подготовки, несмотря на то, что все материалы были предназначены для «новичков». Я постоянно гуглил разные мелочи, задавал нубские вопросы на форумах, хватая минусы, и это убивало во мне желание продолжать самообучение.
Да, любые знания и любой накопленный (нагугленный?) опыт вам, безусловно, поможет и пригодится, однако ваша цель научиться тому, чему вы хотите научиться, и увидеть мало-мальский результат в обозримом будущем ведь так?
Абсолютно все материалы, которые попадались мне на глаза, после краткого вступления немедленно бросались с места в карьер, предлагая читателю решения и примеры на заданную тему. Я чувствовал себя абсолютным двоечником в классе вундеркиндов, и постоянно сталкивался с одной и той же проблемой — авторы книг, впрочем как и любого другого образовательного материала, предполагали что я владею некоторой базой основ, которая, на первый взгляд, к непосредственному программированию не имеет никакого отношения.
Это как если вы пришли работать, скажем, крановщиком, вас в первый же день посадили в башню, и похлопали по плечу со словами «Ну, удачи!». А как же техника безопасности и базовое объяснение что делать, а чего делать не нужно? Как мне пользоваться инструментами? Что вообще у меня за инструменты в наличии? Что я должен знать перед тем как приступить к работе?
Как освоить компьютер и ноутбук быстро и легко
Статья носит сугубо рекомендательный характер, однако попадись мне подобный топик на глаза пол года назад, я бы значительно увеличил свою продуктивность, сэкономил уйму времени себе, а так же множеству людей с форумов, отвечавшим на мои абсолютно идиотские вопросы. К каждому пункту я добавил несколько ссылок, как отправных точек для начала обучения. Так как текст предназначается для абсолютных новичков (да и сам я еще таким себя считаю) — я буду изъясняться предельно просто и понятно, поэтому если вы — гуру, и вы нашли в моем тексте оплошность — судите, но не строго!
Итак, что же следует знать, перед тем как увлечься программированием?
1. Терминал
Буду с вами предельно честен. Если бы кто-либо пол-года назад сказал мне, что люди этой планеты до сих пор активно используют командную строку, даже при наличии навороченных графических интерфейсов и самых передовых ОС — я бы рассмеялся этому человеку в лицо.
Однако после начала просмотра первого же скринкаста мне было уже не так смешно — вместо распрекрасного маковского интерфейса на меня сурово смотрело черное окно, которое я, кажется, видел и раньше, в девяностых. Уже спустя считанные дни я смеялся все меньше и сдержаннее, наблюдая как парни из скринкастов умело совершают любые действия при помощи текстовых команд, о предназначении которых я не имел понятия. Сами понимаете, насколько эта проблема затормозила мой процесс обучения. Я пытался держаться, повторяя себе, что терминал — штука ненужная, и наверняка человек из следующего скринкаста будет по-максимуму использовать ярлычки и мышку — но нет, чуда не происходило, пытка продолжалась и вскоре (после того как меня заинтересовала Node.js) я сдался.
Для вашего дальнейшего успешного самообучения программированию вам необходимо научиться пользоваться терминалом. Помимо непосредственного взаимодействия с языками программирования, обучение пользованию терминалом поможет вам лучше, так скажем, понять язык компьютера и устройство файловой системы в целом, а это уже маленький шажок в нужную сторону. Более того вы скажете мне спасибо, после того как начнете обучаться по скринкастам, в которых терминал используется постоянно.
Самообучение
2. Регулярные выражения
Представьте себе, что вы решили выучить иностранный язык не вникая в его азбуку, алфавит или иероглифику. Конечно, это возможно. Но насколько это усложнит процесс и путь к пониманию сути вещей? Решение сомнительное, правда? Так вот, регулярные выражения (они же регексы, с ударением на первый слог) — это, объясняясь простым языком, в какой-то степени вспомогательная азбука любого программиста, или, выражаясь языком викисловаря — «формальный язык поиска и осуществления манипуляций с подстроками в тексте, основанный на использовании метасимволов».
Выглядеть регекс может, например, так:
Задача регулярных выражений — помочь программисту с поиском чего-либо. Сейчас объясню.
Если я в своей программе захочу найти все слова, частью которых является слово car (car, carrot, cartoon), мой регекс будет выглядеть так:
Если же меня интересует только слово car, я напишу:
Дальше — веселее. Можно фильтровать поиск через слово, через букву, исключать слова перед или же после искомого результата… Список возможностей фильтрации результатов при помощи регулярных выражений по-настоящему захватывает, и в паре с терминалом, про который я вам уже рассказал выше, эта штука просто невероятно крута. Несмотря на различающийся синтаксис отдельно взятых представителей ООП, многие из них поддерживают регексы и экономят уйму времени людям их использующим.
«Ну поиск, кому оно надо? Я же буду учиться программировать, а не искать слова!» — наверняка подумаете вы. Я вас услышал и даже понял. Так что если вы все еще сомневаетесь в необходимости заморачиваться с регулярными выражениями, просто поверьте мне на слово — они вам пригодятся. Многие книги и скринкасты используют регексы в примерах, вообще не объясняя, что происходит — авторы думают, что вы уже владеете этими азами и особенно не акцентируют внимание на разжевывании написанного.
Зубрить их совсем не обязательно, но, согласитесь, просмотр пары-тройки скринкастов на данную тематику вас явно не убъет.
Самообучение
3. Софт для разработки — знай свое оружие
Правило номер один — вы должны по-максимуму знать и владеть своими инструментами. Грамотно выбранный и изученный редактор, в котором вы вскоре обязательно начнете творить чудеса, я легко могу сравнить с превосходно подобранным самурайским мечом. Солдаты собирают и разбирают свои автоматы с завязанными глазами — вот насколько хорошо вы должны владеть софтом, которым пользуетесь! Пока вы буква за буквой пишете простую функцию, ваш враг, используя весь потенциал своего редактора, напишет несколько.
Для веб-разработки существует огромное количество програм, от простых текстовых редакторов до сложных облачных решений. В этой статье я не буду сравнивать эти редакторы между собой, вам придется сделать это самостоятельно — ведь вам с этим редактором жить, работать и смотреть на него и в горе и в радости. Я остановил свой выбор на редакторе Sublime Text 2. Помимо тонны возможностей, которыми обладает Sublime, необходимо отметить, что он условно-бесплатный и по нему существует множество отличной документации. Возможно совсем скоро, познав все хитрости Sublime и научившись подключать к нему плагины, подобная строка будет для вас обычным делом:
div>(header>ul>li*2>a)+footer>p (используется плагин Emmet, если кому интересно)
Самообучение
4. Система контроля версий
«Ну а это еще что такое?» — спросите вы. О, система контроля версий это прекрасная вещь, без которой в наши дни не обходится ни один серьезный девелопер. Википедия гласит — «Система управления версиями позволяет хранить несколько версий одного и того же документа, при необходимости возвращаться к более ранним версиям, определять, кто и когда сделал то или иное изменение, и многое другое.» Систем контроля версий существует достаточно много, поэтому сразу скажу — ниже речь пойдет исключительно о GitHub, самом большом сервисе для совместной разработки проектов.
Резонный вопрос: «Зачем мне этот Гитхаб осваивать, ведь мне пока нечего выкладывать?» А причин на то несколько. Помимо содержания собственных репозиториев, GitHub, во-первых, поможет вам осознать себя частью огромного сообщества разработчиков (возможно, кто-то из читающих сейчас ухмыльнулся, но поверьте, это действительно важно, особенно на ранних стадиях обучения!). Кроме того, вы сможете взглянуть на чужой исходный код и научитесь правильно его скачивать и «форкать» (копировать). В дальнейшем GitHub частенько будет всплывать в различных онлайн-курсах и скринкастах, и, конечно же, их авторы будут уверены в том, что вы знаете, как Гитхабом пользоваться. Поэтому если у вас найдется немного времени на неделе, сделайте себе одолжение — попробуйте Git.
Самообучение
5. История и культура
Этот пункт, скорее, вспомогательный, но если программиста которым вы восхищаетесь зовут Стив Джобс, то прошу вас, продолжайте чтение. Программирование имеет богатую и интересную историю (говорю вам как историк по первому диплому), в которой следует поковыряться хотя бы для общего образования. Занимаясь чем-либо, всегда полезно знать, откуда у этого чего-либо растут ноги. Кроме того, я искрене считаю, что без знания истории предмета невозможно полностью понять его суть, и, следовательно, достичь предельных успехов в его освоении. Поэтому если по прошествии некоторого времени такие имена, как Линус Торвальдс или же Грейс Хоппер не будут для вас пустым звуком — уважение вам и респект!
Помните — тот, кто не изучает историю, повторяет ее ошибки.
Заключение
Надеюсь, данный текст вас ни в коем случае не испугал, а наоборот, направил в нужную сторону, или же поможет в будущем избежать затруднений, которые постоянно встречаются на пути ученика. Я буду рад получить отзывы и комментарии, или же ссылки на дополнительные ресурсы, которые помогут новичкам в самообучении.
Никогда не сдавайтесь!
- новичкам
- программирование
- знание — сила
Источник: habr.com
Как пользоваться клавиатурой. Устройство клавиатуры
Нужно работать на клавиатуре, а вы чайник? Эта статья для вас. Если считаете, что не понимаете, как правильно пользоваться клавиатурой, хочу вас убедить: это очень легко исправить.
Из чего состоит клавиатура
Из пяти разных видов клавиш:
- символьные клавиши;
- специальные клавиши;
- функциональные клавиши;
- клавиши управления курсором;
- дополнительная клавиатура.
Отдельная клавиатура для компьютера немного отличается от встроенных в ноутбук. Дело в том, что ноутбук должен быть компактным. Поэтому некоторые клавиши объединены. Но в остальном отличий нет. Правильно пользоваться сможет начинающая писательница и начинающий автор.
А после прочтении этой статьи и полный чайник.
Символьные клавиши
Первое, с чем нужно научиться работать, — это пользоваться буквами и цифрами, то есть символьными клавишами (выделены зеленым на картинке).
Символьная часть состоит из трех частей:
- цифры и знаки (наверху);
- буквы (середина);
- пробел (одна длинная кнопка внизу).
Возможно вы заметили, что на одной клавише могут быть аж две буквы. В российских устройствах на одной буквенной клавише внизу русская буква, наверху — английская. Чтобы переключить с русской раскладки на английскую, нажмите и удерживайте Shift и Alt (о них отдельно поговорим позже).
То же самое касается и цифр: если удерживать одновременно клавиши Shift и Alt, то выводится знак, но если знаков на кнопке больше одного, то в русской раскладке выводится правая, как на клавише цифры 3 (результат — знак «№»). Чайникам — запомнить!
Специальные клавиши
Специальные клавиши — это клавиши помощники. О них иногда не знают не только начинающие, но и профессионалы. Разберемся, как ими пользоваться.
Alt работает не сама по себе, а только вместе с другими клавишами. Для этого нажмите Alt и, не отпуская ее, нажмите на другую клавишу. Вот например самые распространенные комбинации:
- Alt + F4 — закрывает текущее окно;
- Alt + Shift — изменяет раскладку, то есть язык;
- Alt + Tab — переключает на следующее окно.
Ctrl. Так же как и Alt, работает только в сочетании с другими. Вот самые распространенные:
- Ctrl + A — выделяет все (например, весь текст);
- Ctrl + C — копирует выделенный объект (или текст);
- Ctrl + V — вставляет то, что было скопировано или вырезано;
- Ctrl + X — вырезает выделенный объект или текст;
- Ctrl + S — сохраняет;
- Ctrl + Z — отменяет действие.
Enter подтверждает ваш выбор. Например, если вы удаляете файл, появится окошко с вопросом: «Вы действительно хотите удалить файл?». Подтверждая выбор, вы нажимаете Enter. Это альтернатива кнопок «Да» или «Ок». В текстовых редакторах с помощью Enter переходят на новую строку.
Shift используется для ввода заглавных букв. Заглавная буква — начинающая новое предложение, то есть большая. А сочетание Alt + Shift — изменяет раскладку, то есть язык, на котором вы печатаете. Уверяю, если вы это знаете, значит вы уже не чайник.
В текстовых редакторах Tab нужен для работы с красной строкой. Красная строка — начинающая любой текст. Также Tab используется для перехода к следующему элементу окна программы.
Сочетание Alt + Tab — переключает на другое окно (если имеется).
Если один раз нажать Caps Lock, СЛЕДУЮЩИЕ БУКВЫ НА ЭКРАНЕ БУДУТ ВВОДИТЬСЯ ЗАГЛАВНЫМИ, пока вы обратно на нее не нажмете.
BackSpace — удаляет символ. Одно нажатие — один символ. В некоторых клавиатурах эта кнопка выглядит как стрелка влево. Находится над Enter.
Яндекс Клавиатура на компьютер
Кнопка, которая выглядит как список на бумаге, вызывает контекстное меню, аналогично правой кнопке мыши.
Esc выводит из полноэкранного режима или отменяет действие. Если одним нажатием вы испортили работу, Esc вернет в прежнее состояние. Но не всегда, поэтому будьте аккуратны.
Функциональные клавиши
Самые верхние клавиши над цифрами от F1 до F12 — функциональные. Их функции зависят от программы, с которой вы сейчас работаете. Например F1 почти во всех программах связан со справкой или помощью. Но не обязательно. В ряде программ ее работа может отличаться.
Дополнительная клавиатура
Для того, чтобы пользоваться цифрами на дополнительной клавиатуре, нажмите Num Lock. Если этого не сделать, мы будем двигать курсором:
- 2 — переместим курсор вниз;
- 8 — вверх;
- 4 — влево;
- 6 — вправо;
- 1, она же End, — переведет нас на конец страницы;
- 7, она же Home, — верх страницы;
- 3, или PgDn, — один раз прокрутит вниз;
- 9, или PgUp, — один раз прокрутит вверх;
- Del (Delete) — удаляет символ справа.
Клавиши управления курсором
Это HOME, END, PAGE UP (PgUp), PAGE DOWN (PgDn), DELETE (Del) и INSERT (Ins) а также кнопки со стрелками. Стрелки, как правило, замечают даже начинающие пользователи и чайники, особенно дети.
Они ведь любят играть в компьютерные игры, а стрелки там — незаменимый инструмент. Клавиши управления курсором нужны для перемещения по сайту, тексту и для редактирования текста.
Возможно, вы заметили, что есть сходства с дополнительной клавиатурой. Правильно — это действительно так. Но есть нюанс: клавишей управления курсором может и не быть в ноутбуке. Придется пользоваться дополнительной (цифровой) клавишной панелью, о которой мы ранее уже говорили.
«Горячие клавиши»
Помните сочетания, которые выполняют различные действия? Например: «Ctrl + V» — вставляет то, что было скопировано или вырезано. Эти сочетания называются горячими клавишами.
Есть такие комбинации, которые одинаковы у всех, но и они могут отличаться в зависимости от программы, от версии операционной системы или от самой операционной системы. Но есть один метод узнать, какие действия выполняют горячие клавиши. Для этого — используйте меню.
Кофе и чипсы
Как кофе и чипсы связаны с нашей темой? Дело в том, что они часто находятся около нашего устройства, и, абсолютно непреднамеренно, на нее попадают. К сожалению, этим грешат не только чайники.
Тем самым клавиатура загрязняется, и появляются проблемы. В лучшем случае срок службы инструмента уменьшится, в худшем же — придется ее менять. А если у вас не персональный компьютер, а ноутбук? Думаю, намек понят.
Не забывайте, что данное устройство мы трогаем чаще других частей компьютера или ноутбука. Поэтому, там очень много микробов. Протирайте поверхность устройства спиртом один раз в месяц. Тем самым вы увеличите срок службы инструмента.
Так как же пользоваться клавиатурой правильно?
Компьютерные вычисления для детей: 12 трюков, чтобы научить их пользоваться ПК