Sergey Teplyakov - Google+ Public Postshttps://plus.google.com/108967431947412296254https://lh5.googleusercontent.com/-2weHUILo1ns/AAAAAAAAAAI/AAAAAAAALs8/m83DfPRimHY/photo.jpg?sz=50Pluss - Google+ Feed Proxy2017-02-22T05:55:49ZSergey Teplyakovhttps://plus.google.com/108967431947412296254Поскольку тут поднялась некоторая волна по поводу алгоритмических вопросов и загадок на...2017-02-22T05:55:49Z2017-02-22T05:55:49Ztag:plus.google.com,2017-02-22:/z13ihhnqmo3zxxqac04cgn1h5n3vvn1yzxw0k
<div>Поскольку тут поднялась некоторая волна по поводу алгоритмических вопросов и загадок на собеседовании, решил напомнить о своих мыслях по этому поводу.<br /><br />В Киеве все было просто: почти ноль алгоритмов, полный ноль загадок и куча вопросов по технологиям.<br /><br />Эта модель (да, а собеседование - это ведь некоторая модель, на основе которой делается заключение о пригодности кандидата к работе над определенной группой задач) тоже не идеальна. У кого-то может быть хорошая память, а у кого-то плохая. Но это, обычно решается задаванием общих вопросов + плюс прикидывание дурачком. Без понимания, на одной памяти такое собеседование не пройти.<br /><br />Когда я провожду собеседование для МС-а, то мне приходится смещать акцент со своих привычных вопросов в сторону местных привычных вопросов. Но если у человека есть опыт в определенной технологии, я все равно задаю задачу с ней связанную. Это может быть producer-consumer, а может быть что-то еще подобное (но это работает только при наличии у человека опыта в определенной области, а именно в многопоточности; хотя если человек пилит .net, то будет очень странным, если такого опыта не окажется).<br /><br />Последняя волна негодования по поводу алгоритмических задач со всех сторон вызывает один вопрос: а есть ли люди, которые считают, что давать написание алгоритмической задачи - это хорошо (да, именно написание, а не драфт/дизайн решения или понимание сложности алгоритмов). И есть ли среди людей, ответивших "да" на этот вопрос те, кто сам проходил такое собеседование недавно и при этом остался при своем мнении?</div>
<div><a href="http://sergeyteplyakov.blogspot.com/2014/06/technical-interview.html">Как проводить технические собеседования?</a>
<br/>
<img
src="https://lh6.googleusercontent.com/-0-58Ukt6UIY/U6xkUb24CiI/AAAAAAAALrc/SpHc9KzJlvw/w506-h910/clip_image002_thumb%25255B2%25255D.jpg?imgmax=800"
height="910"
width="506"
alt="attached image" />
</div>
Да, и вот ссылка на обсуждение моего последнего поста.2017-02-21T18:07:09Z2017-02-21T18:07:09Ztag:plus.google.com,2017-02-21:/z12dtzbafkyivfoao04cgn1h5n3vvn1yzxw0k
<div>Да, и вот ссылка на обсуждение моего последнего поста.<br /><br />Если вы есть на реддите, то плюсик будет очень полезным.</div>
<div><a href="https://www.reddit.com/r/programming/comments/5vcmbg/a_common_execution_path_optimization/?ref=share&ref_source=link">A common execution path optimization • r/programming</a>
<br/>
<img
src="https://lh3.googleusercontent.com/proxy/ZAjfdLEYsduFmHs8Gh1B5C7iFx1n9detfuFEhaetwxKoa328ygGsz6bfMh_gp2Se2uiujDE=w120-h120"
height="120"
width="120"
alt="attached image" />
</div>
Оптимизация типового пути исполнения2017-02-21T15:56:03Z2017-02-21T15:56:03Ztag:plus.google.com,2017-02-21:/z12mwd1i3lnvf5tr104cgn1h5n3vvn1yzxw0k
<div><b>Оптимизация типового пути исполнения</b><br /><br />А вот и чуть более расширенный анонс.</div>
<div><a href="http://sergeyteplyakov.blogspot.com/2017/02/a-common-execution-path-optimization.html">A common execution path optimization</a>
<br/>
<img
src="https://lh3.googleusercontent.com/proxy/pypPStTrtmFtvoGylZFxopvpdP9Y-V8xtuvHtvdEeBJp1CYk7U4U5ITS9rya8ZLAxTbC7zYbyfCXg_O6BNuSMJAhmEn8ozGcG27APOT94GWC3w=w120-h120"
height="120"
width="120"
alt="attached image" />
</div>
A common execution path optimization2017-02-21T15:53:49Z2017-02-21T15:53:49Ztag:plus.google.com,2017-02-21:/z13xhlvjkoicfvtjg04cgn1h5n3vvn1yzxw0k
<div>A common execution path optimization<br /><br />Вот, запилил еще одну статью для своего нового блога. На этот раз про небольшой трюк, который позволяет делать функции более дружественными для in-lining-а за счет выделения куска функционала, который используется реже в отдельную функцию.<br /><br />И хотя подход может показаться, не сильно полезным, он применим в библиотеках и вполне подойдет для горячего пути исполнения приложения.</div>
<div><a href="https://blogs.msdn.microsoft.com/seteplia/2017/02/21/a-common-execution-path-optimization/">A common execution path optimization</a>
</div>
На правах вброса, еще одна мысль от Ричарда "вот вам ядерная бомба" Фейнмана об экспертах и...2017-02-20T20:48:01Z2017-02-20T20:48:01Ztag:plus.google.com,2017-02-20:/z13dsn4hhvirwtpve234sfdgsyywsjrzj04
<div>На правах вброса, еще одна мысль от Ричарда "вот вам ядерная бомба" Фейнмана об экспертах и псевдонауке.<br /><br />"Несмотря на прогресс в науке, параллельно с ней существует в некотором роде и псевдонаука. Социология служит примером науки, которая таковой не является.<br />Она трактует явления не с научной точки зрения. В социологии следуют формальностям — вы собираете даты, делаете то-то и то-то, но не получаете никаких законов и не можете добраться до истины. К тому же в этой науке пока нет никаких результатов — может быть, они появятся когда-нибудь в будущем, — эта область плохо разработана, даже если что-то случится на мировом уровне. Здесь мы имеем знатоков на все случаи жизни, которые считают себя научными экспертами. Так называемые научные эксперты просто сидят за пишущими машинками и выдумывают всякую чушь вроде того, что пища, выращенная на органических удобрениях, полезнее, чем на неорганических; может, это и правда, а может — и нет, и нет способа доказать это утверждение. Но они будут сидеть за своими пишущими машинками и комплектовать всю эту ерунду, как будто это наука, а они эксперты по продуктам, органическим, удобрениям и прочим вещам. Каких только вымыслов и псевдонаук не существует на свете!"<br /><br />Да, с момента написания этих строк многое изменилось. Теперь "экспертов" стало на несколько порядоков больше, а их пишущие машинки заменили более современные устройства. Но проблему это не решило, а лишь усилило.<br /><br />Информации вокруг стало много, но фильтровать ее стало существенно сложнее. Парадокс? Не думаю (с).</div>
Несколько вещей от "прагматичного" Дейва:2017-02-20T20:42:46Z2017-02-20T20:42:46Ztag:plus.google.com,2017-02-20:/z13fcnpwyp2oxthgy04cgn1h5n3vvn1yzxw0k
<div>Несколько вещей от "прагматичного" Дейва:<br /><br />Agile - это прилагательное, а не существительное. А значит такой вещи, как the Agile Manifesto не существует (только если речь не идет о "подвижном" манифесте.<br /><br />The Agile был подхвачен индустрией зарабатывания денег: консультанты, конференции, продавцы, которые использовали и используют те же трюки, что и другие "маркетологи" - любые манипуляции (часто основанные на страхе), для втюхивания своих услуг, а не для решения ваших проблем.<br /><br />Потом, там есть просто сверх интересные высказывания по поводу тестирования и культа тестирования в некоторых сообществах, что приводит к основной теме выступления: context matters.<br /><br />Эта мысль пересекается с мыслью из моей предыдущей заметке. Реюз опыта - дело сложное. И когда происходит переход от использования чего-то в скейле ремесленника в скейл корпорации, то сразу же появляется интерес со стороны большого бизнеса с попыткой формализовать все и вся. И это объяснимо, но в результате появляются методологии, которые не имеют ничего общего с тем, что было описано 17 лет назад. <br /><br />Чувствуется, что у Дейва наболело. Ему явно неприятно видеть, как благодаря ему и ряду других светил индустрия не изменилась, а мутировала и вместо одному, стала поклоняться другому. Мне выступление понравилось, врубите 1.5 скорость и посмотрите на боль человека, который видит, как исходные идеи выливаются в черт знает что.</div>
<div>
<a href="https://www.youtube.com/watch?v=a-BOSpxYJ9M">
<img
src="https://lh3.googleusercontent.com/proxy/L-oHtS7xEw3SW7KEZyI1yjBqCdXSLgbQf1JUs6Ew_uQccGkZPqyFGvJGfmq0RRGJWSD7-4YNFRUO3iBW62xYWp5iV-s=w506-h284-n"
height="284"
width="506"
alt="attached video" />
</a>
</div>
Просто великолепно о том, что бы было, если бы кандидаты во время собеседования отвечали...2017-02-20T20:34:39Z2017-02-20T20:34:39Ztag:plus.google.com,2017-02-20:/z135jzq4bnmcd33iq04cgn1h5n3vvn1yzxw0k
<div>Просто великолепно о том, что бы было, если бы кандидаты во время собеседования отвечали откровенно:))<br /><br /><a href="http://pythonforengineers.com/the-programming-interview-from-hell/" class="ot-anchor">http://pythonforengineers.com/the-programming-interview-from-hell/</a><br /></div>
<div><img
src="https://lh3.googleusercontent.com/-oSATdxwKFaQ/WKtS3ve3yTI/AAAAAAAARhs/F6L-iR1gRKcQ9MnItOlU-S6vzmw5nUDFQCJoC/w506-h750/Interview.png"alt="attached image" />
<br/>
<small><a href="https://lh3.googleusercontent.com/-oSATdxwKFaQ/WKtS3ve3yTI/AAAAAAAARhs/F6L-iR1gRKcQ9MnItOlU-S6vzmw5nUDFQCJoC/w2324-h1293/Interview.png">View full size
(2324x1293)</a></small>
</div>
О “clothes”, “close” и “close”2017-02-18T22:11:26Z2017-02-18T22:11:26Ztag:plus.google.com,2017-02-18:/z12pdza40v2lg15s3234sfdgsyywsjrzj04
<div>О “clothes”, “close” и “close”<br /><br />Вот вам еще немного любопытного и немного безумного об американском английском.<br /><br />Давайте возьмем три слова: одежда – clothes, закрывать – close, и близкий – close.<br /><br />Казалось бы, что может быть тут сложного в произношении? А вот что.<br /><br />Для начала, одежда. В английском слово «одежда» (в единственном числе) – не существует. Есть лишь clothes – одеждЫ и cloth – ткань. И что? Ну, th звук в конце аналогичен звуку в слове “the” и является звонким. По правилам, -s окончание звучит как z, если последний звук – звонкий. В результате, это простое слово звучит примерно так: клоуthз (я специально оставил th, поскольку в русском языке нет звука для этого сочетания). Th и z – очень близки. В наших школах, так вообще th часто произносят как «з». В результате, для нетренированного уха, clothes будет звучать как «клозз». Американский английский весьма быстрый. Многие вещи сокращаются и это слово не исключение. Поскольку два последних звука близки, то произнести это слово быстро – нельзя.<br /><br />Решение? Забить на звук th. В результате, clothes звучит как «клоуз». Да, как и закрыть.<br /><br />Но вот с close (глагол) и close (прилагательное) все не так просто. Они звучат по-разному:<br /><br />Close (закрыть) – клоуз.<br /><br />Close (близкий) – клоус.<br /><br />Вот така фигня, малята.<br /></div>
Об «инновациях»2017-02-18T22:02:56Z2017-02-18T22:02:56Ztag:plus.google.com,2017-02-18:/z13ctfcq1m22eflfb234sfdgsyywsjrzj04
<div>Об «инновациях»<br /><br />Я тут дочитываю «Радость познания», это такой-себе сборник выступлений Ричарда Фенмана. Ничего, но «Вы, конечно, шутите, мистер Фейнман» - намного лучше.<br />Но вот мне попался довольно интересный момент, который легко увидеть в нашем сегодняшнем айтишном мире.<br /><br />«Понимаете, получение фактов из опыта – это звучит совсем-совсем просто. Казалось бы: нужно просто сделать что-то и посмотреть результат. Но человек – слабое существо, и на практике оказывается, что все гораздо сложнее, чем просто сделать что-то и посмотреть результат. Возьмем, к примеру, образование. Есть общепринятая методика преподавания математики. И вот один молодой учитель говорит: «У меня есть идея получше. Я сделаю вычислительную машину-игрушку и буду учить ребят на ней». Итак, он пытается сделать компьютер с группой ребят – у него их немного, - возможно, кто-то уступил ему для этой цели свой класс. Ему нравится, чем он занимается. Он воодушевлен. Он полностью понимает, что должен сделать. Ребята тоже понимаю, что создают что-то новое и тоже возбуждены. Они очень стараются и достигают лучших результатов, чем другие дети. Попробуйте проверить – они действительно выучили арифметику. Это было зарегистрировано как безусловный факт. Но это нельзя считать новым научным фактом, поскольку эксперимент проводил человек, который изобрел этот метод обучения. Хотите знать почему? Этот метод должен годиться для обычных учителей (вы должны ориентироваться на среднего учителя; таких учителей в мире великое множество), чтобы любой учитель достал пособие, ознакомился с описанным методом и, применив его на практике, получил отличный результат. Иначе говоря, нам предъявляют как доказанный факт то, что не является доказанным фактом».<br /><br />Если вместо учителя математики поставить аджайл-коуча или любого другого проповедника новой методики/парадигмы или технологии, а вместо учеников взять простых программистов, то аналогия с современным IT-миром станет совершенно точной.<br /><br />Когда автор новой методики берет своих ярых приверженцев и показывает хорошие результаты – это хорошо. Но это ничего не доказывает. Собственно, именно поэтому, когда эти же методики начинают внедряться в больших масштабах, оказывается, что работают они аналогично предыдущим (т.е. толком никак; все зависит от людей).<br /><br />Это я не к тому, что новое – это плохо, или проповедники не правы, просто из факта успеха одного проекта/человека не следует, что успех придет и к вам/вашему проекту. Даже если следовать букве «закона» со 100% точностью.<br /></div>
Заголовок просто потрясающий.2017-02-16T21:52:23Z2017-02-16T21:52:23Ztag:plus.google.com,2017-02-16:/z13lejfz5lj4xd35h04cgn1h5n3vvn1yzxw0k
<div>Заголовок просто потрясающий.<br /><br />З.Ы. Никакого отношения к объектам он не имеет.</div>
<div><a href="https://github.com/dotnet/roslyn/pull/17174">roslyn</a>
</div>