Статьи

Дэн Чейл, отключен.

Учитывая, что Дэн когда-то управлял RubySource, и я уже нанес пару слов на имя на одном собрании RORO пару недель назад, было действительно здорово узнать его лучше в выходные. Кроме того, я чувствовал, что название Unplugged было оправданным, так как он играл на акустической гитаре в течение выходных. Он такой же дружелюбный, как и высокий, который выше среднего, поэтому он был рад ответить на некоторые вопросы для нас!

Расскажи нам немного о себе, Дэн.

Я начал программировать, используя BASIC, когда мне было шесть лет, я отчасти продвигался от базового C, Pascal, Visual Basic до тех пор, пока не обнаружил Интернет примерно в 95-м и не подумал «правильно, это для меня». Начал создавать статические сайты, узнал о PHP в 1999 году, а затем открыл Ruby около пяти лет назад. Я писал код большую часть своей жизни, и, похоже, я в этом хорош, поэтому я решил сделать из этого карьеру.

В частности, как долго вы работаете над проектами Ruby / Ruby on Rails?

Около четырех-пяти лет я помню, как проверял один из первых бета-релизов Rails — 0.8 или что-то в этом роде — думал, что это было довольно круто, а затем приступил к работе и попытался реализовать его в PHP. Затем я понял, что мне, вероятно, будет лучше, если я использую Rails напрямую. Поэтому я сел, выучил Rails и с тех пор не оглядывался назад.

Вы дали некоторое представление раньше, но с какими другими языками вы были глубоко связаны?

PHP, я провел пять лет как разработчик PHP, это был, пожалуй, лучший материал, к которому у меня был доступ в то время, я много с этим делал. До этого, HTML и CSS, я использовал CSS, так как он впервые был доступен в IE3. Я помню, когда Netscape 1.2 выпустил фоновые изображения, и я был шокирован тем, как это круто. Примерно в то же время я также занимался Visual Basic, когда учился в школе. А до этого я учил себя Си и Бейсику, немного Паскаля для школы, так что всего понемногу.

Что тебе больше всего нравится в Ruby / Ruby on Rails? То, что заставляет вас хотеть развиваться в этом.

Мне очень нравится синтаксис Ruby. Синтаксис Ruby и аспект Duck Typing . Это очень описательный язык. Это действительно странная вещь, которая меня волнует, и это то, что я много говорю, но Руби позволяет мне выразить себя так, как думает мой мозг, мне не нужно переосмысливать вещи, чтобы кодировать Руби. Идеи имеют тенденцию выходить прямо из моего мозга через клавиатуру, и это работает. То, как я думаю, как я атакую ​​проблемы, Ruby позволяет мне делать это естественным образом, не возвращаясь назад и не думая о синтаксисе или искусственных конструкциях. Это действительно кажется, чтобы получить меня. Учитывая, что я потратил на это более девяти часов в день, мне нужно наслаждаться этим. Это делает процесс написания кода приятным и намного проще, в отличие от многих других языков, которые мне приходилось использовать на протяжении многих лет. Руби замечательная вещь.

Одна из вещей, которую я хочу документировать для начинающих разработчиков Ruby, есть ли какие-то большие реализации, с которыми вы столкнулись, когда изучали Ruby, которые также помогли бы учиться другим?

Есть пара вещей. Первым было понимание Blocks и Lambdas, а также концепции анонимных функций и метапрограммирования, которые входят в это, и того факта, что с Ruby вы можете вызывать код в местах, которые вы не можете на других языках… точно узнать, как это работал в Руби был сенсационным сообщением. Конкретным примером этого является понимание того, как на самом деле работают вызовы has_many и own_to. Понимая, что это не просто волшебство, это были вызовы методов внутри класса, самого класса, а не экземпляра. Понимание этого было огромным скачком, концептуально.

Помимо аспекта Duck Typing, того факта, что я могу отправить сообщение чему угодно и мне не нужно беспокоиться о том, что это такое, мне просто нужно беспокоиться о том, будет ли оно отвечать на это сообщение или нет. И гибкость, которую это фактически обеспечивает. Это позволяет мне писать более умный код, который мне нравится использовать в своих делах.