Как стать автором
Обновить
26
0
Сергей Толмачев @Tolsi

Scala разработчик

Отправить сообщение

Почему я ненавижу фреймворки

Время на прочтение4 мин
Количество просмотров70K
Я собираюсь сделать Java-веб-приложение (да, это будет Java, по некоторым причинам, которые сейчас озвучивать не хочу). В процессе работы, я оцениваю кучу J2EE portlet-enabled JSR-compliant MVC role-based CMS web service application container фреймворков.

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

Давайте представим, что я решил сделать шкафчик для специй.
Читать дальше →
Всего голосов 363: ↑297 и ↓66+231
Комментарии239

Поддержка камеры и распознавание цифр в браузере «Опера»

Время на прочтение3 мин
Количество просмотров6.5K
Я вчера заморочился на отличненько. Мне показалось скучным и грустным вводить цифры счёта за квартиру в окошко «Госуслуг» и решил сделать автоматическую распознавалку чисел, попутно изучив работу с камерой из браузера.
Читать дальше →
Всего голосов 75: ↑72 и ↓3+69
Комментарии34

Умение просчитывать

Время на прочтение5 мин
Количество просмотров48K
Существует разговорный глагол «просчитывать», что означает — моделировать в голове различные варианты развития события и последствия. Сегодня хочется поговорить об умении просчитывать ходы, и почему это является важнейшим умением в жизни.

Для начала небольшое введение. Не задумывались, почему многие великие люди любят шахматы? Почему Сергей Галицкий (миллиардер, с нуля построил сеть «Магнит»), говоря о важных для начинающих бизнесмена вещах, сказал в первую очередь о логике (кстати, в шахматах Сергей хорошо поднаторел в свое время). Почему о той же логики говорит известный блоггер Фриц Морген. А выдающий бизнесмен Дмитрий Потапенко, рассказывая о том, как ему удалось построить свои сети магазинов и ресторах, при моделировании бизнес-процессов предлагает пользоваться блок-схемами алгоритмов из восьмого класса?

Потому что они умеют раскладывать задачи в голове на несколько итераций, несколько шагов.
Читать дальше →
Всего голосов 47: ↑36 и ↓11+25
Комментарии34

Почему IDEA лучше Eclipse

Время на прочтение5 мин
Количество просмотров213K

Священный спор


Принято считать, что есть «вечные» вопросы, на которые нет правильного ответа. Например, что лучше: Windows или Linux, Java или C#; Чужой против Хищника или Чак Норрис против Ван Дамма.

Одним из таких холиваров считается выбор лучшей IDE для Java:


Идут постоянные споры о том, в которой из них больше плагинов, горячих клавиш и т.д. Различий так много, что трудно выбрать, какие из них важнее, и все сходятся в одном: обе IDE примерно одинаковы по своим возможностям, и выбор одной из них — это дело вкуса.

Так вот, я утверждаю, что это не просто дело вкуса. Есть объективные причины, почему
Intellij IDEA однозначно лучше, чем Eclipse.

Подчёркиваю, мы сейчас рассматриваем обе среды именно как Java IDE.

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

Итак, главное различие между IDEA и Eclipse
Всего голосов 185: ↑139 и ↓46+93
Комментарии262

Автопереводчик через Skype

Время на прочтение4 мин
Количество просмотров5.8K
С чего всё начиналось

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

Немного поисков, и я нашёл библиотеку Skype4COM, которая позволяет взаимодействовать со Skype.

Также, для работы со звуком, я буду использовать NAudio, а чтобы забирать данные с Гугла — xNet.
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии11

Вам не страшно открывать редактор?

Время на прочтение13 мин
Количество просмотров3.1K
В какой-то момент я стал замечать, что пишу более качественный: оптимальный, логичный и читаемый код, но пишу его медленно. По крайней мере, куда медленнее, чем лет 15 назад. Да, на старый код без слёз не взглянешь: всё можно сделать оптимальнее и, по крайней мере, читабельнее. Но код был написан быстро.

Проблема в контроле. Я стал жестче и глубже контролировать код и… стал тратить на этот контроль слишком много ресурсов.

Основной принцип прост. Если контролю подлежит 10-20% случаев, то на контроль надо тратить… 0% ресурсов. Баги и переписывания всё равно будут. Но лучше разделить кодирование и отладку и на время кодирования об ошибках вообще забыть.
Читать дальше →
Всего голосов 171: ↑128 и ↓43+85
Комментарии115

Руководство Apple «Как стать разработчиком под iOS»

Время на прочтение1 мин
Количество просмотров38K
Компания Apple приглашает новичков начать разработку своих приложений под iOS, и в помощь опубликовала руководство "Start Developing iOS Apps Today", где указаны все необходимые действия на каждом этапе, даются советы по выбору языка программирования, дизайну интерфейса приложения и максимизации прибыли в App Store.



Руководство очень лаконичное, всего несколько строчек на каждой странице, но содержит все необходимые ссылки для более подробного изучения темы. Очевидно, оно предназначено для тех, кто ещё никогда не программировал под iOS.
Всего голосов 89: ↑76 и ↓13+63
Комментарии49

Еще раз про Bridge (в картинках)

Время на прочтение1 мин
Количество просмотров4.3K
Еще раз, если позволит сообщество, обращусь к теме паттерна Мост (Bridge), ибо последние статьи, на мой взгляд, объясняют его не так просто, как нужно.

Основная идея: «Используем Мост там, где нужно менять не только имплементацию, но и абстракцию».

Одна картинка стоит 1000 слов…

Читать дальше →
Всего голосов 44: ↑34 и ↓10+24
Комментарии53

Навигатор по бесплатным иконкам

Время на прочтение2 мин
Количество просмотров5K
Вчера в который раз возник вопрос по подбору нескольких иконок в очередном веб-проекте. В основном пользуюсь готовыми иконками из бесплатных наборов. До недавнего времени прибегал к услугам сайта iconpicker.deviantech.ru. Навигация по иконкам была хоть и не самая удобная, но явно лучше, чем просто проглядывать их в Finder'е (или Explorer'е). Однако в последнее время сайт недоступен.

В итоге решил сделать собственный навигатор по иконкам:


Читать дальше →
Всего голосов 70: ↑65 и ↓5+60
Комментарии37

Swing. Десять полезных простых вещей

Время на прочтение4 мин
Количество просмотров71K
image

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

Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии56

Все о String.intern()

Время на прочтение4 мин
Количество просмотров120K
Думаю, что многие Java-разработчики знают или хотя бы слышали о методе String.intern(). Но далеко не каждый использует его в своих приложениях или представляет в каких случаях он полезен и полезен ли вообще. Так было и со мной до тех пор пока я не столкнулся с этим методом в одном из проектов. В тот момент я захотел узнать смысл и особенности его использования и набрел на одну весьма интересную статью ведущего разработчика Yahoo! по имени Ethan Nicholas, переводом которой теперь хочу поделиться с той частью Хабра-сообщества, которая не безразлична к языку Java.

Тем, кто знает об этом методе лишь понаслышке, добро пожаловать под кат.
Читать дальше →
Всего голосов 56: ↑49 и ↓7+42
Комментарии33

Приложение в честь Дня святого Валентина на libgdx

Время на прочтение7 мин
Количество просмотров26K

Периодически появляются топики, посвященные дню Валентина. В этом году я тоже решился включиться в эту тему и сделать что-нибудь оригинальное и необычное. Было решено создать простенькое приложение под Android с сердечками, которые бы имели свои физические модели и взаимодействовали друг с другом. Позже я добавил текст, звуки, частицы и некоторые другие красивости. В результате получилось даже что-то вменяемое и оригинальное! В данной статье описывается процесс создания вместе описанием возможностей и подводных камней библиотеки libgdx.


.

Читать дальше →
Всего голосов 50: ↑30 и ↓20+10
Комментарии22

Как придумать имя для нового продукта или проекта

Время на прочтение3 мин
Количество просмотров5.4K
Нет, я не буду мусолить скучные теории. Уверен, всем нам для запуска нового продукта или сервиса достаточно самых простых и прозрачных критериев.

Вот, я и решил напомнить читателям критерии, сформулированные Гаем Кавасаки в его, уже превратившейся в классическую, книге The Art of the Start (или просто — «Стартап»).

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


Уверен, здесь ещё есть люди, которые не знакомы с этим подходом и он окажется им полезным.
Читать дальше →
Всего голосов 56: ↑41 и ↓15+26
Комментарии42

Повышаем производительность программирования (ментальная карта)

Время на прочтение3 мин
Количество просмотров19K
часы

Хочу поделиться с вами своими долголетними наблюдениями о том, как улучшить производительность труда программиста. Вот ментальная карта в виде картинки, вот — в виде mm файла, а ниже — она же в виде вложенных списков.
Читать дальше →
Всего голосов 66: ↑51 и ↓15+36
Комментарии58

Топ-5 самых впечатляющих книг, которые должен прочесть каждый разработчик ПО

Время на прочтение3 мин
Количество просмотров379K
Не так давно промелькнула ссылка на достаточно свежее (осень 2011) англоязычное голосование со скромным названием "самая впечатляющая книга, которую должен прочесть каждый разработчик программного обеспечения" и описанием:

Если бы вы могли вернуться в прошлое, к самому началу своей карьеры разработчика и сказать самому себе: «прочитай именно эту книгу», в самой начале своей карьеры разработчика, какую бы книгу вы рекомендовали?

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

Однако в данном небольшом посте я возьму на себя смелость перечислить ТОП-5 тех самых книг, победивших в голосовании, переведенных на русский язык. И дать небольшие комментарии, ведь книги действительно этого достойны. Да, лично я бы поменял некоторые места, однако положимся на «мнение зала» ресурса Stack Overflow.
Читать дальше →
Всего голосов 236: ↑219 и ↓17+202
Комментарии182

Язык программирования D — продолжение 2

Время на прочтение9 мин
Количество просмотров3.1K
Доброго всем времени суток!
Сегодня я продолжаю рассказ о замечательном языке программирования D.
В своих прошлых статьях я вел рассказ о мультипарадигменности и метапрограммировании в D.
К тому же не могу не отметить замечательную статью Volfram, в которой он продолжил тему метапрограммирования, рекомендую.
За окном праздники, люди отдыхают, празднуют, радуются, потому не хочу нагружать вас тяжелой информацией и речь сегодня поведу на несложную, но от того не менее приятную тему: перегрузка операторов.
Вы можете сказать, что это вообще мелочи и не очень-то и интересно, но как раз в D перегрузка операторов является немаловажной частью дизайна языка и, что еще важнее, я смогу показать несколько примеров использования CTFE (Compile-time function evaluation), о котором была речь в предыдущей статье. Не зря же я им так восхищался, верно?
В добавок, тема перегрузки операторов в D затрагивает много связанных с ней немаловажных концепций, которые в свою очередь я раскрою в статье.
Итак, кому интересно — добро пожаловать под кат.

Читать дальше →
Всего голосов 32: ↑30 и ↓2+28
Комментарии18

Обзор языка программирования Rust

Время на прочтение10 мин
Количество просмотров103K
Rust — новый экспериментальный язык программирования, разрабатываемый Mozilla. Язык компилируемый и мультипарадигмальный, позиционируется как альтернатива С/С++, что уже само по себе интересно, так как даже претендентов на конкуренцию не так уж и много. Можно вспомнить D Вальтера Брайта или Go от Google.
В Rust поддерживаются функицональное, параллельное, процедурное и объектно-ориентированное программирование, т.е. почти весь спектр реально используемых в прикладном программировании парадигм.

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

Читать дальше →
Всего голосов 74: ↑73 и ↓1+72
Комментарии73

BitTorrent запустила свой файлообменный сервис

Время на прочтение1 мин
Количество просмотров2K


Компания, разрабатывающая широко известный BitTorrent-клиент µTorrent, в четверг запустила свой облачный сервис Share, позволяющий осуществлять файлообмен по известному принципу: пользователь выбирает на своем компьютере файл, затем получателя и делится с ним ссылкой.

В отличие от DropBox и других платных сервисов, Share абсолютно бесплатен и не имеет ограничений на размер файла; также не требуется выполнять никаких подписок. Конечно, файлообмен осуществляется при помощи P2P, а в качестве, собственно, хранилища используется облачный сервис Amazon S3. Любопытно то, что пользователю таким образом нет необходимости «оставаться на раздаче» — эту роль будет играть за него Amazon; причем когда файлы будут успешно скачаны всеми получателями, то они будут удалены из облака — таким образом обеспечивается анонимность.

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

На данный момент клиентское приложение сервиса находится в альфа-версии и доступно только для Windows.

[Share]
Всего голосов 55: ↑50 и ↓5+45
Комментарии69

Keep it simplest. Или про простые сайты

Время на прочтение2 мин
Количество просмотров5K
Для начала, у меня просто возникла потребность сделать сайт с текстовой информацией. Сделать надо было что-то несложное, но не забывая про мобильные устройства, которых все больше ходит по сайтам.

Очевидным вариантом было бы набросать основную разметку, определить doctype и оставить браузерам работу по стилизации. Но это очень ленивый метод, который дает результат, вызывающий недоумение у будущего посетителя такой страницы. Хочется хотя бы базовой стилизации заголовков и ссылок, какой-то простой структуры.

Так что следующим шагом стал просмотр готовых вариантов в сети.

Поиск


Шаблоны для CMS не подходят хотя бы потому, что CMS не будет. И такие шаблоны чаще всего рассчитаны на более сложные сайты. И они не будут радовать посетителей с мобильными устройствами.

Хотя, сейчас появились шаблоны с адаптирующейся разметкой (responsive design), которые и вызвали у меня интерес. К сожалению, большинство найденных решений оказались платными, что не удивительно, учитывая объем работы, который проделывают их авторы.
Читать дальше →
Всего голосов 138: ↑127 и ↓11+116
Комментарии81

Архитектура логирования

Время на прочтение10 мин
Количество просмотров119K
Мой опыт разработки в основном строится вокруг разнообразных сетевых cервисов под Windows и Linux. Я обычно стремлюсь добиться максимальной кроссплатформенности вплоть до бинарной совместимости. И конечно, накопилось некоторое количество стабильных решений связанных с логированием.

Топик написан как продолжение к этой статье и будет полезен в первую очередь начинающим программистам.

Здесь я собираюсь осветить следующие вопросы:
  • Внутреннее свойство логгера и примеры софта который его использует.
  • Объемы, уровни и детализация сообщений лога.
  • Общие правила конфигурации в разработке, в бою и в расследовании.

Читать дальше →
Всего голосов 33: ↑29 и ↓4+25
Комментарии18

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность