В нашем блоге на Хабре мы не только рассказываем о развитии своего продукта — биллинга для операторов связи «Гидра», но и публикуем материалы о работе с инфраструктурой и использовании технологий из опыта других компаний. Программист и один из руководителей австралийской студии разработки Icelab Тим Райли написал в корпоративном блоге статью о внедрении зависимостей Ruby — мы представляем вашему вниманию адаптированную версию этого материала.Читать полностью »
Рубрика «Разработка веб-сайтов» - 338
Эффективное внедрение зависимостей при масштабировании Ruby-приложений
2016-05-21 в 12:23, admin, рубрики: ruby, Блог компании Латера Софтвер, Программирование, разработка, Разработка веб-сайтовStrelki.js — еще одна библиотека для работы с массивами
2016-05-20 в 5:46, admin, рубрики: javascript, node.js, Разработка веб-сайтовПри программировании на JavaScript часто возникает проблема выбора оптимального представления данных в программе: массивы, хеши, массивы хешей, хеши массивов и т.д. Одни и те же данные могут быть загружены в различные комбинации структур, но трудность выбора обычно заключается в том, как найти компромисс между простотой кода для доступа к этим данным, скоростью работы и количеством требуемой памяти.
В статье рассказано о моей попытке поиска универсального решения.
Читать полностью »
«Хакеры и Художники». Как мы 13 лет всем рунетом Пола Грэма переводили
2016-05-19 в 13:23, admin, рубрики: всем спасибо за содействие, Пол Грэм, Программирование, Профессиональная литература, Разработка веб-сайтов«Это началось как желание, стало приключением, а закончилось как уникальное дорожное путешествие.»
— к/ф «Трасса 60»
Пол Грэм написал книгу «Hackers and Painters» (оригинал в PDF на английском) когда еще был больше программистом, чем инвестором. С тех пор некоторые моменты устарели (да и arc не взлетел), но большинство мыслей остались актуальными (роль и место ботанов «хакеров» в современном мире, свободомыслие, критическое мышление, способность бросать вызов большим системам и пр). Лично я планирую перечитать всю книгу еще пару раз.
Спасибо Байраму Аннакову за «наводку» на Пола Грэма и Николаю Кононову, который подтвердил, что я на правильном пути.
Содержание
Глава 1 Why Nerds Are Unpopular — За что не любят ботанов.
Глава 2 Hackers and Painters — Хакеры и художники.
Глава 3 What You Can't Say — О чем вы не можете сказать.
Глава 4 Good Bad Attitude — Слово «хакер».
Глава 5 The Other Road Ahead — Другая дорога в будущее, Другая дорога в будущее, продолжение.
Глава 6 How to Make Wealth — Как стать богатым.
Глава 7 Mind the Gap — Осторожно, разрыв.
Глава 8 A Plan for Spam — План для спама.
Глава 9 Taste for Makers — Вкус — созидателям.
Глава 10 Programming Languages Explained — Языки программирования «в разрезе».
Глава 11 The Hundred-Year Language — Языки программирования через сто лет.
Глава 12 Beating the Averages — Lisp: побеждая посредственность.
Глава 13 Revenge of the Nerds — Месть ботанов 1, 2, 3.
Глава 14 The Dream Language — Быть Популярным, часть 2.
Глава 15 Design and Research — Проектирование и исследование.
Под катом хронология переводов и благодарности.
Читать полностью »
Неизменяемые объекты в PHP
2016-05-19 в 11:16, admin, рубрики: php, web-разработка, Блог компании Mail.Ru Group, Разработка веб-сайтовВ этой короткой статье мы рассмотрим, что собой представляют неизменяемые объекты и почему нам следует их использовать. Неизменяемыми называются объекты, чьё состояние остаётся постоянным с момента их создания. Обычно такие объекты очень просты. Наверняка вы уже знакомы с типами enum или примитивами наподобие DateTimeImmutable
. Ниже мы увидим, что если делать простые объекты неизменяемыми, то это поможет избежать определённых ошибок и сэкономить немало времени.
Читать полностью »
DevConf 2016: Интервью с одним из разработчиков Yii
2016-05-19 в 10:33, admin, рубрики: devconf, devconf 2016, php, yii, yii 2, Блог компании DevConf, Разработка веб-сайтовПредставляем небольшое интервью с одним из докладчиков DevConf 2016 Александром Макаровым aka SamDark. Он является членом Yii core team c 2010 года и представителем Yii в PHP-FIG. Автор книги Yii Application Development Cookbook.
В первую очередь хотел бы спросить о работе. Ты работаешь в Stay.com. Подозреваю, что удаленно. Ты также активно участвуешь в конференциях, работаешь над Yii. Как удается совмещать? Это не фулл-тайм? Или что-то сродни когда-то гугловскому «20% на свои проекты»?
Да, я работаю в Stay.com. В основном, удалённо. Это fulltime. Yii занимаюсь либо в свободное время, либо когда не очень сильная загрузка по основному проекту.
На тему конференций у меня договорённость: они оплачиваются ровно так же, как и рабочие дни.
Читать полностью »
Koajs 2.0: новое поколение фреймворка нового поколения
2016-05-18 в 15:21, admin, рубрики: async, await, generators, javascript framework, koa, koa2, koajs, node.js, Разработка веб-сайтов, метки: koa, koa2, koajs«Next generation web framework for node.js» — так написано в документации к версии 1.0. Звучит неплохо, я к этому добавлю что 2 года назад после внедрения koa на одном из проектов у наших программистов появился термин “псевдо-синхронный код” (Это когда код выглядит как синхронный но на самом деле исполняется асинхронно). Что за бред Как это работает я расскажу под катом.Читать полностью »
Что браузеры делают с вашим JavaScript-кодом: об оптимизациях в JS-движках на примере V8
2016-05-18 в 15:12, admin, рубрики: javascript, v8js, Блог компании JUG.ru Group, Клиентская оптимизация, Разработка веб-сайтов, фронтендОптимизация кода начинается не столько с изучения особенностей языка программирования, сколько с понимания схемы работы всей «технологической цепочки», задействованной при создании приложения — от алгоритма программы до компилятора.
Мы поговорили с Вячеславом Егоровым aka mraleph, инженером из Google, компиляторщиком до мозга костей, который работал над JavaScript движком под названием V8, встроенным в Chromium (и, как следствие в Chrome, Android версию браузера, облачную операционную систему Chrome OS) и в менее известный Maxthone.
JavaScript-программистам Вячеслав, скорее всего, известен как автор постов про внутренности V8 и как докладчик, увлеченно показывающий машинный код на конференциях для Web-разработчиков.
В настоящее время Вячеслав активно работает в Google над Dart VM.
В этом интервью он рассказал о том, что происходит внутри движка, выполняющего динамический JS-код и поделился примерами, как выполняются некоторые оптимизации и почему важно глубоко понимать работу движка, чтобы обеспечить быстрое выполнение кода.
4 пути юного регионального разработчика, которые я прошел в студенческие годы
2016-05-18 в 11:56, admin, рубрики: c++, irrlicht, Блог компании uTeam, будни разработчика, верстка сайтов, карьера для it студентов, нейросети, Программирование, Разработка веб-сайтов, разработка игр, страх и ненависть в веб-разработке, Учебный процесс в ITЯ рос в депрессивном поселке городского типа, где большинство парней, повзрослев, выбирало путь уверенной деградации. Лет с 11 меня преследовал страх, что я буду таким же, как это большинство.
Но в 13 лет родители купили мне компьютер, и жизнь начала меняться: я быстро стал местным эникейщиком, у которого взрослые дяди и тети спрашивали, как установить “виндоус на процессор”. В 15 я задался вопросом, как написать свою игру. Спросил двоюродного брата, который уже стал “уважаемым человеком” и делал сайты в Москве. Брат привез учебник Лафоре по C++ и сказал: “Осваивай программирование”.
Программирование стало для меня тем самым светом в конце туннеля: я четко знал, что вот закончится школа, — и я уеду в большой город, чтобы работать в хорошей компании. Но путь наверх оказался более извилистым, чем я ожидал.
Фундамент масштабируемости javascript приложения
2016-05-18 в 10:27, admin, рубрики: javascript, JS, Программирование, Проектирование и рефакторинг, Разработка веб-сайтов, разработка приложений"Если хочешь идти быстро — иди один. Если хочешь идти далеко — идите вместе." (с)
С этой лирической строки в данной статье я буду рассуждать о том, как правильно организовать код в вашем приложении, чтобы оно могло расти в высоту и в ширь. Если вы хотите, чтобы продукт вашей мозговой активности был мощнее, чем у ваших конкурентов, то вам неизбежно придется приглашать новых программистов в вашу команду. А если не положить вектор масштабируемости, то порывы энтузиазма через год превратятся в лапшу-код и командная работа превратит каждого сотрудника от злости в маленького сатану.
Так вот… Для того, чтобы ваши бойцы чувствовали себя комфортно вместе в одном проекте, надо чтобы они не мешали друг другу и писали свои буквы в разных не пересекающихся участках кода. Для этого им нужно будет писать "Самостоятельные" компоненты.
ФИАС и семь смертных граблей разработчика
2016-05-17 в 12:17, admin, рубрики: dadata, hflabs, адреса, Анализ и проектирование систем, Блог компании HumanFactorLabs, грабли, КЛАДР, подсказки, Разработка веб-сайтов, Разработка под e-commerce, смертные грехи, Фактор, ФИАСЧтобы нормально работать с почтовыми адресами, сайты подключают справочник адресов налоговой службы (ФИАС). На dadata.ru это сделали уже пять тысяч интернет-магазинов, CRM и стартапов.
А мы поглядели на проблемы клиентов, подумали и собрали увесистый комплект граблей, по которым любят ходить разработчики в обнимку с ФИАСом.