Доброго времени суток, уважаемые читатели. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.
Tracking.js
Крошечная библиотека ( всего 7 кб ) содержит в себе различные техники компьютерного зрения в вебе. Tracking.js уже позволяет отслеживать различные объекты, цвета, лица как на фотографиях, так и с помощью веб-камеры. Проект собрал уже почти 2000 звезд на GitHub.
var colors = new tracking.ColorTracker(['magenta', 'cyan', 'yellow']);
colors.on('track', function(event) {
if (event.data.length === 0) {
// No colors were detected in this frame.
} else {
event.data.forEach(function(rect) {
console.log(rect.x, rect.y, rect.height, rect.width, rect.color);
});
}
});
tracking.track('#myVideo', colors);
Flux
Идея новая архитектуры приложений на React.js от Facebook вместо стандартной схемы Model-View-Controller.
Wraith
Грубо говоря, это diff tool для изображений от BBC News написанный под PhantomJS и SlimerJS. Также существует аналогичный PhantomCSS, в основе которого лежит CasperJS и Resemble.js.
Beego — высокопроизводительный фреймворк для Go
BitcoinJS
Полноценная работа с Bitcoin на Node.js и в браузере.
Генерация Bitcoin адреса:
key = bitcoin.ECKey.makeRandom()
// Print your private key (in WIF format)
console.log(key.toWIF())
// => Kxr9tQED9H44gCmp6HAdmemAzU3n84H3dGkuWTKvE23JgHMW8gct
// Print your public key (toString defaults to a Bitcoin address)
console.log(key.pub.getAddress().toString())
// => 14bZ7YWde4KdRb5YN7GYkToz3EHVCvRxkF
Создание транзакции:
tx = new bitcoin.Transaction()
// Add the input (who is paying) of the form [previous transaction hash, index of the output to use]
tx.addInput("aa94ab02c182214f090e99a0d57021caffd0f195a81c24602b1028b130b63e31", 0)
// Add the output (who to pay to) of the form [payee's address, amount in satoshis]
tx.addOutput("1Gokm82v6DmtwKEB8AiVhm82hyFSsEvBDK", 15000)
// Initialize a private key using WIF
key = bitcoin.ECKey.fromWIF("L1uyy5qTuGrVXrmrsvHWHgVzW9kKdrp27wBC7Vs6nZDTF2BRUVwy")
// Sign the first input with the new key
tx.sign(0, key)
// Print transaction serialized as hex
console.log(tx.toHex())
// => 0100000001313eb630b128102b60241ca895f1d0ffca2170d5a0990e094f2182c102ab94aa000000008a47304402200169f1f844936dc60df54e812345f5dd3e6681fea52e33c25154ad9cc23a330402204381ed8e73d74a95b15f312f33d5a0072c7a12dd6c3294df6e8efbe4aff27426014104e75628573696aed32d7656fb35e9c71ea08eb6492837e13d2662b9a36821d0fff992692fd14d74fdec20fae29128ba12653249cbeef521fc5eba84dde0689f27ffffffff01983a0000000000001976a914ad618cf4333b3b248f9744e8e81db2964d0ae39788ac00000000
Западные мысли или что стоило бы перевести на Хабре:
- The Most Dangerous Word In Software Development
- CodePen's CSS
- Declarative Programming And The Web
- How we make RWD sites load fast as heck
- Optimising for 60fps everywhere
- Modules, a Future Approach to JavaScript Libraries
- HowTo: «Self-Drawing» SVG animation
- Understanding SVG Coordinate Systems & Transformations (Part 2) – The transform Attribute
- Dynamic Programming with Ruby
- Let's Talk About RTL
- Improve Your Email Workflow With Modular Design
- JavaScript Event Madness! Capturing *all* events without interference
- Understanding OpCache
- CSS Stress Testing and Performance Profiling
- 21 Ways to Make WordPress Fast
- The secrets of the Guardian's responsive redesign
- Analyzing Your Website With the Screaming Frog SEO Spider
- Progressive Content for Progressive Reduction
- How To Make Tilt Scrolling That Doesn’t Suck
- Future-Ready Content
- The Principles of Performance by Design
- Productivity Quest: Ultra-Schedule
- All systems suck
Говорит и показывает Хабр:
- «Следующая версия PHP будет называться PHP 7» от HotWaterMusic
- «Открытая Yandex PHP Library для работы с API Яндекса» от AntonShevchuk
- «Разбор финальных задач Яндекс.Алгоритма 2014» от lperovskaya
- «Allure — фреймворк от Яндекса для создания простых и понятных отчётов автотестов [для любого языка]» от art_koshelev
- «Badoo PHP Code Formatter. Теперь в open source!» от youROCK
- «Асинхронный JavaScript: без колбеков и промисов» от sekrasoft
- «Интеграция MS Excel и Python» от kuznetsovin
- «Инъекция React JS в приложение на Angular JS или борьба за производительность» от eastbanctech
- «Генерация xkcd паролей на PHP» от PatapSmile
- «Привносим монады в PHP» от yTko
- «URL.js или дружим JavaScript с обработкой ссылок» от xobotyi
- «Платформер на Three.js» от makc3d
- «Dalek.js — простое функциональное тестирование веб-приложений» от antirek
- «Matreshka.js v0.2»
Matreshka.js — долгожданная реализация TodoMVC от Finom - CodeIgniter 3.0 — будет! от evnuh
- PHPCI обновился до версии 1.3 от Corpsee
- «Сколько часов в день может работать программист?» от Zalina
Напоследок:
- Awesome Django — в лучших традициях awesome-подборок.
- Immutable.js — неизменный Data Collections для Javascript от команды Facebook.
- SpeechKit Cloud — это облачный сервис, основанный на технологии распознавания речи Яндекса
- p5.js — процессинговая библиотека для рисования.
- Blast.js — для различных манипуляций с текстом.
- EtherCalc — библиотека для работы с электронными таблицами на Node.js
- Overmind — Angular.js модуль для «ленивой загрузки».
- Angularjs-styleguide
- Notejam — простой способ изучения фреймворков для различных языков программирования.
- PgHero — database insights made easy for Ruby.
- git-flight-rules
- Arrow — better dates & times for Python
- uBlock — эффективный блокировщик рекламы для Chrome.
- RSSHeap — веб ориентированный RSS ридер для разработчиков
Предыдущая подборка (Выпуск 24)
Приношу извинения за возможные опечатки. Если вы заметили проблему — напишите, пожалуйста, в личку.
Спасибо всем за внимание.
Автор: ilusha_sergeevich