Check out "Do you speak JavaScript?" - my latest video course on advanced JavaScript.
Language APIs, Popular Concepts, Design Patterns, Advanced Techniques In the Browser

iframe, or not, that is the question

posted in JavaScript on 2016-04-09   page widget javascript iframe div content script

One of the things that I really like at work is the fact that we spend time in research tickets. We have unknowns and we make a research to find out more information on particular topic. We then base our decisions on the results. Recently we had to decide whether to use an <iframe> for a third party widget development. I feel that the collected information may be handy to someone else so I decided to write it down here.

read more

How I squeezed two hours and a half

posted in Must-see on 2014-11-21   issue london wasn t web frontend page past magazine back

Usually I don't write such articles but this time I'll share my story. I was going to fly from London to Bulgaria. The flight is two hours and a half which is (by my opinion) enough to get bored. When I was traveling from Bulgaria to London I used my phone a lot. I read lots of stuff for reactive programming, played few games, ate some snacks. However, for the way back I wasn't prepared.

read more

My front-end performance case study

posted in Must-see on 2014-08-25   css file blog time page images performance pagespeedinsights main

I’m reading and watching a lot of interesting things regarding client-side performance. I’m interested in the browser’s processes happening before and just after the page’s load. There are tons of stuff to think about. Before a couple of days, I joined the online workshop of Vitaly Friedman. I had a great time and learned some clever facts about performance optimization.

read more

Usersnap - the holy grail of bug reporting

posted in Must-see on 2014-07-15   usersnap data xmlhttp json function script project client s page

The bug reporting is something very important for us. As developers, we produce code that should work everywhere. Not only on our machines. No matter how many times we test our application it often happens that it does not work properly for the client. We all know how helpful is an email with text “It does not work. Fix it ASAP!”. Usersnap is amazing tool that removes the gap between you (the developer) and the non-techy guy from the other side.

read more

Stop autoplaying your Gifs

posted in JavaScript on 2014-06-19   gifffer image library page gifffer min js animated gif

This blog has 460 posts. In some of them, I need to show video clips demonstrating some feature or browser behaviour. I found that it was much better to do that in an animated Gif. However, they play automatically which is kinda annoying. Imagine that we have ten Gifs on the page and while you are reading they all blink or show moving content. It's like having a page full with banners.

read more

Developing Node.js applications with Google Chrome

posted in Nodejs on 2014-06-09   node js yez page git terminal browser chrome console url http var

Google Chrome is my favorite browser. I'm spending a big part of my working hours there, so it makes sense to use it for everything. Last week I posted "Sorry, Chrome killed the terminal". The article was about Yez!, an extension that brings terminal-liked functionalities to the browser. Today, I'll show you how I use Chrome in my Node.js development workflow.

read more

No back-end blog solution with Node.js and Markdown

posted in Nodejs on 2014-04-22   articles techy md tags article blog html page sidebar content

Before a couple of weeks I published Techy. It's a flat CMS based on Node.js and Markdown. I made it because I wanted to write my articles in Markdown format and avoid the annoying publishing workflow which I'm using now. I feel that it's not very clear how Techy works and decided to create a simple blog illustrating the processes.

read more

Auxilio Chrome extension or how I boost my productivity

posted in Must-see on 2013-09-04   auxilio function command callback browser current extension page github

I'll be honest and I'll say that I'm a bit lazy sometimes. I'm one of those developers which don't like to repeat same actions again and again. There are dozen of things which I have to do while working on a project. Very often I'm covering the development of several applications and have to switch between them. It's really annoying process. I hate to have many opened tabs in my browser, many consoles or several code editors. I always try to improve my productivity by automating tasks. I think that even switching between opened applications takes too much time.

read more

Send message from web page to chrome extension\'s background script

posted in JavaScript on 2013-08-22   script event web page document function message content script background script send

I just answer on that question in StackOverflow. I think that this is a common quetion so it worths writing about it.

read more

Stay tuned / conferences that you should know about

posted in Must-see on 2013-08-02   conference official page talks web videos https vimeo event conferences mobile speakers

Nowadays is really difficult to be up to date with the latest technologies, concepts or tools. There are several ways to accomplish this. You could use RSS, check blogs regularly or follow as many people as possible in Twitter/Facebook. My way is to watch videos from various conferences.

read more

Chrome Extension: run JavaScript in the context of the current page

posted in JavaScript on 2013-06-14   script code document content run current page tab id code executescript tab id tabs executescript tab

I'm currently working on a Google Chrome extension and I need to run a JavaScript in the context of the current page. The obvious choice for such a logic is the content script. However it is not so easy, because the content script has an access only to the DOM of the current page. It can't run global functions or use global objects.

read more

Make the web faster

posted in HTML5 on 2013-03-31   faster browser applications underlying problem tune slow javascript code js profiler chrome tracing ll talk structural profiler pages chrome devtools built build

Slow JavaScript code on your pages? Chrome provides both a sampling, and a structural profiler to help you track down, isolate, and fix the underlying problem. Tune in to learn how to use both profilers, and how to improve your own workflow to build better, faster browser applications! We'll talk about chrome://tracing, the built-in JS profiler in DevTools, and much more.

read more

Why we should think about our CSS

posted in Architecture on 2012-06-05   css browsers block rendering tv device ratio print tv device g print tv e g print browsers download css page browsers download white page browsers experience white page

_The evil that CSS do:- Browsers block rendering until all CSS arrives. With the worst possible experience: white page.- Browsers download CSS they don't need, e.g. print, tv, device-ratio... And most browsers block rendering because of these too- Sometimes CSS blocks the other downloads too (not just block rendering, but block images and scripts that follow) - when followed by an inline SCRIPT or when it's a CSS in conditional comment for IE_Read the full artcile by Stoyan Stefanov here.

read more

\"This page contains both secure and non secure items\" message

posted in PHP on 2011-05-26   content problem http page featureloader js php https protocol

When you are opening a site via https protocol and there are items loaded with absolute addresses started with http some browsers, like IE, throw a message This page contains both secure and non-secure items. It is really annoying and if the user decides to can prevent these items of showing and he can brake the whole layout or some functionality.

read more

Deep linking in flash with AS3

posted in ActionScript on 2010-11-14   flash page function hash address deeplinkingclass dl html swf home

Many people will say that Flash is not SEO friendly. Actually that's not 100% true. Flash is just a tool that shows your data. Exactly the same as the HTML. In this article I'll show you how to use ActionScript3 and JavaScript together to make your flash sites SEO friendly and provide a different URL for each of your pages.

read more