It would be nice to know at a glance if a library has introduced incompatible API changes.
Tag: library
Joda-Time: Date and time API for Java
We’re still using Java 6 for our apps at work. Recently I needed to compute the number of days between 2 dates. It turns out that it’s a non–trivial problem. We’re using JBoss Seam as our web development framework, so I ended up using the Joda-Time packaged with Seam to do the computation. It’s a lovely API and much cleaner than the standard Java API.
vis.js: Browser based Javascript visualization library
From the vis.js website (via):
Vis.js is a dynamic, browser based visualization library. The library is designed to be easy to use,
to handle large amounts of dynamic data, and to enable manipulation of and interaction with the data.
The library consists of the components DataSet, Timeline, and Graph.
It’s Dangerous: Python crypto library for signing data before sending through untrusted environments
(via)
“Various helpers to pass data to untrusted environments and to get it back safe and sound.”
Example Use Cases
- You can serialize and sign a user ID for unsubscribing of newsletters into URLs.
This way you don’t need to generate one-time tokens and store them in the database.
Same thing with any kind of activation link for accounts and similar things.- Signed objects can be stored in cookies or other untrusted sources which means you don’t need to have sessions stored on the server,
which reduces the number of necessary database queries.- Signed information can safely do a roundtrip between server and client in general which makes them useful for passing server-side state
to a client and then back.
boto: Python interface to Amazon Web Services
Looks like a lovely API. The docs look pretty good. I love me some good docs!
From the boto Github page:
Boto is a Python package that provides interfaces to Amazon Web Services.
At the moment, boto supports:
- Compute
- Amazon Elastic Compute Cloud (EC2)
- Amazon Elastic Map Reduce (EMR)
- AutoScaling
- Amazon Kinesis
- Content Delivery
- Amazon CloudFront
- Database
- Amazon Relational Data Service (RDS)
- Amazon DynamoDB
- Amazon SimpleDB
- Amazon ElastiCache
- Amazon Redshift
- Deployment and Management
- AWS Elastic Beanstalk
- AWS CloudFormation
- AWS Data Pipeline
- AWS Opsworks
- AWS CloudTrail
- Identity & Access
- AWS Identity and Access Management (IAM)
- Application Services
- Amazon CloudSearch
- Amazon Elastic Transcoder
- Amazon Simple Workflow Service (SWF)
- Amazon Simple Queue Service (SQS)
- Amazon Simple Notification Server (SNS)
- Amazon Simple Email Service (SES)
- Monitoring
- Amazon CloudWatch
- Networking
- Amazon Route53
- Amazon Virtual Private Cloud (VPC)
- Elastic Load Balancing (ELB)
- AWS Direct Connect
- Payments and Billing
- Amazon Flexible Payment Service (FPS)
- Storage
- Amazon Simple Storage Service (S3)
- Amazon Glacier
- Amazon Elastic Block Store (EBS)
- Google Cloud Storage
- Workforce
- Amazon Mechanical Turk
- Other
- Marketplace Web Services
- AWS Support
Beets: Extendable command-line tool & library for cataloging, manipulating, & accessing your music library written in Python
Example:
$ beet import ~/music/ladytron
Tagging:
Ladytron - Witching Hour
(Similarity: 98.4%)
* Last One Standing -> The Last One Standing
* Beauty -> Beauty*2
* White Light Generation -> Whitelightgenerator
* All the Way -> All the Way...
From the Beets Github page
- Fetch or calculate all the metadata you could possibly need: album art, lyrics,
genres, tempos, ReplayGain levels, or acoustic fingerprints.- Get metadata from MusicBrainz, Discogs, or Beatport. Or guess metadata using
songs’ filenames or their acoustic fingerprints.- Transcode audio to any format you like.
- Check your library for duplicate tracks and albums or for albums that are missing tracks.
- Clean up crufty tags left behind by other, less-awesome tools.
- Embed and extract album art from files’ metadata.
- Browse your music library graphically through a Web browser and play it in
any browser that supports HTML5 Audio.- Analyze music files’ metadata from the command line.
- Listen to your library with a music player that speaks the MPD protocol and
works with a staggering variety of interfaces.- If beets doesn’t do what you want yet, writing your own plugin is shockingly
simple if you know a little Python.
CDNJS: CDN hosting a ton of different libraries (CSS, JavaScript, SWF, image, font, etc.)
React: Javascript library for building composable user interfaces created by Facebook
http://facebook.github.io/react/index.html
The “Why did we build React?” page on the React Blog gives a good overview of the library and the motivations behind its creation.
Some interesting bits:
- “React isn’t an MVC framework”
- “React doesn’t use templates”
- React supports JSX, “a JavaScript XML syntax transform recommended for use with React.”
libgit2: portable Git library written in C with bindings for over 20 languages & platforms
libgit2 is a portable, pure C implementation of the Git core methods provided as a re-entrant linkable library with a solid API, allowing you to
write native speed custom Git applications in any language which supports C bindings.
- 100% Cross-Platform: Linux, FreeBSD, OpenBSD, Mac OS X, iOS, Amiga, MinGW and fully native Windows.
- Zero Dependencies: Builds out of the box with no dependencies. Works in embedded devices and iOS.
- ANSI C89: Written with portability in mind. Builds in GCC, Clang and MSVC.
- Permissive Licensing: GPLv2 with Linking Exception. Link with open and proprietary software, no strings attached.
The complete list of language bindings is here on the Github page.