Джейсон Ленгсторф — профессиональный веб-разработчик, специализирующийся на приложениях PHP и jQuery. Он является автором недавно выпущенного PHP для Absolute Beginners , который является экспертом в области открытого исходного кода. Кроме того, он в соавторстве с Крисом Койером написал учебник из восьми частей по созданию веб-приложения с нуля . Присоединяйтесь к нам, чтобы обсудить веб-разработку, PHP и его жизнь в целом.
1. Многие из нас могут быть знакомы с вами из-за вашей книги « PHP для абсолютных новичков». Для тех, кто незнаком с вами, расскажите нам немного о себе и своей жизни?
Короче говоря, я разработчик PHP из Миссула, Монтана. Я управляю компанией Ennui Design, которая специализируется на малом бизнесе и разработке индивидуальных сайтов. Я также в разработке front-end, что я делаю в основном с использованием jQuery.
Мне 24 года, и я работаю в веб-разработке около шести лет, и я работаю полный рабочий день около полутора лет. Я полностью самоучка, поэтому я обязан своей карьерой блогосфере и замечательным людям, которые всегда помогают на таких форумах, как W3schools и тому подобное.
Я также пытаюсь писать, и я написал несколько статей в Интернете для таких сайтов, как Smashing Magazine, CSS Tricks и Nettuts +, а также для своего собственного блога по Ennui Design. В начале этого года я получил возможность написать книгу для публикации Apress, которая вышла в октябре под названием «PHP для абсолютных новичков», и в настоящее время я работаю над новым названием для Apress, которое называется «Pro PHP и jQuery».
2. Как вы начали заниматься веб-разработкой?
Я начал заниматься веб-разработкой по необходимости. Когда мне было 18 или 19 лет, я играл в группе, и нам нужен был сайт. Когда мы начали смотреть на ценообразование, мы поняли, что не можем позволить себе построить такой для нас. Поэтому я сказал остальным парням: «Ну, я думаю, что смогу понять это».
Я попал в w3schools (после поиска «как создать сайт» в Google) и прошел курс HTML, после чего я был уверен, что являюсь опытным веб-дизайнером. Поэтому я создал этот ужасный веб-сайт, основанный на таблицах, с фреймами и встроенным стилем.
Когда я закончил с этим, я подумал про себя: «Ну, это выглядит ужасно». Поэтому я построил его снова. И опять. Примерно через пятнадцать перестроений я немного узнал о CSS и JavaScript; сайты стали выглядеть немного лучше, и я чувствовал себя довольно комфортно, создавая их.
Примерно в то же время моим друзьям понадобились веб-сайты, и я предложил создать их бесплатно. Я сделал, и они оба были довольны ими, но я понял, что обслуживание на их сайтах было действительно громоздким. Именно тогда я попал в PHP, потому что мне нужно было решение, которое позволило бы упростить обслуживание.
Поскольку я ничего не знал о системах управления контентом или о том, что существуют существующие CMS, я в итоге развернул свою собственную. Он был дырявый, неуклюжий и с плохой функциональностью, но он добился цели, и я любил его строить. Я проводил 14 часов в моей любимой кофейне, настраивая и восстанавливая ее.
После запуска сайтов двух моих друзей я получил звонок от своего первого реального клиента и понял, что на самом деле могу зарабатывать деньги на создании сайтов. Я потратил четыре года, пытаясь стать достаточно хорошими, чтобы создавать сайты на полную ставку, и, наконец, я достиг этой цели осенью 2008 года, когда уволился с работы в FedEx Kinko, чтобы работать на проектах Ennui Design полный рабочий день.
3. Каков наилучший способ изучения PHP — и каков был ваш опыт написания этой книги?
Изучение PHP похоже на изучение любого языка. Да, вы можете выполнить кучу упражнений, которые не имеют практического применения («Повторите за мной:« Cette espadon est glissante! Эта рыба-меч скользкая! »»), Но это только помогает запомнить понятия. Я думаю, что вы должны действительно погрузиться в использование языка в реальном мире, чтобы вы могли понять, как и почему он используется.
Именно такой подход я использовал, когда писал «PHP для абсолютных новичков». Мы рассмотрим основные концепции, а затем сразу же создадим реальный проект (очень простая система управления контентом).
Писать книгу было здорово для меня, потому что она заставляла меня защищать свой подход к развитию. У меня был технический, редакторский редактор и рецензент проекта, который следил за тем, как все было собрано вместе, что заставляло меня делать все правильно, без ярлыков. Научиться делать это правильно с первого раза было для меня хорошим уроком терпения. Это также поможет мне, когда я буду работать над будущими проектами с соавторами, потому что теперь у меня больше возможностей писать код с самоописанием, включая лучшую встроенную документацию, и обосновывать свой программный выбор конкретными рассуждениями.
4. Недавно вы вместе с Крисом Койером совместно с Крисом Койером написали серию из 8 статей под названием «Создание веб-приложения с нуля». На что это было похоже?
Крис Койер — человек, опускающий руки. Я трудоголик, но этому парню удается заставить меня чувствовать себя бездельником из-за того объема работы, который он выполняет постоянно.
Серия учебников была отличным способом заставить себя вернуться к ведению блога (потому что я в последнее время расслаблялся) и возможностью дать еще один реальный пример для начинающих разработчиков среднего уровня. Одно дело объяснить концепцию, но совершенно другое чудовище, когда вы пытаетесь объяснить концепцию в контексте реальной производственной площадки.
Комментарии, которые мы получили, были действительно полезными, потому что они показали нам части приложения, о которых мы не думали, например, некоторые дыры в безопасности, которые мы не рассматривали, и функции, которые действительно улучшат приложение.
Эта серия была одним из моих любимых учебных пособий, над которыми я когда-либо работал, и я надеюсь, что в будущем я смогу собрать их вместе в том же духе.
5. Можете ли вы предоставить нам какую-либо информацию о вашей новой книге «Pro PHP и jQuery»?
Pro PHP и jQuery предназначены для разработчиков среднего и продвинутого уровня, которые хотят ознакомиться с возможностями jQuery. В нем будет рассказано о создании календаря событий на основе AJAX, который будет иметь множество функций, таких как всплывающие подсказки, загрузка файлов, упорядочение событий и фотографий методом перетаскивания и другие полезные концепции.
AJAX действительно мощный и позволяет разработчикам создавать веб-приложения, которые выглядят как настольные приложения (потому что им не нужно постоянно перезагружаться и т. Д.). Развитие jQuery и подобных библиотек JavaScript сделало все эти функциональные возможности AJAX действительно доступными для разработчиков, и моя цель с Pro PHP и jQuery состоит в том, чтобы помочь читателю освоить создание первоклассных веб-приложений.
6. Вы являетесь владельцем Ennui Design, который предлагает индивидуальные веб-разработки. На что похожа твоя повседневная жизнь?
Как я упоминал ранее, Ennui Design — это название компании, под которой я делаю свою внештатную работу. Я пытался стать своего рода армией, предлагая разработку сайтов сверху вниз, от искусства и дизайна до индивидуальных систем управления контентом. Недавно я начал привлекать клиентов, которым нужны пользовательские приложения, и это было очень весело.
В этом месяце я расширяю Ennui Design и пытаюсь создать сеть коллег-фрилансеров, чтобы помочь мне справиться с нагрузкой на клиента. Я недавно пригласил Дрю Дугласа , и я очень рад работать с ним. Я все еще ищу дизайнера внешнего интерфейса, который помог бы мне с оформлением и преобразованием PSD в XHTML, так что если вы кого-нибудь знаете … 🙂
7-Какая ваша любимая платформа веб-приложений и почему?
Поскольку я никогда не знал, что существуют фреймворки для веб-приложений, я никогда не изучал ни одну из них. Я подписан на концепцию многоуровневой архитектуры , и я даже написал статью об этом для Nettuts + .
Я изучал другие шаблоны, такие как MVC, и думаю, что они великолепны, но я стараюсь не увязнуть в догмате программирования; если его легко читать, легко поддерживать и СУХОЙ по большей части, я считаю, что это хороший код.
8. Можете ли вы рассказать нам немного о ваших личных проектах?
В настоящее время я работаю над подготовкой своей CMS к выпуску с открытым исходным кодом вместе с Дрю Дуглассом и несколькими другими друзьями. Я также планирую разработать версию 2.0 цветных списков с Крисом Койером (приложение, которое мы создали в нашей серии из 8 статей «Создание веб-приложения с нуля»). У меня также есть несколько плагинов jQuery, которые я хочу использовать. привести в порядок и отпустить когда-нибудь в будущем.
Недавно я решил попробовать свои силы в дизайне продукции и основал компанию по производству одежды под названием Humblecock с парой близких друзей. Мы хотели получить качественные, ультра-удобные рубашки для себя, и мы решили, что лучший способ получить их — сделать их самим. Это совершенно новое приключение, и я до сих пор переживаю. Это был один из моих любимых веб-сайтов для дизайна, и было действительно здорово создавать физические продукты.
Мой блог, к сожалению, стал жертвой моего перегруженного графика проекта. Между загрузкой моего клиента и крайними сроками с моим издателем у меня было очень мало свободного времени. Однако, с добавлением Дрю и (надеюсь) других фрилансеров в сеть Ennui Design, я надеюсь, что у меня будет больше времени для блогов.
9. Какие ваши любимые онлайн-ресурсы, чтобы оставаться в курсе индустрии веб-разработки?
Я стараюсь не отставать от как можно большего количества блогов, правда. Если у меня будет свободное время, я постараюсь прочитать как можно больше статей, чтобы увидеть, не влияют ли какие-либо новые разработки непосредственно на какую-либо работу, которую я делаю. Некоторые из сайтов, которые я часто посещаю:
Крис Шифлетт также имеет много хороших статей о безопасности в своем бэк-каталоге, которые я регулярно использую для справки.
10. Что вы думаете о WordPress и Drupal?
Я тоже почти ничего не использовал, поэтому не думаю, что я действительно способен ответить на этот вопрос.
11. Когда вы работаете, как вы концентрируетесь при написании кода, и какой ваш любимый редактор кода?
Обычно я работаю за домашним столом, когда пишу какие-либо тексты или занимаюсь тяжелыми разработками. Однако, когда мне нужно сменить обстановку, я часто посещаю местную кофейню (на самом деле я провел там столько времени, что они заставили меня создать свой сайт ).
Я использую XAMPP , Eclipse и Firefox (с панелью инструментов Firebug / FirePHP / Web Developer) для большинства моих разработок. Eclipse основан на Java, но также имеет открытый исходный код и поддерживает все, что мне когда-либо было нужно. Я кратко поиграл с несколькими другими IDE, но потребовался бы достаточно веский аргумент, чтобы убедить меня перейти на этом этапе.
12. Как вы думаете, какое будущее ожидает PHP?
В ближайшем будущем он содержит отличные новости, такие как анонимные функции и пространства имен (с принятием PHP 5.3). Я не могу дождаться, когда хостинговые компании получат достаточно широкую поддержку, чтобы начать их использовать. 🙂
На менее конкретном уровне я думаю, что PHP и другие «веб» языки будут становиться все более и более актуальными для серьезной разработки. Весь мир движется онлайн, и веб-приложения начинают иметь такое же значение, как и нативные, если не больше. Я взволнован, чтобы увидеть, что будет дальше для PHP.
13. Какой-нибудь код любимой мозоли?
Лично я ненавижу видеть код, который растягивается. Меня действительно беспокоит, когда код пишется в виде длинной строки действий, а не разбивается на маленькие функции или методы, которые обрабатывают одно действие. Это отсутствие разделения приводит к невероятно раздутым, трудно поддерживаемым файлам, и, как правило, много повторяющегося кода. Это просто напрашивается на ошибки, когда у вас есть два куска кода, которые делают одно и то же.
В общем, я просто хотел бы, чтобы каждый писал код, как будто кто-то еще работает с вами, и ему нужно понять, о чем вы говорите. Высокомерие беспокоит высокомерие, заставляющее кого-то задуматься: «Если вы недостаточно умны, чтобы понять, как работает мой код, вы не должны быть в моем исходном коде»; Я думаю, что лучший вопрос: «Если вы недостаточно умны, чтобы писать ясный код, понятный любому функциональному разработчику, вам не следует ни с кем разговаривать».
14. Какой тип музыки тебе нравится? Какие-нибудь хобби?
Я вырос на кантри-музыке, затем начал слушать Top 40, когда стал немного старше. Я познакомился с металлом, затем с панком и хардкором, потом с хип-хопом, потом с фолком. Во всем этом я нашел что-то хорошее, но сейчас я слушаю в основном фолк / альтернативу и хип-хоп. Я провожу слишком много времени, слушая музыку, и отслеживаю ее через Last.fm.
Я остаюсь довольно занятым, поэтому у меня не так много хобби, но я прилагаю усилия, чтобы они не были отвратительными (я имею в виду, что в какой-то момент мне нужно произвести впечатление на дам, верно?). Я поднимаю вес несколько раз в неделю, и я люблю готовить. Я также большой любитель пива, и мне нравится находить новые микро-варева и специальное пиво (особенно толстые и носильщики). Я готовлю свое пиво каждый месяц или два для забавы, что гораздо веселее, чем кажется. Кроме того, нет ничего лучше, чем пить пиво, которое вы сами разливали в бутылки. Я стараюсь путешествовать как можно больше. Я планирую пару дорожных поездок, которые пройдут мимо некоторых из моих любимых пивоваренных заводов весной, и я надеюсь уехать из страны следующей осенью и немного потусоваться в Европе.
15. Какие у тебя планы на будущее?
Если я получу все, на что я надеюсь, я буду делать немного меньше с точки зрения внештатной работы и уделять больше внимания обучающему аспекту программирования. Я бы хотел продолжать выпускать подробные учебные пособия вместе с влиятельными блоггерами в сообществе, такими как Крис Койер. Я также надеюсь начать выступать на конференциях в 2010 году, если мне посчастливится получить такую возможность.
Apress был великолепен, и я надеюсь продолжить писать книги о веб-разработке. Я также хочу вернуться к написанию статей для таких сайтов, как Nettuts + (я не забыл об этой статье, Джеффри ! Обещаю!) И регулярному ведению блогов на Ennui Design.
Я также хочу попытаться вырастить Хамблкока как можно больше, если только по какой-то другой причине, кроме как, я хочу иметь возможность делать именно ту одежду, которую хочу носить.
И в какой-то момент мне придется вырастить больше общественной жизни и начать встречаться. У моей мамы случится сердечный приступ, если я продолжу приходить домой одна на Рождество. 🙂
Большое спасибо за ваше драгоценное время, Джейсон! Было приятно пообщаться с вами!
- Подпишитесь на нас в Твиттере или подпишитесь на ленту Nettuts + RSS для получения лучших учебных материалов по веб-разработке. готов
Готовы поднять свои навыки на новый уровень и начать зарабатывать на своих скриптах и компонентах? Проверьте наш родной рынок, CodeCanyon .