JsAction – a tiny event delegation library
The traditional way of adding an event handler is to obtain a reference to the node and add the event handler to it. JsAction allows us to map between events and names of handlers for these events via a custom HTML attribute called jsaction.
Finally, JsAction uncouples event handling from actual implementations. Thus one may late load the implementations, while the app is always able to respond to user actions marked up through JsAction. This can help in greatly reducing page load time, in particular for server side rendered apps.
Headroom.js – give your pages some headroom. Hide your header until you need it.
I joined Easy Forex back in 2012 to work on a rather complex project – migrate main website of the company from a really outdated version of DotNetNuke to WordPress. WordPress, even though it is an absolutely amazing platform, turned out not to be the right tool for the job. But we’ve managed to deliver anyway. One of the annoying practices that we had to employ though was a semaphore flag for the database changes – only a single developer could work on the database at any given time. (Again, this wasn’t a WordPress limitation, but rather specifics of our environment at the time). That was the time when we introduced the Semaphore Bull to our development process.
It worked out quite well. But being a soft toy, it got abused a lot along the way. It lost a leg, which was screwed in for a while. Then it nearly lost the whole butt. Then the head. Beaten, barely alive, it still stood its ground and did the job! At some point it got so bad, that we’ve had to place it into the plastic container, where it survived for a few more month.
Today we’ve finalized our migration of the main website from WordPress to CakePHP. The system is so simple now that we don’t even need a database anymore. And with that, the job of the Semaphore Bull ends. Gone, but not forgotten though!
Because of its huge contribution to our work, because it saved us from countless painful hours of resolving SQL conflicts, we’ve decided to create a memorial. Ironically, the memorial to Semaphore Bull is built out Semaphore Bull itself, and the container it lived in. For the future generations to remember the deed, we’ve printed out the snippet of the developer’s manual and embedded it into the memorial together with the dates. Here’s how it looks altogether now.
Thank you, Semaphore Bull. You’ve done us a great service. Rest in peace.
gitjk – undo what you just did in git.
Supports the following git commands: add, archive, branch, cat-file, checkout, clone, commit, diff, fetch, grep, init, log, ls-tree, merge, mv, pull, push, remote, revert, rm, show, stash,status.
Support for the following git commands is not implemented: bisect, fsck, gc, prune, rebase, reset, tag.
PHỞ DEVSTACK 1.0 – automated workflow for front-end developers in one tasty bowl of code.
- Yeoman generator
- Livereload (without refresh for CSS)
- LESS stylesheets compilation
- Advanced image handling (base64 inlining, image optimization, sprite generation)
- Running unit and end to end tests
- Configurable directory structure
- Replacing text in HTML (meta tags, analytics codes)
- Scripts and stylesheets revisioning
- Running build after file is changed
- Configurable plugins
- Stays up-to-date
app.js – mobile webapps made easy
iFX EXPO International 2014
About iFX EXPO
- The largest financial B2B convention
- Over 500 FX & Binary Brokers
- Over 1,500 senior executive attendees
- Over 70 exhibitors from around the world
- Speakers from the industry’s largest firms
- Socialize with the industry’s leading executives
- Meet international affiliates & introducing brokers
- Learn industry trends and new developments
- Attend panels and lectures from leading firms
This coming Sunday, June the 1st, Fasouri Watermania Waterpark opens its doors for free to all kids aged 2 to 11. The offer is valid only for that day, and all kids must be accompanied by adults for park entry.
For more information, call +357 25-714-235.
A colleague shared with me the link to this Einstein’s riddle. It looks easy at first, but it actually isn’t. I’ve tried a couple of different models to solve it, but haven’t figured it out yet. Something tells me that if I remembered Prolog from my college days, I would have solved it in about 3 minutes. But I don’t. So pieces of paper and text files it is. If that won’t be enough until lunch time today, I’ll start doing something in PHP or Perl…
Update: Solved it! My initial model of addition wasn’t right. Subtraction worked much better.