Pull to refresh
143
0
Виталик Гордон @alex_blank

незаслуженный народный артист™

Send message

Необычное собеседование: GPT-3 в роли кандидата

Reading time3 min
Views11K
GPT-3 сегодня у всех на слуху — новейшая и самая большая языковая модель от OpenAI, обученная на терабайтах текстов из интернета. А если вы всё проспали, то вот подборка крутых демок от счастливчиков, получивших ранний бета-доступ к API.

К сожалению, у меня нет заветных API ключей — но я нашел обходной путь. Существует увлекательная игра AI Dungeon, позволяющая получить непрямой доступ к GPT-3 в виде текстового квеста (за небольшую плату), чем мы и воспользуемся сегодня. Уж не знаю, полная ли там модель, или же это fine-tuned версия, дообученная на сценариях текстовых RPG игр, но и она внезапно оказалась хороша в кодинге — да так, что даже заставляет слегка понервничать ;)

Для проведения эксперимента я запустил игру с «custom» пресетом и выставил параметр «Randomness» около минимума (на 0.2), чтобы избежать чрезмерного разгула фантазии «собеседуемого». Поехали.
Читать дальше →

Горячая перезагрузка Chrome-расширения

Reading time2 min
Views7.6K

На днях возникло желание написать простенькое расширение для Google Chrome. Столкнулся с такой проблемой, что после изменений в коде расширения, браузер не перезагружает его автоматически. Это очень сильно затрудняет разработку, т.к. после каждого Cmd-S в редакторе, приходится нажимать "Reload" в списке расширений, а затем еще и рефрешить страницу, чтобы перезапустить контент-скрипты.


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


Готовое встраиваемое решение лежит на github.com/xpl/crx-hotreload, а в этой статье я расскажу, как оно реализовано.

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

JavaScript: где мы сейчас и куда двигаться

Reading time19 min
Views48K

Привет, хабраюзер. Поскольку, судя по всему, мы уже живем в будущем, то недавно я плотно засел за изучение новых фич ES6, ES7 и новых идей, предлагаемых React и Redux. И написал для своих коллег статью, в которой изложил сублимацию этих своих изысканий. Статья неожиданно получилась довольно объемной, и я решил опубликовать её. Заранее извиняюсь за некоторую непоследовательность изложения и отсылки к проприетарному коду из наших проектов — но думаю, что это всё же может помочь некоторым из нас лучше понять то, куда движется мир JavaScript, и почему не стоит игнорировать происходящее в нём.


Я расскажу про свои мысли о компонентых моделях, классах, декораторах, миксинах, реактивности, чистой функциональности, иммутабельных структурах данных и ключевой идее React. Сразу скажу — я не являюсь пользователем React, и все изложенное это результат чтения его документации и технических статей, объясняющих его архитектуру. То есть, некоторое идеализированное преставление, которое безусловно лишь упрощенная модель того, как оно всё на самом деле обстоит.


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

It’s the future

Reading time5 min
Views85K

Этот пост просто шутка и не пытается выставить инструменты, упомянутые здесь, в дурном свете. Я использую их постоянно, они великолепны, и я рекомендую их использовать. По мотивам It's the future @ CircleCI Blog


— Эй, я бы хотел научиться писать крутые веб-приложения. Слышал, у тебя есть опыт.


— Да, я как раз занимаюсь фронтендом, юзаю пару тулз.


— Круто. Я щас делаю простое приложение — обычный TODO-лист, используя HTML, CSS и JavaScript, и планирую заюзать JQuery. Это норм?


— Не-не-не. Это олдскул. Джиквери мёртв — никто не использует его теперь! Тебе нужен React. Это будущее.


— Окей, лады. А что это?


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

Sublime Text: валидация синтаксиса, автодополнение (v.1.1)

Reading time2 min
Views30K
UPD: по совету комментаторов, заменил jsl на более новый eslint

Заметил у себя на работе, что многие JS-разработчики до сих пор используют «голый» Sublime Text, матерясь и чертыхаясь после каждой пропущенной запятой, непарной скобочки или еще какой опечатки. Поэтому написал краткий гайд по исправлению этого недоразумения, которым с вами и делюсь. Итак:
Читать дальше →

C++/CLI — «клейкий» язык

Reading time5 min
Views41K
В этом топике я расскажу про C++/CLI — промежуточный язык для склеивания кода на C/C++ и .NET

Это довольно распространённая задача, ведь на C/C++ написаны тонны проверенного временем высокопроизводительного кода, который невозможно переписать на управляемые языки.

Наша задача — обеспечить .NET-интерфейс к этим библиотекам. Но как это сделать, если они написаны на C/C++?

Microsoft предлагает два варианта решения проблемы.
 
Читать дальше →

Three Futamura Projections и не только

Reading time7 min
Views11K
Привет, хабрачеловек. Сегодня я расскажу тебе про некоторые фундаментальные вещи в computer science: частичные вычисления, три проекции Футамуры и суперкомпиляцию.
 
 

1. Сразу к коду


-- функция, которая возводит x в степень y (неотрицательную)
power x y =
    case y of
        0 → 1
        1 → x
        _ → x * (power x (y - 1))


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

South — новый клёвый syncdb

Reading time3 min
Views26K
Я совсем недавно начал работать с Django и меня практически сразу же взбесила ущербная команда syncdb, которая ничего толком не синхронизирует, умеет лишь создавать таблицы для новых моделей.

А добавление или удаление полей в уже существующие модели превращается в настоящий pain in ass — приходится «подсматривать» за тем, как ORM создала бы таблицы заново (manage.py sqlall) и вручную делать ALTER TABLE для изменившихся столбцов таблиц.

То есть, ORM в Django так или иначе предполагает активный трах с SQL shell, потому что в процессе прототипирования эти поля в моделях изменяются просто пачками.

Погуглив, я нашел несколько способов...

Новый способ SMO

Reading time1 min
Views837
Вы открываете ваш профайл и видите незнакомца, добавившего вас в друзья. «Наверняка очередной wannabe-тысячник» — думаете вы; но на смену скепсису приходит интерес, когда вы замечаете, что большинство из его немногочисленных френдов — ваши друзья.

Незнакомец пишет исключительно под замок и прозрачными намёками в тексте постов даёт понять, что он как-то связан с кругом ваших друзей.
Подробности

Всплывающие извещения — зло

Reading time1 min
Views700
Когда жмешь на кнопку 'Сохранить' в профайле — ничего не происходит.

Ну, почти ничего.

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

Вот только здесь эта штука не работает как визуальный feedback для кнопки 'Сохранить'. Потому что кнопка — она в одном месте экрана, а поп-ап окошко — в диаметрально противоположном. И появляется оно как-то «без палева», в отличие от извещений в трее — они-то обычно вылезают с треском, грохотом и анимацией :)

Правильные пацаны рисуют извещение прямо на месте кнопки — там, где сосредоточено внимание пользователя в момент нажатия.

Кстати, пока писал пост — вылез поп-ап «Возникла ошибка в получении XML данных». WTF? Нельзя так сообщения об ошибках делать. Надо сообщать о том, что именно не удалось сделать, а не техническую причину этого.

Избавляемся от Caps Lock с пользой

Reading time1 min
Views1.3K
Cамая бесполезная (и вредная) кнопка на клавиатуре — Caps Lock. Особенно для тех, кто обладает скиллом «слепого десятипальцевого метода»™

Сколько неприятных секунд было потрачено на исправление последствий случайного нажатия на эту замечательную клавишу при наборе текста! Иногда так и хочется выдрать эту кнопку из клавиатуры и втоптать её в пол!

Но есть решение лучше.
Какое?

Digg vs. Habrahabr

Reading time2 min
Views1K
Все вокруг ноют: «Хабр, карма, Хабр, карма». А я вот… расскажу вам про Digg!

А именно — про социальные механизмы Digg'а в сравнении с Хабрахабром — исходя из впечатления, оставшегося у меня после нескольких дней на Digg'e.

Я понимаю, что Digg сравнивать надо скорее с news2, но всё-таки у Digg и Habrahabr много общего, да и заметки эти интересны будут многим, ранее лишь читавшим Digg.

Читать дальше про мафию и коллективный разум

Всё, что вы хотели знать о Singularity, но боялись спросить

Reading time16 min
Views15K


Мне бы хотелось написать что-нибудь про Microsoft Singularity. Это очень клёвая штука, и в IT сегодня все говорят про это. Вот обзор Singularity для тех, кто не хочет читать официальные публикации.


читать дальше про микроядерность, виртуальную память и глючные драйверы

Плагиаторы не спят

Reading time1 min
Views674
Пока вы чешете за ухом и бездельничаете — они тырят творчески перерабатывают ваши идеи.

Прислали тут в аську объяву на фрилансе.ру, не смог удержаться и не запостить сюда:

Калинов Руслан [k-ruslan]:

Создать копию сайта picamatic.com
От вас интересует цена и срок.


Коменты не менее весёлые:
Приветствую вас.сделаю в течении 2-3 дней, цена договорная.обращаться по icq: ...


Как одного из разработчиков этого самого picamatic.com, это всё меня немного насторожило. Дело в том, что, собственно, кроме реализации с Picamatic брать и нечего — это не rocket science, там нет никаких мега-идей, тупо пара тысяч строк нудного кодинга CSS/JS/Flash и несколько недель, убитых на отладку под всякими-разными браузерами. А копировать саму реализацию «за 2-3 дня» — как бы нехорошо.

Ну да хрен с ними, с клон-мейкерами — лишний стимул не стоять на месте. Вот релизнем v2.0 — затрахаются копировать… :)

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

What's all this fuss about Erlang?

Reading time5 min
Views5.9K
by Joe Armstrong

Никто не в состоянии предсказывать будущее — но я сделаю несколько обоснованных предположений.

Предположим, что Intel правы, что их проект Keifer выстрелит. Если это случится, то 32-х ядерные процессоры появятся на рынке не позже 2009-2010.

Ничего удивительного здесь нет. Sun уже продает восьмиядерные Niagara с 4-мя «hyperthreads» на каждом ядре, что эквивалентно 32-ум ядрам.

Это разработка, которая осчастливит программистов на Erlang. Они 20 лет ждали этого события, и теперь настало время расплаты.

Хорошие новости для Erlang-программистов:

На N-ядерном процессоре ваша программа будет работать в N раз быстрее.

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

Чем изучение Haskell/Python вредит программисту

Reading time5 min
Views28K
От переводчика:

На этот перевод меня толкнула очередная ситуация «мозгового ступора» при написании банального кода на C++/C#: я часами смотрел на уродливый код, но не мог сделать его по-настоящему лучше; мне пришлось просто принять то, что уродливым его видел только я один, и это была моя проблема, а не проблема в коде или языке. Я вспомнил те времена, когда такого со мной не было — а заодно вспомнил и эту старую статью, автор которой пострадал так же, как и я, при этом хорошо написав об этом.


Я обнаружил, что изучение Python и Haskell не улучшило меня как программиста на других языках (что противоречит тому, что иногда пишут об этом). В частности, Haskell — являясь настолько непохожим на императивные языки — по идее, должен был дать мне просветление в программировании, которое помогало бы мне даже без использования какого-либо языка вообще. Мой текущий опыт не совсем соответствует этому, и вот, почему:
Читать дальше →

Вовсе не очередной хостинг картинок

Reading time1 min
Views978
«We are stuck with technology when what we reаlly want is just stuff that wоrks.»
— Douglas Adams


Вот есть Flickr, есть Imageshack, есть хостинги — белый фон, кнопка «загрузить». А теперь есть еще и Picamatic.

Мы считаем, что в своей функциональности он удобнее их всех вместе взятых.

Короче говоря, это такая штука, которая делает свое дело хорошо.

Большое внимание мы уделили доступности сервиса во всех мыслимых конфигурациях всех распространенных браузеров (в тех, до которых у нас дотянулись руки — IE6/7, FF, Opera, Safari).

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

И… да, мы не боимся хабраэффекта :)

Безкликовые интерфейсы и сублимация

Reading time1 min
Views803
Частенько сталкиваюсь с проявлениями идей безкликовых интерфейсов в той или иной форме. Безкликовый интерфейс — это когда событие происходит не по нажатию кнопки мыши над смысловым элементом, а по наведению курсора на него.

Самый распространенный пример — это авто-раскрытие меню. Мне также встречалось переключение табов по наведению мыши на заголовок таба и даже… нажатие кнопки безкликовым образом:



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

Апогей безкликовости — dontclick.it

По идее, все это довольно круто и прогрессивно. А вот хотел бы я видеть все интерфейсы такими? Нет.

Засада в том, что мне нравится кликать, нравится кинестетика процесса кликания. Щелк-щелк. Ничего не могу с этим поделать.

От dontclick.it у меня одно впечатление — он пресный, не сексуальный — там не на что нажать и не за что ухватиться. Не выпуклый.

Интересно, каков психологический механизм всего этого… Иными словами, кто виноват и что делать?

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity