Search
Write a publication
Pull to refresh
13
0

Software Developer

Send message

Персона. Алан Кэй — пророк, автор концепции GUI и языка Smalltalk

Reading time10 min
Views12K
image

Алан Кэй любит ссылаться на себя, и часто начинает свою речь с фразы: «Закон Кэя номер один гласит...». Наверное, он имеет на это право. Много лет его недооценивали, загоняли в рамки и даже гнобили.

Алан Кэй – человек, который не может держать свое мнение при себе, если тема дискуссии действительно волнует его. За это ему и пришлось поплатиться пару раз. Однако ему везло, и в результате он оставался в выигрыше. В его случае справедливо изречение: «Все, что ни делается — все к лучшему».

Благодаря странному стечению обстоятельств Кэй стал заниматься разработкой ПО, а позже оказался первопроходцем в областях объектно-ориентированного программирования и графического интерфейса. На этом пути он придумал и реализовал то, что казалось невозможным ранее, о чем большинство его коллег просто не задумывалось. «Простое должно оставаться простым. Сложное должно быть возможным», — это его жизненное кредо.
Читать дальше →

Коммуникационная стратегия, как инструмент построения карьеры и личного бренда

Reading time7 min
Views16K

Источник

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

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

Инструмент построения карьеры и продвижения личного бренда называется «коммуникационная стратегия» и ниже рассказывается о том, как он может быть применен в сфере IT для профессионального и личностного роста.

Не так давно я запостил на Хабре серию статей о продвижении и систематизации публикаций в web. Вроде бы задача важная, но не оставляло ощущение некоторой незавершенности. И только, разобравшись с тем, что такое коммуникационная стратегия, у меня получилось создать цельную картину.

Каким образом представить и подать себя как специалиста (или «вольного» консультанта), о котором мечтает любая компания? Очевидно, что, как и для любой непростой задачи, решение должно быть комплексным.
Читать дальше →

Голуби брутфорсят парадокс Монти Холла лучше людей

Reading time6 min
Views57K

Голуби дают людям фору в решении дилеммы Монти Холла, что могло бы позволить им успешно выступать на одноименном ток-шоу. Это закономерность может, в свою очередь, излить свет на то, почему людям так трудно она дается.



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


Когнитивный психолог Massimo Piattelli-Palmarini заметил по этому поводу: Ни одна статистическая задача даже рядом не стоит по способности дурачить всех людей и во все времена.


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

оставить или поменять

Психология на службе информационной безопасности. Склонность к преступлению

Reading time10 min
Views22K
Говорят, что лучшее сражение – то, которого не было. Применительно к задаче обеспечения ИБ можно было бы сказать, что лучшая утечка – та, которая не случилась. Для того, чтобы это стало правдой, службе безопасности нужно действовать на опережение и уметь выявлять инсайдеров ещё до того, как они попробуют что-нибудь «слить». Возникают вопросы: как это реализовать на практике? Можно ли выявить склонность к инсайду заранее? Под катом я постарался дать ответы.
Читать дальше →

Возможные нововведения C#

Reading time5 min
Views15K


Вы должно быть знаете, что в последнее время Microsoft старается общаться с сообществом, получать как можно больше отзывов и внедрять их в жизнь. Не обошла эта мода и команду разработчиков C#. Разработка новой версии языка определенно не идет за закрытыми дверями…

Статья Mads Torgersen под названием What’s New in C# 7.0 уже разобрана вдоль и поперек. Но есть что-то, что в ней не было упомянуто.
Читать дальше →

Психология убеждения. Как убеждать других и уметь распознавать манипуляции

Reading time14 min
Views138K

Эта статья — некраткий конспект книги Роберта Чалдини «Психология убеждения». Будет полезна всем, кто имеет дело с людьми, продажами и бизнесом. Книга настолько полезна, что должна оказаться на полке каждого. Помимо того, что мы хотим влиять на окружающих, очень полезно знать, когда окружающие пытаются повлиять на нас. Внутри вы найдёте множество способов убеждения и, сразу после прочтения, будете с лёгкостью замечать, когда вами пытаются манипулировать.
Читать дальше →

Что такое СУБД в оперативной памяти и как она эффективно сохраняет данные

Reading time5 min
Views43K
Сальвадор Дали, Дезинтеграция постоянства памяти. 1952—1954. Холст, масло.

Всем привет. Кто-то из вас, возможно, уже знаком с СУБД для данных в оперативной памяти, но на всякий случай — по ссылке можно найти их общее описание. Если вкратце, такие СУБД хранят данные целиком в оперативной памяти. Что это означает? Каждый раз, отправляя запрос на поиск или обновление данных, вы обращаетесь только к оперативной памяти в обход жесткого диска — на нем никакие операции не производятся. И это хорошо, потому что оперативная память работает намного быстрее любого диска. Примером такой СУБД является Memcached.

Секундочку, скажете вы, а как же восстановить данные после перезагрузки или поломки машины с такой СУБД? Если на машине установлена СУБД для хранения данных только в оперативной памяти, о них можно забыть: при отключении питания данные бесследно исчезнут.

Можно ли объединить достоинства хранения данных в оперативной памяти с надежностью проверенных временем СУБД вроде MySQL или Postgres? Конечно! Повлияет ли это на производительность? Вы удивитесь, но нет!
Читать дальше →

Никогда не принимайте контрпредложение

Reading time3 min
Views112K
Полагаю, все мы пережили смену работы, как минимум, один раз. Могут быть разные причины сменить работу: новые возможности, более высокая зарплата, проблемы с коллегами и т.д.
Я называю их «спусковым механизмом» перехода. Когда он срабатывает, то уже трудно остановиться, и тогда имеются два возможных сценария:

  • Вы начинаете искать новую работу
  • Новая работа начинает искать вас

Рано или поздно наступает момент, когда вы получаете предложение настолько привлекательное, что надо быть сумасшедшим (или глупым), чтобы отказаться от него. Приняв предложение, вы внезапно вспоминаете о такой штуке, которую называют «собеседование при увольнении». Вы вспоминаете ваши хорошие отношения с вашим нынешним работодателем и начинаете поздно вечером писать заявление об увольнении.
Читать дальше →

В поисках предела. 6 мифов эффективности, которые я развеял, работая по 14 часов в день на протяжении месяца

Reading time6 min
Views66K


Мне всегда нравилась идея — работай меньше, делай больше. Но в моей жизни было время, когда я действовал по-другому. Несколько видов деятельности так сильно интересовали меня, что я никак не мог определиться на чем сосредоточиться. Логичнее было бы использовать правило 20% и отсечь все остальное, но я этого делать не стал и кое-что понял.
Читать дальше →

Hype Driven Development

Reading time7 min
Views32K
image

Команды разработчиков ПО часто принимают решения о программной архитектуре или технологическом стеке, основываясь на ошибочных мнениях из социальных сетей и на всем том, что является скорее модным, чем хорошо изученным, без серьезной оценки возможного влияния на их проекты. Я называю эту тенденцию «Hype Driven Development (HDD)», считаю ее вредной и выступаю за более профессиональный подход. Давайте посмотрим, как обстоят дела, и что мы можем противопоставить.

Новые технологии — новые надежды


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

История языков программирования: 100% «чистый» Си, без единого «плюса»

Reading time13 min
Views87K
image

Популярность языка программирования Си трудно переоценить, особенно вспоминая его былые заслуги. Наверное, каждый разработчик, как минимум, знает о его существовании, и, как максимум, пробовал на нем программировать. Си является предшественником таких языков, как C++, Objective-C, C#, Java.

Компания Microsoft для разработки родного языка к своей платформе .Net выбрала именно Си-подобный синтаксис. Более того, на Си написано множество операционных систем.

Конечно, Си не идеален: создатели языка – Кен Томпсон и Деннис Ритчи – долгое время дорабатывали его. Стандартизация Си продолжается до сих пор. Он существует более 45 лет и активно используется.

С ним часто ассоциируют не один, а два языка программирования — C/C++. Однако ниже речь пойдет именно о «чистом» Си.
Читать дальше →

История языков программирования: Delphi — больше, чем просто язык

Reading time8 min
Views85K
image

С Delphi обычно ассоциируется среда разработки приложений на основе языка Object Pascal, разработанного фирмой Borland. Этот язык является наследником Turbo Pascal с объектно-ориентированными расширениями, который в свою очередь ведет свою историю от «чистого» Pascal, созданного Никлаусом Виртом в 1970 году.

Впоследствии, в 2002 году, разработчики из компании Borland официально поставили знак равенства между языками Delphi и Object Pascal.
Читать дальше →

Худой Scrum лучше доброго Agile

Reading time12 min
Views30K
Залп скосил 50 офицеров и 760 рядовых. Французы дрогнули, запаниковали и — обратились в бегство. «Тут дела наши пошли не вполне хорошо», — описывает этот момент битвы официальная французская депеша.

Келли Дж. Порох. От алхимии до артиллерии.

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

Пытаясь как-то спасти положение, активисты Scrum вспоминают, что Scrum — это же еще и framework. Объявляется новая стратегия: “Мы не только Scrum, мы еще и Agile! Мы используем best practices, берем из Scrum только самое лучшее, то, что подходит конкретно для нашей ситуации, а все остальное лишнее и необязательно”. А раз так — “Мы — молодцы и все делаем правильно”.


Читать дальше →

Конец эпохи динамических языков

Reading time8 min
Views45K
Несколько последних месяцев я программирую преимущественно на Scala (по работе) и на Haskell (для души). На этой неделе я, правда, ещё немного пописал на Ruby (по работе) и Clojure (для души).

Ruby вывел меня из равновесия почти сразу. Нет, ну ещё в плане «добавить небольшую фичу к уже имеющемуся коду» писать на нём можно. Вы просто добавляете юнит тест, запускаете его на старом коде, делаете правку, запускаете тест снова — вуаля, готово, забирайте. Но замахиваться на что-то большее становится уже слишком сложно.

Но вот что касается моего новенького, с иголочки, проекта-любимца на Clojure… О, Clojure! Глоток свежего воздуха! Благодатная земля хорошо скомпонованных функций, иммутабельных структур данных и всего такого. Как прекрасен твой синтаксис и как мудра твоя чувствительность! Вся твоя суть в функциях, принимающих мэпы и возвращающих мэпы. И твой SQL-генератор, и слой доступа к БД, и HTML-парсер, и URL-роутер являют собой одну и ту же завораживающую картину мэпов, гоняемых туда-сюда тактами процессора, прекрасную с своём ритме хорошо собранных швейцарских часов.

Вернуться к Clojure после долгого времени это всё равно, что почувствовать себя дома. Это просто окрыляет программиста. Но почему-то в этот раз я ощутил и ещё одно, неожиданное для себя чувство: неопределённость.
Читать дальше →

Сказка о бэкенде, ruby и rails

Reading time5 min
Views15K
Это очередной перевод статьи про rails, в этот раз моей собственной. Статья носит развлекательный характер и предназначена для людей не знакомых с бэкендом и rails приложениями.

Оригинал статьи тут и картинки взяты там же.

Все мы знаем о прекрасном мире Веба. Каждый день мы возвращаемся туда за ответами или же просто чтобы хорошо провести время. Однако не каждый знает как устроен этот мир единички и нуля.

Что же, этот мир очень велик и не каждый видел его край. Сейчас он также велик как наш, к счастью, в нем нет границ и с каждым днем он расширяется. Там появляются новые государства, возможно вы слышали о некоторых из них, например PhP или Python, в этих государствах появляются города (мы их называем приложения), а в городах жители (объекты и сущности).

Добро пожаловать в мир Ruby

Читать дальше →

Я смог и вы сможете: делаем RPG на JavaScript

Reading time6 min
Views39K
image

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

Я боялся использовать объекты, например. Они были такой большой страшной вещью, которую я откладывал на потом. Но сейчас я использую их все время.

Я собираюсь показать вам все шаги, через которые я прошел, при создании моей ролевой игры в JavaScript.

Имейте в виду, что я новичок (всего 2 месяца в программировании), поэтому некоторые мои решения можно улучшить. Я же постараюсь дать вам основы, с которых можно начать.

data.table: выжимаем максимум скорости при работе с данными в языке R

Reading time9 min
Views16K

На эксклюзивных условиях представляем для вас полный вариант статьи из журнала Хакер, посвященной разработке на R. Под катом вы узнаете, как выжать максимум скорости при работе с табличными данными в языке R.


Читать дальше →

Вышел Riot.js 3.0

Reading time4 min
Views16K
image22 ноября года сиего вышло обновление Riot.js — минималистичной библиотеки для создания веб-интерфейсов. Как пишут её авторы на главной странице своего сайта, Riot.js — это «Simple and elegant component-based UI library». И она действительно очень простая и элегантная.

Я большой поклонник данного изобретения. Оно не забивает мой мозг лишней логикой, правилами и принципами. Оно даёт мне очень простое API для создания вложенных друг в друга компонентов и даёт возможность в действительно короткие сроки реализовать то, что мне требуется.

Для меня программирование и API различных популярных библиотек всегда было чем-то похожим на математику. На основе чего работает вся математика? На основе чистых и минималистичных формул, доведённых до совершенства. За время существования этой науки человечество смогло довести различные сложнейшие идеи до коротких и чистых выражений. И примерно тем же самым занимаются и хорошие библиотеки и фреймворки в мире программирования. Они предоставляют инженерам ПО простой и понятный API для решения проблем. Все мы знаем jQuery с его короткими и лаконичными методами для работы в браузере и её девиз "write less, do more". Или, скажем, многие знают о такой замечательной библиотеке, как Sugar.js для добавления разумной порции сахарка вашим глобальным объектам JavaScript. И Riot.js — в точности об этом же, только на тему веб-компонентов с учётом всех последних тенденций в эволюции веб-технологий.
Читать дальше →

Иммиграция в Болгарию

Reading time9 min
Views28K
Здравствуйте! В свое время зачитываясь рассказами про эмиграцию в страну N, я мечтал, что когда-нибудь и я совершу нечто подобное, а затем опишу свой опыт. Что же, навязчивые мечты сбываются, и теперь пришел черед моего рассказа — и на этот раз речь пойдет об иммиграции в Болгарию.
Читать дальше →

Google избавляется от частных клиентов в России

Reading time2 min
Views73K
Вчера получил из Google письмо, в котором говорится:
Добрый день!

Вы получили это сообщение, так как пользуетесь Google Cloud Platform, Firebase или API. Сообщаем Вам об изменении в работе сервисов Google Cloud, которое затронет Ваш аккаунт.

Начиная с 7 декабря 2016 г. сервисы Google Cloud Platform, Firebase и API можно будет использовать в России только в коммерческих целях. В связи с этим 7 декабря 2016 г. тип Вашего аккаунта будет изменен на юридическое лицо вместо физическое лицо.

Тип аккаунта «Юридическое лицо» означает, что Вы используете его в коммерческих целях. Владельцем такого аккаунта может являться коммерческая организация, аффилированное лицо, индивидуальный предприниматель или товарищество.

Мы не будем включать НДС в платежи по Вашему аккаунту, и Вам необходимо будет самостоятельно рассчитывать сумму налога по ставке, установленной в России.

Если Вы используете службы Google Cloud Platform, Firebase и API в некоммерческих целях, Вам следует отказаться от их использования до 7 декабря 2016 г. Для этого нужно отключить оплату для всех проектов. Подробнее об изменениях читайте в Справочном центре.

Если у Вас есть вопросы, обратитесь в службу поддержки Google Cloud или к менеджеру по работе с клиентами.

Читать дальше →

Information

Rating
Does not participate
Location
Россия
Registered
Activity