Архив за 18 августа 2014 - 3

На сайте ВТБ24 опубликована новость о том, что сотрудники банка ходили в офис Google:

Лучшие сотрудники фронт-линии ВТБ24 посетили российский офис Google. Специалисты ВТБ24 узнали об истории Google, о принципах работы и миссии компании, о проектах, над которыми сейчас работают в корпорации, познакомились с нестандартной организацией рабочего офисного пространства.

Это обмен опытом или что?

Читать полностью »

Как часто вам приходится вводить в интерфейс какой-либо программы/web-сервиса дробные значения? Если часто, то, вероятно, вы сталкивались с неадекватным поведением таких полей. Я, например, довольно регулярно бьюсь лбом об абсолютно тупые формы. Хотите знать, почему ввод дробных значений может довести до белого каления, и что с этим делать? Добро пожаловать по кат.
Читать полностью »

Шоу Звук #14 — Подкаст об аудиотехнике, комплектующих, форматах и технологияхС вами «Шоу Звук» — это подкаст для тех, кто любит жить, работать, отдыхать и передвигаться, слушая любимую музыку, подкасты или аудиокниги дома, на работе, в метро или других видах транспорта. Мы говорим простыми словами об аудиотехнике и звуке.

В 14-м выпуске Тимофей Шиколенков (timshick), директор по маркетингу и развитию бизнеса в Аудиомании, уже во второй раз отвечает на Ваши вопросы, которые можно оставлять в виде отзывов к этому подкасту в русскоязычном iTunes или в комментариях к выпускам на Хабре.
Читать полностью »

Мы рады поделиться с вами записью наших выступлений и видео с уникальной секции по высоким нагрузкам с конференции CodeFest. Вы можете задавать ваши вопросы к докладам в комментариях и мы на них обязательно ответим.

1. «Панель: Тренды разработки в высоконагруженных интернет-проектах».
Алексей fisher Рыбак (Badoo) собрал вместе лучших экспертов из Яндекса, Mail.ru, 2ГИС и Communico и обсудил с ними современные тенденции в разработке и поддержке больших высоконагруженных проектов. Плюс эксперты рассказали об интересных решениях и поделились личным опытом.
Темы:

  • инфраструктурные проекты;
  • clouds / paas;
  • modern databases / sql;
  • real-time web (push, comet, spdy) и другие.


Читать полностью »

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

image

Читать полностью »

Знаете, я очень люблю сервис Coursera. Там много отличных курсов, удобно осваивать материал, и, конечно же, общение с “одноклассниками”. Но, поскольку у сервиса до сих пор статус «стартапа», можно понять и простить некоторые недоработки. Например, в процессе прохождения курса, не всегда получаешь оценки «отлично», и приходится сверяться, проходишь ли ты по своему проценту успеваемости на получение сертификата, или нужно поднажать, и оставшиеся задания выполнить качественно и вовремя.

К сожалению, разработчики ресурса не сделали (пока) единого места, в котором просуммированы все баллы, полученные студентом. Ежедневно тысячи студентов вручную считают свои балы, вычисляют свой процент, а это многие человекочасы, портаченные зря. Столкнувшись с этой проблемой не в первый раз, я и решил написать расширение для Google Chrome™, являющегося моим основным браузером. А поскольку в основном пишу на стеке RoR, решил писать свое приложение на более привычном мне CoffeeScript, с последующей трансляцией в JavaScript. Об особенностях написания этого расширения и будет моя статья.
Пишем Chrome расширение на CoffeeScript — подсчет баллов на Coursera
Читать полностью »

Ассортимент смартфонов компании Micromax пополнился моделью Canvas Knight Cameo. Новинка по последней тенденции может метить на звание очередного «селфи»-смартфона, ведь разрешение ее фронтальной камеры составляет 5 Мп.

В основе устройств лежит однокристальная система MediaTek MT6592M с восьмиядерным процессором ARM Cortex-A7 частотой 1,4 ГГц и GPU Mali-450 MP4. Управлением всеми функциями изделия обеспечивается операционной системой Android 4.4.2.

Micromax Canvas Knight Cameo

Читать полностью »

В этой статье я хочу написать о том, как я пришел к использованию кубов на Microsoft Analysis Services и описать проблемы, которые пришлось решить для успешного их применения.Читать полностью »

image

Издательство Питер решило освободить полки от компьютерных книг. Объединили последние актуальные книги по Linux в серию, добавили epub версии и, конечно же, специально для Хабры сделали скидку от прайсовых цен.
Читать полностью »

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

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

Принципы условно сгруппированы в три группы: принципы принятия решений; принципы, направленные на повышение качества кода; принципы, направленные на повышение производительности кода.

  • Принятие решений
    • Любое техническое решение должно быть обосновано
    • Ответственность за принятое решение всегда лежит на том или тех, кто принял данное решение
    • При принятии технических решений необходимо учитывать их действие во времени и их соответствие потребностям бизнеса
    • Одним из основных критериев при принятии технических и иных решений должна быть их наибольшая эффективность
    • Смело отступать от правил, методологий, шаблонов и прочих ограничений, если эффект от такого отступления превышает возможные потери (Special cases aren't special enough to break the rules, although practicality beats purity)
    • При необходимости сделать работающее, но, возможно, не наилучшее, решение сразу, а позднее улучшить его (Now is better than never, although never is often better than *right* now)
    • Если сложно выбрать между двумя альтернативными техническими решениями, то нужно выбрать любое и двигаться с ним дальше, когда появится больше инфорации, то можно будет сделать рефакторинг, если решение оказалось неоптимальным
    • Гибкость технических решений крайне желательна, а универсальность не обязательна
  • Качество исходного кода
    • Качество кода следует оптимизировать на базе сформированной системы критериев, сбалансированной по отношению к затратам в краткосрочном и долгосрочном периодах
    • Писать оптимальный код сразу, если это не увеличивает его сложность и сроки разработки (Beautiful is better than ugly)
    • Самодокументируемый код имеет приоритет над хорошо прокомментированным (Beautiful is better than ugly)
    • Писать TODO и FIXME в коде
    • Давать переменным, функциям, методам, классам и другим объектам исходного кода имена точно отражающие их назначение, несмотря на увеличение длины названий (Explicit is better than implicit)
    • Меньшее число строк и объем кода предпочтительнее, при сохранении прежней читабельности кода (Simple is better than complex)
    • Применять инспекцию кода (code review) как инструмент обнаружения ошибок, выравнивания стиля разработки, знакомства с чужим кодом и обучения в команде
    • Применять повторное использование своего и чужого кода
    • Использовать специализированные библиотеки для решения конкретных задач, вместо разработки своего аналогичного кода
  • Производительность
    • Производительность разработки кода имеет приоритет над производительностью исполнения кода
    • Оптимизация производительности исполнения кода должна быть обоснована соответствующей потребностью
    • Оптимизация производительности исполнения кода должна выполняться за счет устранения наиболее серьезных узких мест
    • В первую очередь должны быть использованы наиболее эффективные методы оптимизации производительности исполнения кода

Далее дано развернутое пояснение каждому из перечисленных принципов. Для некоторых принципов в круглых скобках указанны постулаты Zen of Python, которые на мой взгляд имеют отношение к данным принципам, либо их частям.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js