Thursday, January 21, 2016

Reading Digest 06, or What does Leo Tolstoy have to do with it?

Hello there, it's been a while, here's what interested me recently. Learning is fun!… and it will be even more fun to revisit these, say, a year from now and verify that I don't remember a thing :)

Tuesday, January 12, 2016

Monday, January 4, 2016

A simple Telegram bot with Node.js


Recently I found a simple real-life task to allow me to experiment with Node.js (I've been peering at it and the surrounding full-stack JavaScript tools). Basically, I wrote a Telegram bot, which periodically posts links to Instagram photos with a specific hashtag.

This was a learning experience for me, so a) I can't claim this is the best approach, and b) I'd appreciate constructive feedback.

Thursday, May 7, 2015

Reading Digest 05

Sharing what impressed, inspired and made me think this week, even if to thank the authors for taking the time for putting their thoughts and experiences together.

Friday, May 1, 2015

Double Trouble: Two risky features come together for a conflict in JavaScript

On the value of being careful with modifying global scope. There is a code conflict I encountered recently when combining somebody else's JavaScript code with a 3rd party library. It didn't go well, and took time code-digging / stepping-through / debugging / tracing, until finally the cause became apparent.

JavaScript in general is very flexible (beyond loose), which is reason to both love it (“With great power…”) and hate it (“…comes great responsibility”). But blaming one's tools isn't helpful when you need to get a job done.

Tuesday, April 21, 2015

Micro-solution: Automatic Value Axes Offset in amCharts

Working with amCharts library for visualizing various report's data in I-Plan Supply Chart Planning software, I came across a difficulty configuring multiple value axes for our specific case.

amCharts is very flexible, allowing to set several axes, define their position (“left” or “right”), title, colour, min/max values, tick formatting etc. It even allows defining an offset (in pixels) to avoid overlap of axes.

Yet in our case the reports are built by the users, various values assigned to different axes based on units, and can be aligned left or right at will. This means that a constant offset value simply doesn't cut it—if you have report values that are too wide they'll overlap, and if they're narrow—they will leave a gap.

Tuesday, April 14, 2015

JavaScript Unit Testing in Crossrider Browser Extensions

Note: Please see my update on Crossrider status (12 Jan 2016).

Here's the approach I found looking for a way to implement unit tests for my JavaScript browser extension (written using Crossrider framework). The method is quite straightforward, yet still required me to do some research and testing. This approach in theory is agnostic of the testing library you use, or at least it should be. I will demonstrate it with both QUnit and Jasmine.