GD Star Rating
loading...

Всем привет! В последнее время я набиваю опыт преподавания и, мне кажется, я готов чему–нибудь научить.

Обо мне: профессиональный программист с 10–летним опытом в разработке. Языки, которыми владею: JS/HTML/CSS, PHP, C#, C, Java, Ruby, Delphi.

Но учить конкретным языкам мне скучно и неинтересно. Готов проводить лекции на тему подходов к программированию, подходов к профессиональному программированию, проектированию приложений, архитектуре приложений, конструированию, построению ООП–моделей, паттернов проектирования.

Если наберется 3 и более человек, готов первую лекцию провести бесплатно. Минимальное требование к обучаемым: знание хотя бы одного ООП–языка.

Tagged with →  

103 Responses to Всем привет!

  1. Axure:

    Расскажите, пожалуйста, о своих достижениях.

  2. TuaEkb:

    я был бы не против.

  3. SliLt:

    : Там аккаунта у меня нет, к сожалению.

  4. MpoBlank:

    Люблю:
    — PHP за скорость разработки. –
    Занавес.

  5. SliLt:

    : Давай обойдемся без холивара?

  6. SliLt:

    Если вы заинтересованы в вебинаре, пожалуйста отправьте мне письмо на @yandex.ru.

    В письме укажите, как к вам обращаться, какими языками/технологиями владеете и на каком уровне. Можно приложить ссылки на ваши проекты, указать место работы. Это позволит мне оценить уровень владения предметом среди участников.

  7. SliLt:

    : Прошу также указать удобное время для проведения вебинара. Например: будни, после 20:00.

  8. MpoBlank:

    : Холивара не будет. Просто не советую у тебя учиться. Потому как ты – идиот.

  9. LleLt:

    : интересно, насколько отличаются два идентичных поста на dev и webdev блогх 🙂

  10. TuaEkb:

    : А что не так?

  11. Gk0nix:

    эээм.
    я привязываюсь к словам, но ты с 14 лет получаешь опыт в “разработке”?

  12. LleLt:

    : и, если уж привязываться, судя по набору языков, явно не с С начинал. И, далее, интересен опыт в шарпе и яве, очень интересно как можно осилить С и пропустить С++.

  13. LleLt:

    : поглядел мойкруг, всё прояснилось, веб на вебе и вебом погоняет. Откуда ж тогда опыт ява, рубей, делфи, С?

  14. SliLt:

    : В “Моем Круге” я записал лишь места работы, где платили деньги. А это лишь малая часть моего участия в разработке.

  15. LleLt:

    : дык на вопрос о достижениях ты дал мойкруг, а теперь говоришь, что он не особо интересен 😉 Как понимать?

  16. SliLt:

    : О тех достижениях, которые туда не вошли, я тебе расскажу лучше лично 🙂

  17. Gk0nix:

    : причем тут мой круг. ты написал “10 лет разработки”. в другом посте написал “год рождения 88”. ты с 14 лет разработчик?

  18. SliLt:

    : Да, в 14 лет я написал первый проект, которым пользовался кто-либо, кроме меня.

  19. Gk0nix:

    : ок, это замечательно -)

  20. Sukon:

    : Чо за проект?

  21. Xibin:

    : а что тебя смущает? я тоже первый, можно сказать, коммерческий продукт (гы-гы) в этом возрасте написал. на турбо-паскале 🙂

  22. Xibin:

    : ты, видимо, давно не видел современные похапе-фреймворки.

    Если писать в таком стиле, какой я видел в старом коде в одной компании, где ты работал, на букву C, то это, конечно, пиздец.

    Сейчас есть вменяемые фреймворки на любой вкус, скажем, Yii – rails-style, SF2 – java-style.

  23. Gk0nix:

    : наверное тут проблема терминов.

    ты тоже считаешь что занимаешься разработкой с 14 лет?

  24. SliLt:

    : Русские безнадежны, пока терминология стоит на первом месте.

  25. Xibin:

    : если прямо отвечать на вопрос, то нет, не считаю, считаю, что с 19-и.

    Но с другой стороны всё равно на термины.

  26. N0ibad:

    : так вот от чего все проблемы, спасибо тебе за эту ценную информацию

  27. SliLt:

    : Почитай о необходимых и достаточных условиях, вижу у тебя с логикой не очень.

  28. N0ibad:

    : спасибо, с логикой у меня все хорошо

  29. Axure:

    : похоже ты и вправду идиот. А я думал поспешил.

  30. Arbam:

    Привет, можете пожалуйста рассказать о том насколько глубокие знания Вы можете дать по Java/C/C#?
    К томуже интересует отсутствие в данном множестве такого языка как C++, который суть есть логический элемент данной цепочки, без которой она смотрится не так лаконично.

    И вот еще пара вопросиков чтобы решиться: подходов к программированию, подходов к профессиональному программированию – поведайте пожалуйста о том чем же все таки различаются два понятия, к сожалению, второе кажется подможеством первого, но в таком случае не хватает других возможных подмножеств, если они есть то какие они для вас?

    Чем для вас различаются следующие два понятия: проектированию приложений, архитектуре приложений? Насколько глубоко и предвзято будете подавать материал(предвзятое мнение не всегда плохо, порой даже намного лучше мнения сообщества это я к тому чтобы вы не обижались если Вас это вдруг заденет). Какие практические работы будут проводиться во время чтения конкретно этих двух тем, и будут ли вообще?

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

    Вся идея в том что порой лучше не поучиться у учителя, и освоить некоторые темы самому если материал на лекции будет не достаточно интересен 🙂

  31. N0ibad:

    : многим ты сейчас сделал непонятно

  32. MpoBlank:

    : нет, ну ты сам не хочешь холивара, и сам напрашиваешься на пиздюли. Окей, к вопросу о скорости разработки, предположим, что ты правда знаешь ruby. Объясни тогда, как открытые классы могут быть быстрее реализованны на php? Или как ты отлаживаешь код на php без интерактивного режима быстрее чем с ним?

  33. MpoBlank:

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

  34. KipMilk:

    : да говно твой раби, успокойся уже

  35. SliLt:

    :

    > И вот еще пара вопросиков чтобы решиться: подходов к программированию, подходов к профессиональному программированию — поведайте пожалуйста о том чем же все таки различаются два понятия…

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

    > Привет, можете пожалуйста рассказать о том насколько глубокие знания Вы можете дать по Java/C/C#?

    Если вы внимательно прочитаете пост, то там написано, что языкам учить мне не интересно совершенно.

    > К томуже интересует отсутствие в данном множестве такого языка как C++, который суть есть логический элемент данной цепочки, без которой она смотрится не так лаконично.

    Это вопрос вкусов. Мне не нравится C++. Если надо написать что-то очень быстро – Си, если что-то быстрое, но объектное – Java. С++ быстрее Java, да. Но мне не нравится та цена, которую надо платить за эту объектность. Но давай не будет раздувать холивар.

    > И вот еще пара вопросиков чтобы решиться: подходов к программированию, подходов к профессиональному программированию — поведайте пожалуйста о том чем же все таки различаются два понятия, к сожалению, второе кажется подможеством первого, но в таком случае не хватает других возможных подмножеств, если они есть то какие они для вас?

    > Чем для вас различаются следующие два понятия: проектированию приложений, архитектуре приложений.

    Архитектура – высокоуровневый проект. Собственно, построение архитектуры – часть проектирования.

    > Насколько глубоко и предвзято будете подавать материал…
    > Какие практические работы будут проводиться во время чтения конкретно этих двух тем, и будут ли вообще?
    > Ну и по подробнее что именно будет включать в себя следующий набор: конструированию, построению ООП–моделей, паттернов проектирования…

    Я определился с темой курса и в данный момент занимаюсь составлением программы. В любом случае курс будет требовать опыта разработки на объектно ориентированном языке программирования с использованием ООП. Главная тема курса – управление сложностью проекта в условиях изменяющихся, растущих требований. Например, проектирование гибких абстракций к данным, типичные изменения в интерфейсах к данным, многоуровневые абстракции к данным. Аналогично с развитием логических частей проекта, репрезентативных.

    Когда программа будет готова, я объявлю об этом в топике + разошлю информацию тем, кто писал мне на email.

  36. Arbam:

    : лучше новый создайте топик. И да я почему-то не нашел вашего email, поэтому не могу вам написать 🙂
    Ещё интересный момент будет ли практическая часть? Теория это круто, и еще круче если будет практическая толика.
    Курс интересный да 🙂

  37. SliLt:

    : Практика будет обязательно. Мой email: @yandex.ru.

  38. MpoBlank:

    : понятно, значит руби ты “знаешь”. Ну как бы я победил, ты хуй. О чем говорить то?

  39. Xibin:

    : в смысле производительность кода? это отдельный вопрос (и тут уж точно не в пользу RoR), говорили про скорость разработки. А она при хорошем знании инструмента примерно одинаковая везде. Ну и интерпретируемый язык сам по себе обертка.

  40. Sukon:

    : какой такой ребе?

  41. Sukon:

    : Идите нахуй спасибо пожалуйста.

  42. MpoBlank:

    : ты хочешь со мною в скорости разработки посоревноваться?

  43. TuaEkb:

    : зачем злой такой, давай досвидания

  44. Xibin:

    : а смысл? если задача – быстро наговнякать прототип, я бы тоже взял RoR. 🙂

  45. MpoBlank:

    : ну давай поговорим за наговнякать. Можешь что-нибудь сделанное тобой назвать?

  46. MpoBlank:

    : вот тебе про отдельный вопрос: http://www.unlimitednovelty.com/2012/06/…

  47. MpoBlank:

    : у меня наметанный глаз.

  48. MpoBlank:

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

  49. MpoBlank:

    : вот вы с топик стартером такие гении, а я готов спорить, что при свидетелях задам вам два-три простейших вопроса из профессиональной сферы и собеседование вы не пройдете.
    Притом я тоже в IT с 15 лет (по трудовой и официально), понять гнилые приступы уникальности и неповторимости могу.

  50. MpoBlank:

    : сейчас про социальную сеть расскажет 🙂

  51. MpoBlank:

    : ты не повторял бы за мною, волнистый друг, а ответил бы на поставленный вопрос выше.

  52. Xibin:

    : это где я заявлял о своей уникальности и неповторимости? Ты меня с кем-то путаешь 🙂

  53. SliLt:

    : Удивительно, Сергей. Вы, вроде, взрослый мужчина, а разговоры – на школьном уровне.

  54. SliLt:

    : И да. Откуда такая неуверенность в себе?

  55. MpoBlank:

    : я с каждым стараюсь говорить на языке, который ему доступен. Ты у меня своими выступлениями пока производишь ощущение человека способного только к “Я, Тарзан, жрать”. Хочешь иного уровня общения, начинай вести общение, а не тупой ссылочкой которая ничего общего с обсуждаемой темой в лицо тыкай.

  56. MpoBlank:

    : это в каком плане?

  57. KipMilk:

    :
    > вот вы с топик стартером такие гении

    нет, ты

  58. KipMilk:

    : я совершенно не понимаю, почему ты решил, будто все люди в интернетах должны отвечать на дурацкие вопросiки каких-то руби-фанбоев. тем более что “ты хочешь со мною в скорости разработки посоревноваться” это действительно крайне странное заявление. если бы ты был дональдом кнутом и мы бы обсуждали алгоритмы, это было бы ещё нормально, но ты всего лишь какой-то любитель руби. пичалька.

  59. Xibin:

    : (1) я про RoR, а не про Ruby; (2) это тест на числодробилки, куда интереснее скорость работы с объектами и хэшами.

    Впрочем, прогресс в 1.9 очень заметный, да, это факт. Жить уже можно.

  60. SliLt:

    : Оу, в психологии у вас тоже пробелы. Сочувствую.

  61. SliLt:

    : Так сложилось, что в этом топике – не холивар. И вступать с вами в дискуссию “PHP vs Ruby” я не собираюсь. На своей странице в моем круге, я выразил свое мнение, которое сложилось у меня за время работы. Если вы не согласны с моим мнением – идите на хуй. Если все еще не согласны – я могу с удовольствием популярно это вам объяснить в личной встрече.

  62. MpoBlank:

    : дурашка, ты брыли подбери, слюни через сеть долетают. Никого не интересует, в какие дискуссии ты собираешься или не собираешься вступать. У тебя нет другой возможности меня заткнуть, когда я тут говорю о том, что ты некомпетентен, кроме как опровергнуть мое утверждение. Голословными намеками на угрозы ты лишь еще больше подтверждаешь сказанное мною о тебе. Так тебе доступно, дебил ебучий?

  63. MpoBlank:

    : да я то герой всея русской айти, только хуйли толку?

  64. MpoBlank:

    : посочувствуй своей маме, что у нее сын дебилом вырос.

  65. MpoBlank:

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

  66. MpoBlank:

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

  67. LesSm:

    : А что в самом раби увеличивает скорость разработки в разы?

  68. MpoBlank:

    : давай ты будешь язык без выебонов называть, а я тебе расскажу.

  69. MpoBlank:

    : поверю на слово. Скорость разработки растет в первую очередь за счет ориентированности языка на метапрограммирование.
    Детальнее смотреть сюда: http://yehudakatz.com/2009/08/24/my-10-f…
    и сюда: https://speakerdeck.com/u/michaelfairley…

  70. LesSm:

    : теперь осталось доказать что метапрограммирование увеличивает скорость работки в разы, как и то что такой ориентированности нет в остальных языках.

  71. MpoBlank:

    : оставлю возможность это доказать тебе. Для себя, своих проектов и подчиненных я и так так знаю. Вас, господа, “я и так все знаю, что может мне в жизни пригодиться” никто ни к чему не принуждает. Вы хоть все еще и работаете, но в душе давно пенсионеры.

  72. LesSm:

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

  73. KipMilk:

    : нет, ну про автора поста ты скорее прав, чем нет. во всяком случае я бы не стал на его месте строить из себя эксперта.

    но вот почему рубисты всё время лезут доказывать превосходство руби и почему так реагируют на слово “раби”? вот прямо лакмус какой-то.

  74. MpoBlank:

    : посмотри ссылки, сука. Так доступнее?

  75. MpoBlank:

    : http://www.howjsay.com/index.php?word=ru…
    Это раз. А про два, нам нравится, что мы получили перейдя на использование этого языка. Мы хотим этим делиться. Но большинство живет на ощупь и работает на отъебись, им это не нужно. Отсюда конфликт.

  76. LesSm:

    : по ссылкам куча синтаксического сахара и ни одного примера что он ускоряет разработку в разы.
    Вот вроде ты тут Д’Артаньяна из себя строишь, а уже во втором же комментарии на личности перешел, давай ты не на отъебись объяснишь как в разы руби ускоряет разработку, раз это так.

  77. Sukon:

    : как минимум вменяемым дизайном классов ускоряет. Как-то не приходится на каждый чих в документацию лазить (как в том же питоне), чтобы узнать каким образом сегодня длину коллекции посчитать.

  78. Sukon:

    : Нахуй досвидания спасибо пожалуйста я по-доброму предупредил!

  79. Gk0nix:

    Рубисты, пхписты, разработчики с 15 лет!
    Подскажите мне тупому
    Есть у меня веб сервис, который отдает данные, например json. А потом я его на клиенте обрабатываю
    И что бы мне такого хитрого придумать, чтобы у меня этот json массово не тянули, подделывая клиент. Сейчас зарезал по количеству запросов, но все равно можно утянуть.

  80. LesSm:

    : сейчас документации встроены в редактор, вменяемость вообще понятие относительное.

  81. MpoBlank:

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

  82. MpoBlank:

    : Ничего. До тех пор пока возможны произвольные браузеры и открытая передача данных, ты ничего сделать не можешь.

  83. MpoBlank:

    : о да, функции работы со строками в пхп это подтверждают. Ты все возможные очередности параметров в них зазубрил или документацию каждый раз читаешь?

  84. SliLt:

    : Если ты отдаешь jsonp, ты можешь перейти на json с защитой. Например как у гугла “while(1);{data:…}”. Этим ты избавишься от тех, кто с браузера забирает данные. А вот от произвольных клиентов, да, сложно придумать защиту, если ты эти данные отдаешь публично.

  85. Xibin:

    : это потому что в пхп строковая библиотека – говно. Тупо склонировали сишный легаси и еще говном сверху присыпали. С классом String все было бы вполне решаемо в рамках традиционного ООП.

    Вообще, то, что ты называешь метапрограммированием (мне совершенно не нравится этот термин из-за неоднозначности – разработчик на строго типизированном языке поймет тебя совершенно иначе: C++ разработчик подумает про темплейты, Java-разработчик – про дженерики) – то есть миксины – штука очень неоднозначная. Да, если пользоваться ограниченно, с умом и где надо, эта гибкость очень полезна и позволяет быстро сделать то, для чего на той же джаве пришлось бы городить делегаторы. Но оно же позволяет (и даже ввиду простоты поощряет) написание неподдерживаемого кода, когда в итоге получится манипуляция с объектами, о фактическом интерфейсе которого мы нихуя не знаем. Легко получается адская смесь (в первом приближении) “классового” и “прототипного” ООП, в которой через полгодика без поллитры разобраться будет очень и очень проблематично.

    Короче, нужна культура. А в среде RoR-разработчиков я, к сожалению, наблюдаю только культуру копипаста и бездумного следования инструкциям; скажем, как на самом деле работает ActiveRecord, почти никто не понимает. Такой новый модный хипстерский похапе.

  86. MpoBlank:

    : метапрограммирование это не только и не столько mixin’ы. Это средства позволяющие расширять и познавать язык на этапе исполнения. Такие, к примеру, как method_missing.
    ООП в Ruby очень простой. Множественного наследования нет, его заменяют как раз упомянутые mixin’ы.
    Ты в целом рассказываешь о том, что оружие плохо, потому как с его помощью можно отстрелить половинку жопы. Ну что же, достойное мнение. Береги жопу.
    А про культуру, у меня в командах она есть, а идиотов везде хватает.

  87. Xibin:

    : method_missing это вообще классика из смоллтолка, если рассматривать вызов метода как посылку сообщения – совершенно очевидная вещь. Короче не нравится мне этот термин, намешали кучу всего из разных мест.

    Я не говорю, что ООП там сложный. Несложный совсем, но гибридный.

    Если есть культура – все хорошо, рад за твою команду (нот айрони).

  88. MpoBlank:

    : Ну команд уже давно больше одной, культуру насаждаем огнем и уговорами.

  89. Xibin:

    : ну вот это ключевой момент 🙂 вообще, ООП вообще в языке сложным не бывает. Бывает разве что через жопу (perl, php4, javascript). Сложности вылезают в практическом применении (иначе бы не появились паттерны) и в инфраструктуре языка (Java – отличный пример, как вокруг очень простого языка можно нагородить ояебу).

  90. MpoBlank:

    : ну не скажи. Множественное наследование дает просраться.

  91. Arbam:

    : все эти танцы с бубном аля while(1) {…} будут создавать тебе проблемы, а вот тем кто парсит как раз никаких проблем не будет.

    Возвращай function (a, b, c, d) { … some code here with return value calculation. }, причем можно поискать проблемы в популярных ECMA имплементациях для java/.net/c++/whatever и сделать так чтобы они тупо возвращали не верное значение. Следующим шагом будет рандомизированный набор тел функций и рассчетов, но это все детский лепет…

    Ответ нет нельзя защититься, слабый ответ – можно усложнить процесс разработки подобного клиента, но все предпринятые тобой шаги сделают код менее maintainable.

    Как вариант сделать script не кешируемым, в нем зашить ключ, который будет также вычисляться в функции, и служить ключом для расшифровки значений, и будет передаваться как один из параметров функции.
    Все это сделает твой js настолько суровым, что ты сам откажешься.

  92. Xibin:

    : а надо ограничивать его использование до чего-то вроде трейтов и все будет хорошо.

  93. MpoBlank:

    : Так это же mixin’ы и есть.

  94. Xibin:

    : ну под миксинами таки обычно понимается рантайм-расширение. Типа inject в smalltalk. А МН/трейты это чистый compile time.

Добавить комментарий