Search
Write a publication
Pull to refresh
0
0
Дмитрий @d9k

TypeScript/SQL разработчик

Send message

Взлом матановой капчи на C# — это просто!

Reading time4 min
Views42K
В этом топике я хочу вам рассказать о взломе т.н. «матан-капчи», пример которой был представлен в недавнем топике Матановая капча на PHP — это просто!.
Прочитав статью автора об этой замечательной капче, мне захотелось написать программу для её распознавания, как говорится just for fun ;)
Читать дальше →

Дружимся с AirPlaySDK

Reading time5 min
Views7.9K
Ни для кого не секрет что кодинг для мобильников — дело интересное, прибыльное и перспективное. Я всегда запускаю на КПК какую-нибудь игру когда спускаюсь в метро и вижу как то же самое делают и окружающие меня люди. Но к сожалению текущее разнообразие платформ зачастую заставляет нас ограничить круг поддерживаемых устройств.
Читать дальше →

Много сайтов на одной странице

Reading time4 min
Views9.3K

Здравствуй Хабр!


A good day! Добрый день! Мы выступаем от стартапа brief.ly из Лондона. От наших украинских друзей мы узнали о могучем коммюнити Хабрахабра, и решили представить на усмотрение вам наш революционный продукт.

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

Интермеццо


Сколько в Интернете сервисов сокращения адресов, подлинно не известно никому. Точно больше тысячи. Каждая серьезная компания имеет свой собственный короткий домен. Твиттер породил целую индустрию. Отличаются они лишь дополнительным функционалом. Однако все они берут один URL и делают из него другой URL.

Предыстория


Мы решили сделать нечто новое, казалось бы банально очевидное. А почему бы не брать много ссылок, положить все в табы, и пересылать это как одну страницу?

Vitaly Portnikov

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

Kango — фреймворк для создания кроссбраузерных расширений

Reading time4 min
Views8K

Вступление

Kango позволяет создавать расширения для популярных браузеров используя только JavaScript, причем код един для всех браузеров. На данный момент поддерживается Chrome, Firefox, Internet Explorer (в публичном доступе только версия с поддержкой Chrome и Firefox) и ведется работа над поддержкой Opera и Safari. Ниже будет рассмотрено как можно быстро создать простой кроссбраузерный Gmail Checker

Что должно получиться в итоге:



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

Браузерная стратегия «Пути Истории». Архитектура и эволюция проекта

Reading time6 min
Views12K
В этой статье я расскажу о разработке и эволюции технической части браузерной игры «Пути Истории».
Уделю внимание выбору языка программирования, базы данных, технологии и архитектуры. Расскажу о хостинге.

Пути Истории — это массовая браузерная стратегическая игра. Проект начинался с энтузиазма одного человека и вырос до серьзного проекта с немалой аудиторией.
Читать дальше →

О «проблемах» молодых предпринимателей (стартаперов) в России простыми словами

Reading time1 min
Views2.9K
Дмитрий Потапенко как всегда четко и по-простому рассказывает о «проблемах» предпринимательства в России.

«У нас до сих пор совковый подход к себе… Якобы, у нас проблема с мотивацией… Если ты не хочешь, урод, то тебя, урода, невозможно что-то заставить делать» (с) Потапенко

Нужна ли аспирантура?

Reading time5 min
Views93K
Этот вопрос мне задают настолько регулярно, что решил оформить это все в единый поток мыслей, чтобы в следующий раз просто прислать ссылку.

Несмотря на то, что поставленный вопрос достаточно простой, ответ на него далеко не простой. Хотя есть и простой ответ: «it depends». И это действительно так.

Статью построим в виде «описание тезиса» – «контраргументы» — «вывод».

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

Игра вКонтакте — история одного запуска

Reading time3 min
Views1.6K
Всем привет. В пятницу мы запустили гонки для социальной сети вКонтакте — ТурбоГонки. Поиграть в них можно здесь: http://vkontakte.ru/turboraces, а выглядят они приблизительно так:

image

Пока еще игра в режиме бета-теста, поэтому вы можете испытывать ненависть к автору топика, непримиримое желание выбросить свой браузер и даже уверен, что найдете некоторые баги, но милости просим к нам на огонек.
А под катом написано, как и на чем это работает

Основы и заблуждения насчет JavaScript

Reading time9 min
Views55K

Объекты, классы, конструкторы

ECMAScript, будучи высоко-абстрактным объектно-ориентированным языком программирования, оперирует объектами. Существуют также и примитивы, но и они, когда требуется, также преобразуются в объекты. Объект — это коллекция свойств, имеющая также связанный с ней объект-прототип. Прототипом является либо также объект, или же значение null.
В JavaScript нет привычных классов, но есть функции-конструкторы, порождающие объекты по определенным алгоритмам (см. Оператор new).

Прототипное делегирующее наследование


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

Теперь представим другую планету, на которой не такое как на Земле генное наследование. Там обитают мутанты с «телепатическим наследованием», которые способны изменять гены своих потомков.
Разберем пример. Отец наследует гены от Дедушки, а Сын наследует гены от Отца, который наследует от Дедушки. Каждый мутант может свободно мутировать, и может менять гены своих потомков. Например у Дедушки был зеленый цвет кожи, Отец цвет унаследовал, Сын тоже унаследовал цвет. И вдруг Дед решил: «надоело мне ходить зеленым — хочу стать сними», смутировал (изменил прототип своего класса) и «телепатически» распространил эту мутацию Отцу и Сыну, вобщем посинели все. Тут Отец подумал: «Дед на старости лет совсем двинулся» и поменял свой цвет в генах обратно на зеленый(изменил прототип своего класса), и распространил «телепатически» свой цвет сыну. Отец и Сын зеленые, Дед синий. Теперь как бы дед ни старался Отец и сын цвет не поменяют, т.к сейчас Отец в своем прототипе прописал цвет, а Сын в первую очередь унаследует от Прототипа Отца. Теперь Сын решает: «Поменяю ка я свой цвет на черный, а моё потомство пусть наследует цвет от Отца» и прописал собственное свойство, которое не влияет на потомство. И так далее.
Читать дальше →

Как доделать игру

Reading time9 min
Views28K
На блоге одного из создателей Aquaria и Spelunky есть любопытный пост с советами для тех, кто испытывает проблемы с доведением до конца своих игровых проектов. Этот список советов оказался для меня своего рода «зеркалом», в котором отражены многие проблемы, с которыми сталкивался я сам, и я был удивлен тем, насколько хорошо автору удалось уловить суть этих проблем и предложить свои решения, зачастую бескомпромисные.
image
Приближаясь к заключительной стадии разработки моей игры, я много думал о том, как завершать выполнение проектов в целом. Я заметил, что вокруг много действительно талантливых разработчиков, у которых возникают проблемы с доведением до конца игровых проектов. По правде говоря, я и сам оставил позади себя ряд незавершенных игр… Думаю, у многих та же ситуация. Не всякий проект удается, по разным причинам. Однако если вы стали замечать, что постоянно забрасываете проекты, которые имеют неплохой потенциал, вероятно, стоит оглянуться назад и изучить тому причины.
Читать дальше →

dotPeek — новый, бесплатный декомпилятор от JetBrains

Reading time1 min
Views42K
Всем привет! Сегодня у меня еще одно радостное сообщение для всех кто еще ищет замену Reflector’у — наконец-то вышел “в публику” декомпилятор dotPeek от компании JetBrains.

И как же это счастье выглядит?

Применение Event-driven модели в веб-приложении

Reading time6 min
Views12K
Взаимодействие частей приложения друг с другом — важная часть архитектуры любой программы.
И существует немало паттернов для их реализации. Я бы хотел на примере веб-приложения показать применение одного из них, а именно — Event-driven модели.
Она хорошо известна любому frontend-разработчику — всякий раз, работая с событиями DOM, вы используете эту модель. Давайте попробуем построить на ней не маленькое веб-приложение — файловый менеджер.

Продолжим под катом

Иногда стартап должен быть медленным

Reading time3 min
Views1.2K
Выкладываю перевод статьи про стартапы, которые оказались слишком… быстрыми и опередили свое время. С другой стороны, каждая идея принесла успех, но немного позже.

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

Итак, перед вам несколько историй неуспеха, в каждой вы без труда заметите, во что это переросло.
Читать дальше →

Итерации длительностью в день — то, что доктор прописал

Reading time3 min
Views2.6K
Я очень люблю паттерны. Нередко применяю идеи из одной сферы в другой — так, в тайм-менеджменте отлично работает принцип программирования KISS (keep it simple, stupid), равно как и DRY (don't repeat yourself).

image

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

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

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

Вместе с тем, многие пытаются управлять своим временем по «водопадной модели» — пишется план, а потом не корректируется. При этом план составляется сложнейший, на много дней вперед. И конечно, он либо проваливается полностью, либо выполняется на небольшой процент. Такие планы, как точно заметили ребята из 37signals, точнее называть догадками.

А как же писать планы, которые работают?
Читать дальше →

Будьте авторами своей жизни!

Reading time2 min
Views4K
— А как же наше будущее, Док?
— Ваше будущее ещё нигде не записано, Марти. И ничьё. Так что сделайте его достойным!
Финал фильма «Назад в будущее»


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

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

Как работать «в потоке»? Нужны всего 3 ресурса

Reading time5 min
Views120K

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

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

Игра за два дня

Reading time8 min
Views33K
Как-то здесь на хабре была заметка о мероприятии про игру за два дня. Предлагалось зарегистрироваться, найти себе команду (всех тех, кого раньше не хватало), вспомнить старые залежавшиеся задумки, укрыться от внешнего мира на два дня и реализовать игру. Идея мне понравилась, и мне сразу захотелось попробовать ее на практике.

Вот что у нас получилось.

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

Очнитесь, на дворе XXI век

Reading time5 min
Views32K


Начать статью я хотел бы с констатации того факта, что прямо за окном находится 2011 год (пруфлинк), середина апреля. Напоминаю я это в первую очередь себе, поскольку меня периодически посещают в этом сомнения. Дело в том, что как по работе, так и ради хобби я часто читаю код на С++, написанный лет 10-20 назад (но поддерживаемый и поныне) или код написанный совсем недавно, но людьми, которые учились программировать на С++ те же 20 лет назад. И вот после этого у меня и возникает ощущение, что никакого прогресса за эти годы не было, ничего не менялось и не развивалось, а по Земле до сих пор бродят мамонты.
Читать дальше →

Information

Rating
8,295-th
Location
Челябинск, Челябинская обл., Россия
Date of birth
Registered
Activity

Specialization

Frontend Developer, Fullstack Developer
Middle
From 150,000 ₽
SQL
PostgreSQL
MySQL
TypeScript
React
Redux
Bash
Storybook
Markdown
Node.js