Главная Кодинг (страница 4)

Кодинг

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

Xakep #201

Тестирование производительности. Узнай, что именно тормозит и что с этим нужно делать

Завершая цикл статей о вычислении производительности софта, хотелось бы рассказать, как правильно проводить перформанс-тестирование (performance testing). Тема становится все более популярной, но при этом далеко не все понимают, что под этим подразумевается. Ведь прежде чем ответить на вопрос «как», нам нужно разобраться с вопросом «что»: что именно нам нужно тестировать?

Xakep #200

Задачи на собеседованиях #200. Задачи от сервиса мобильного эквайринга Pay-Me и прославление победителей от Acronis

В этом выпуске мы расскажем, как отбирают кандидатов в сервис мобильного эквайринга Pay-Me. Передаю слово Игорю Аскарову — техническому директору Pay-Me. Он поделится задачами, которые он дает на собеседованиях при приеме разработчиков в команду.

Xakep #200

Злые СМС. Исследуем скрытые механизмы работы с СМС в Android

Только представь: у всех жителей средней полосы осень, а ты тусуешься на морях, солнце лениво замерло в зените, ты лежишь на жемчужном пляже одного из Мальдивских островов, любуешься окружающими пейзажами и проходящими девушками в бикини, потягивая коктейль... А много позже, вечером, ты обнаруживаешь, что на счете твоей пластиковой карточки пусто! Как же так? Мобильный банк с информированием подключен, все операции вроде бы подтверждаются по СМС... Примерно такие вопросы стали недавно задавать вслух клиенты одного крупного банка с зеленым логотипом.

Xakep #199

Самый быстрый UI. Подборка полезных инструментов для веб-разработчиков

В этой подборке — интересные веб-чаты на замену Slack, несколько альтернатив других веб-сервисам, собственный GitHub и javascript-библиотеки для фронтенда: работа с DOM и DOM-элементами, текстовым контентом и CSS, ускорение работы web-страниц.

Xakep #199

Профилировщики для Python. Измеряем скорость выполнения наших приложений

В прошлой статье («Python на стероидах», 198-й номер) мы поговорили о профилировании Python-приложений. Судя по полученному фидбэку, тема оказалась интересной, и, выходит, теперь, когда мы уже попробовали все на практике, настало время познакомиться с теорией :). В этой статье я постараюсь рассказать о том, что вообще такое производительность ПО, как и зачем ее измерять, и закончу тему с профилированием. В следующий раз мы углубимся в тему тестирования производительности ПО в теории и на практике.

Xakep #199

Задачи на собеседованиях, спецвыпуск. Тестовые задания в gamedev, часть 2

Несколько месяцев назад я уже делился частью своей коллекции тестовых заданий, которые ставят перед соискателями на позицию программиста в индустрии gamedev. И надо сказать, получил неплохой фидбэк! Вижу, что разработка игр серьезно интересует нашего читателя, и не только потому, что в игровой индустрии можно заработать неплохие деньги. Похоже, что для этой области народного хозяйства более чем актуальна мудрость, приписываемая Конфуцию: «Выберите себе работу по душе, и вам не придется работать ни одного дня».

Xakep #199

Xonix для Android. Сделано стандартными средствами Android SDK!

Хочется иногда взять и отдохнуть от всех этих фреймворков, движков и готовых библиотек. Точнее, не отдохнуть, а напрячься — взять и накодить какую-нибудь игрушку исключительно с помощью стандартных средств. Какую именно? Выбрать легко, ведь в сердце любого программера неизменно живут три игры, созданные в прошлом веке: Tetris, Digger и Xonix. Поехали!

Xakep #198

Создатель GUI для AV — про skillsets, separation of conсerns и митболы

У современных программистов нет проблем с выбором либы для создания GUI своих приложений. К их услугам целый пул библиотек, начиная со старушки MFC и заканчивая монстром Qt. Но есть одна разработка, которая стоит особняком, — Sciter. Создатель этой маленькой, но очень полезной библиотеки — Андрей Федонюк, он же основатель и владелец компании Terra Informatica Software.

Xakep #198

Прототипируй правильно, верстай быстро! Подборка приятных полезностей для разработчиков

Существует множество различных фреймворков или даже, правильнее сказать, тулкитов (ExtJS, Dojo, Webix), которые проповедуют свой синтаксис разметки веб-страничек, «искажая» классическое представление о верстке с HTML и CSS. Многие из них обрели свою аудиторию, но сегодня пойдет речь, вероятно, о самом популярном методе нестандартного позиционирования элементов, который пришел в веб из мира десктопной и мобильной разработки...

Xakep #198

Анализ данных с использованием R. Часть 1

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

Xakep #198

Python на стероидах. Измеряем производительность в продакшене без потери скорости

Когда цена за гигабайт памяти составляет копейки (~0,026 доллара за час в облаке от Amazone), а современные процессоры работают все быстрее с каждым месяцем, производительность ПО во многих случаях оставляет желать лучшего. Ведь часто докупить оперативки и/или процессор оказывается дешевле, чем тратить многие человеко-месяцы на тестирование и исправление проблем с производительностью. Но бывает и наоборот — стоит исправить буквально две строчки кода, как все начинает просто летать. Главное — найти эти самые две строчки кода. Здесь все как в старом анекдоте: «взял один доллар за то, что забил гвоздь, и 99 долларов за то, что знал, куда его забить».

Xakep #198

Умный дом на Java. Обзор Netty — крутейшего Java-фреймворка

Фреймворк Netty появился относительно недавно, но с каждым годом он только набирает популярность. В 2011 году проект был удостоен награды Duke’s Choice за инновации в сетевом программировании. А уже сегодня его используют в своих разработках такие гиганты, как Apple, Twitter, Facebook, Google и Instagram. На базе Netty построены многие известные проекты с открытым кодом: Infinispan, HornetQ, Vert.x, Apache Cassandra и Elasticsearch. Попробуем разобраться, чем Netty так привлекает программистов со всего мира и что он может предложить такого, чего бы не было в JDK.

Xakep #198

Задачи на собеседованиях от Acronis и решения задач от Custis

Сегодня мы поговорим с Евгением Панищевым, руководителем QA Cloud направления международной компании Acronis. Его отдел занимается тестированием всех облачных решений Acronis: от Acronis Backup Cloud до Acronis Disaster Recovery. Задача лично Евгения — следить за тем, чтобы специалисты отдела выполняли свою работу еще лучше и эффективнее.

Xakep #197

Задачи на собеседованиях #197

Наши старые друзья из IT-компании CUSTIS, когда-то одними из первых разместившие задачи в нашей тогда еще новорожденной рубрике, решили вновь порадовать нас хорошей порцией квестов. Ну а DZ Systems прислали нам решения задач, выложенных на суд читателей в апрельском номере, и мы их тоже с удовольствием опубликуем.

Академия C++ #7. Обработка максимальных объемов данных за минимальное время

Чего только не услышишь от апологетов тех же Java или C# про разработку на C/C++! Якобы этот язык устарел и на нем никто не пишет. Вот только когда требуется создать no latency или low latency сервис или нужно сэкономить память и время выполнения узкого места обработки больших объемов данных, то тут же прибегают за помощью к «архаичным» разработчикам на C/C++. Просто потому, что эти ребята умеют вручную управлять памятью и прекрасно представляют, что за начинка у той или иной высокоуровневой операции. Сегодня наша задача — стать на шаг ближе к этим ребятам.

Xakep #197

Геотаргетинг для программиста. Что интересного могут рассказать бесплатные геоинформационные API

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

Уроки ядерной физики. Интервью с Франциско Франко, создателем кастомного Android-ядра franco.kernel

Франциско Франко (Francisco Franco) — весьма уважаемый в узких кругах Android-разработчик, известный в первую очередь как создатель кастомного ядра franco.kernel для смартфонов линейки Nexus и превосходного приложения для управления настройками ядра FKUpdater. В перерывах между кодингом ядра Франко занимается и кучей других проектов, поэтому его не так-то легко поймать, но нам он все-таки уделил время и ответил на несколько вопросов.

Пишем виджет для Android, который показывает доступность сайта

В современной матрице IT-технологий квалифицированный администратор — персона хоть и не всегда видимая, зато важная и весьма занятая. Отбиваясь от назойливых пользователей, он постоянно должен присматривать за ареалом своего цифрового мира — сайтами. Давай же поможем нашему админу и создадим полезный виджет, внимательно следящий за доступностью всех его ресурсов. И да, погоду этот виджет показывать не будет.

Учимся работать с Elasticsearch

Несмотря на то что XXI век принес в наши дома (не во все, но всё же) гигабитные каналы связи и котиков на YouTube в разрешении 4K и 60 FPS, основой Сети, самой массовой его частью, все еще остаются текстовые данные. Рефераты и курсовые работы, технические драмы на Хабре и Stack Overflow, сидящий занозой в ... Роскомнадзора Луркмор — все это текст, все это слова. А поскольку каталогизация в реальном мире очевидно хромает, то без хорошего полнотекстового поиска никуда.

Выясняем, что нового в Visual Studio 2015 CTP 6 и SDK для Windows 10

Недавно мы начали знакомиться с фичами Win 10 и VS. Прошел месяц, и вот в наши волосатые руки попадает уже Visual Studio 2015 CTP 6 и SDK для Win 10! Будем разбираться. Новая ASP.NET, новое поколение компиляторов — Roslyn, новые визуальные тулзы для отладки XAML-кода... ммм... я чувствую себя, как ребенок в кондитерском магазине! Ну, как говорил Карлсон, «и ты заходи» :).

Отчет с Microsoft DevCon 2015

В преддверии выхода Windows 10 сложно переоценить значение разработческой конференции DevCon, которую проводит компания Microsoft. Каждый разработчик жаждет знать, чего ждать от «Десятки», и что у неё будет «под капотом». Платформа Azure обрела множество новых функций, браузер Edge пришел на смену Internet Explorer, а Visual Studio обновится до версии 2015.

Обзор фреймворка для создания ОС Genode

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

Функциональное программирование: структура и интерпретация. Часть I

Мне всегда хотелось написать серию статей по функциональному программированию для этого журнала, и я очень рад, что у меня наконец-то появилась такая возможность. Даже несмотря на то, что моя серия про анализ данных еще далека от завершения :). Не буду анонсировать содержание всей серии, скажу лишь, что сегодня мы поговорим о разных языках программирования, поддерживающих функциональный стиль и соответствующих приемах программирования.

Arduino: осваиваем цифровой термодатчик и 1-Wire

Моргания лампочки и замыкание контактов — дело интересное и полезное для первых шагов. Но, как все мы помним со школы, чем нагляднее эксперимент, тем он интереснее. Я продолжу развивать проект из предыдущих серий, и сегодня мы прикрутим термодатчик 1-Wire для того, чтобы контролировать температуру в твоем многострадальном холодильнике. Того и гляди, скоро у тебя появится «умный» холодильник :).

Изучаем R. Часть 2: векторизация и визуализация

В прошлый раз (в ноябре 2014-го; мне очень стыдно, что я так затянул с продолжением!) я рассказывал о базовых возможностях языка R. Несмотря на наличие всех привычных управляющих конструкций, таких как циклы и условные блоки, классический подход к обработке данных на основе итерации далеко не лучшее решение, поскольку циклы в R необыкновенно медлительны. Поэтому сейчас я расскажу, как на самом деле нужно работать с данными, чтобы процесс вычислений не заставлял тебя выпивать слишком много чашек кофе в ожидании результата. Кроме того, некоторое время я посвящу рассказу о том, как пользоваться современными средствами визуализации данных в R. Потому что удобство представления результатов обработки данных на практике не менее важно, чем сами результаты. Начнем с простого.

Визуализируем данные на JavaScript с помощью D3.js

Сейчас все продвинутые парни любят JavaScript и данные. А что любят данные? Обработку и визуализацию. Кстати, последнюю ценят как продвинутые парни, так и их непродвинутые клиенты и тем более начальники. В этой статье мы представим твоему вниманию лучшую в обитаемой части Галактики JS-библиотеку для визуализации данных.

Обработка эксепшенов в динамически размещаемом коде

Современные версии ОС налагают на исполняемый код ограничения, связанные с требованиями безопасности. В таких условиях использование механизма исключений в инжектированном коде или, скажем, во вручную спроецированном образе может стать нетривиальной задачей, если не быть в курсе некоторых нюансов. В этой статье речь пойдет о внутреннем устройстве юзермодного диспетчера исключений ОС Windows для платформ x86/x64/IA64, а также будут рассмотрены варианты реализации обхода системных ограничений.

Хорошая попытка, JavaScript, но…

В этом выпуске: NativeScript, интересная библиотека для нативной разработки на JavaScript под iOS и Android. Также тебя ждут самые нужные плагины для Grunt и Gulp, Cheerio, Unheap, Plyr, React Canvas, Glide и Slideout!

Задачи на собеседованиях от DZ Systems и решения задач от HeadHunter

Вот уже десять лет специалисты холдинга DZ Systems занимаются разработкой ПО и созданием информационных систем на самом высоком уровне — за это время их клиентами успели стать такие киты российского бизнеса и мегапроекты государства Российского, как Юлмарт, Яндекс, Мосводоканал, Олимпиада-2014, Mail.Ru Group, Wikimart, Raiffeisen Bank, KFC и BMW.

Разбираемся с устройством асинхронных фреймворков для Python

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

Устанавливаем scmRTOS на Arduino

В те недалекие времена, когда мы были молодыми и здоровыми, все ламеры сидели на Windows 98, а тру-хакеры пили пиво и дико напрягались, устанавливая на свои машины седьмую слакварь. Поставил слакварь — стал мужчиной. Сегодня установить линукс на свою машину может каждая блондинка, поэтому нам, хакерам, приходится искать для себя новые испытания. Как насчет установки операционной системы реального времени scmRTOS на Arduino?

Знакомство с языком Eiffel

Долгие годы я был фанатом разработки под Windows, о чем немало писал в этот вот лучший компьютерный журнал всех времен и народов. Со временем я перешел под Mac OS и UNIX. Работая под макосью, я озадачился выбором тулзы для создания платформонезависмых программ. Что же предпочесть? Java? Mono? Слишком скучно. Я выбрал… Eiffel. И вот почему.

Задачи на собеседованиях от Лаборатории Касперского

Сегодня у нас день больших компаний (это я к тому, что маленькие и средние в этой рубрике тоже всегда приветствуются). Гранды отечественной IT-индустрии задают нашим читателям задачи и публикуют решения. А вот победителей пока не славим — в связи с ранней сдачей этого номера (для тебя новый год уже наступил, и ты уже даже от него потихоньку отходишь, а в нашей реальности до него еще месяц). Победителей задач от Parallels жди в следующем номере, а пока выпей рассола и насладись новой партией квестов!

Топчем грабли на сишарпе

Разработка любого проекта всегда связана с автоматизацией сопутствующих рутинных задач. Сначала хватает средств IDE плюс пары ручных операций. Затем количество телодвижений начинает расти: требуется выполнять несколько наборов тестов, подкладывать какие-нибудь сертификаты, прогонять скрипты на базе данных, генерировать документацию к коду и так далее. Также нужно выполнять эти и другие операции на Continuous Integration сервере, а возможно, и осуществлять деплой приложения на продакшен-серверы (если говорить о клиент-серверном решении). Иногда это автоматизируют при помощи набора самописных batch- или shell-скриптов, но чаще всего в командах разработчиков приходят к какому-то консолидированному решению.

Страница 4 из 7В начало...23456 ...

Какой мессенджер ты считаешь самым надежным для хакера?

«ХАКЕР» в соцсетях и фидах

«ХАКЕР» ДОСТУПЕН ТОЛЬКО В ЭЛЕКТРОННОЙ ВЕРСИИ
Оформи подписку — получи:
  • доступ к платным материалам сайта
  • доступ ко всем номерам PDF
3990 р.
на год
720 р.
на месяц
90 р.
за 1 статью

Еженедельный ][-дайджест

Реклама на «Хакере»

Корпоративная подписка

Для подписчиков