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

VSCode go to definition/implementation fixed

posted in JavaScript on 2020-01-17   vscode typescript intellisense problem implementation working common fixed definition

I just spent ~2 hours on this and I had to blog about it. I bet I will come back to the same problem and it will be nice to have a quick solution at hand. And the problem that I'm talking about is the non working Go to definition or Go to implementation feature of VSCode. Or in other words the JavaScript IntelliSense was not working for me. Of course it was annoying because I had to navigate to files manually via the folder tree on the left or typing the name of the file in the Cmd+Shift+P popup.

read more

AST fun. Remove a function call from your bundle

posted in JavaScript on 2020-01-13   javascript ast bundle object property path callee javascript esprima node const type

I'm working on a small library that has a logger. I'm bundling the app to a single file and I want to disable the logger for the production version. In this blog post we will see how I removed the logger.log calls from my bundle using AST (abstract syntax tree).

read more

Make your objects iterable

posted in JavaScript on 2019-11-01   javascript iterator skills console log javascript const lastname object react parts user method

Just recently I became a fan of the iterable protocol. I knew about it for some time now but never actually integrated it on my own. I ended up using it to provide a nice API for one of my libraries and I thought that this approach worth sharing.

read more

Meet Evala - your terminal in the browser

posted in JavaScript on 2018-02-14   shell evala socket terminal app open browser term data web chrome

On my machine I have four applications always open - VSCode, Chrome, iTerm and Slack. I spend most of my time in Chrome and VSCode. My editor is full with awesome extensions and I feel pretty good there. What I am doing for the browser is making sure that I have fewer tabs open and install only extensions that I really use. One thing though I can achieve so far. I can't find the perfect new tab extension.

read more

Meet the JavaScript pattern of the year or how to handle async like a boss

posted in JavaScript on 2017-11-24   generator player function result return position error const console log yield call player

Sometimes when you learn something new you get really excited. Excited to that level so you want to teach it to someone. That is the case with the concept which I found a couple of months ago. It is an implementation of the command pattern using generators. Or the well known saga used in the redux-saga library. In this article we will see how the idea makes our asynchronous code simpler and easy to read. We will also implement it ourself using generators.

read more

Bulgaria Web Summit 2017 is just around the corner

posted in Must-see on 2017-01-30   ll day time talk nice interesting events good happy

One of my favorite conferences Bulgaria Web Summit 2017 is just around the corner. I’m happy to attend again. The organizer prepared a good set of speakers and the event is two days this year.

read more

Full Stack Fest and CSS day Videos

posted in Must-see on 2016-09-23   full stack fest

One of the ways to stay up-to-date with the latest technologies is to watch talks from popular conferences. Here are two of my favorite ones:

read more

My new experiment is released - 10 Lessons in Front-end ebook

posted in Must-see on 2016-03-10   front end html ll book lessons released

It's finally done. My first self-publishing ebook is released. The book is available here. I'm running a free giveaway for the next five days. So, subscribe for my newsletter at this address http://eepurl.com/bKt0TD and you'll get a free coupon that will lower the price to 0$.

read more

UNCANNY VALLEY (2015)

posted in Cinema on 2015-12-04   uncanny valley

In the slums of the future, virtual reality junkies satisfy their violent impulses in online entertainment. An expert player discovers that the line between games and reality is starting to fade away. 3DAR’s latest short film explores the frightening potential of our next technological revolution. Behind the scenes coming soon! Stay connected, but not too much ;)

read more

Enforce standards while submitting a pull request

posted in JavaScript on 2015-11-29   template textarea javascript bookmarklet n n template var code pull request

GitHub’s pull requests are an important part of my/our development process. That’s why I was thinking about creating a template that will enforce the standards.

read more

CSSSteal - Chrome extension that extracts CSS

posted in CSS3 on 2015-09-17   css styles var section el small li element rules

We had to update some of our old pages adding new elements. This means mixing old and new code. Placing HTML markup and JavaScript in legacy pages is not that difficult. Yes, it brings some issues but they are easily solvable. However, the CSS is a whole new story. That’s why I did CSSSteal. It helps me extract the needed styles.

read more

Rethinking JavaScript readability

posted in JavaScript on 2015-08-10   function moveforward var code return callwith skipped event bind

You probably know the famous quote that the code should be written for humans to understand and accidentally for computers to execute. Writing code that compiles is easy. Writing readable code is completely different thing. Working in a team is like sharing the kitchen with your roommates. You all should care for the dishes and keep clean. And it is not only because of the others but because of you. You don’t want your dinner in a mixed place and dirty dishes right.

read more

Fun playing with npm, dependencies and postinstall script

posted in Nodejs on 2015-01-07   c module package json npm runme js node_modules b installed index dependencies

I like npm and the fact that I can install tons of stuff. It’s great piece of software and helps me solve problems everyday. Yesterday I had to use a postinstall script and hit a problem.

read more

Merry Front-End Christmas

posted in Must-see on 2014-12-24   making talk ll capabilities technologies make language testing big

Christmas is just around the corner. I thought that I should post something. Recently I watchedvideos from two big front-end conferences. So, here is my present for you. A few talks that I think worth attention.

read more

Hungry for knowledge - Scotland JS 2014 talks

posted in Must-see on 2014-06-22   javascript neo uk vimeo talk web js ll code build

These are screencasts from the this year's Scotland JS conferences. It happened on 9th and 10th of May. If you are a JavaScript developer you will probably want to see the talks.

read more

Sorry, Chrome killed the terminal

posted in Nodejs on 2014-06-04   yez extension browser terminal node js chrome shell commands running task

That's right. I'm not using the terminal anymore. Instead of that I'm using Chrome. Yes, the Google's browser. There is an extension called Yez! that connects to a Node.js module via web socket. It executes the shell commands and returns the result. And even works under Windows.

read more

JavaScript: bind function

posted in JavaScript on 2014-03-09   function bind prototype comments fullname var scope user call arguments

The this keyword is always important in JavaScript. I'll admit that it took me some time to actually understand how it works. You know, sometimes JavaScript is all about the scope. Where you are and what you have an access to. This article is about the bind function. Something which I use very often.

read more

Cross-browser handling of Ajax requests

posted in JavaScript on 2014-02-23   ops xhr function data request var headers return callback ops method

This blog post is part of series about AbsurdJS. I'll continue filling the library with small and self organized black boxes. In the last article we talked about creating a JavaScript router. This time we will go through the process of making Ajax requests.

read more

Simple, good looking separator made with pure CSS

posted in CSS3 on 2014-02-12   jsbin translate 95px 12px transform translate 95px line small link top solid 1px border top solid block border top display block border content display block

I'm currently working on the official site of AbsurdJS. There are a lot of code samples out there and I wanted to present them in JSBins.

read more

7 lines JavaScript library for calling asynchronous functions

posted in JavaScript on 2013-12-12   function var funcs callback scope queue function funcs var queue function array

I was surprised by the good feedback for JavaScript template engine in just 20 lines and decided to blog for another small utility function which I'm using often. While we are talking about JavaScript in the browser, most of the operations are asynchronous. We are dealing with callbacks all the time and sometimes we end up with awesome callback hell.

read more

JavaScript template engine in just 20 lines

posted in JavaScript on 2013-12-01   var r push match skills code function template index line tpl

I'm still working on my JavaScript based preprocessor - AbsurdJS. It started as a CSS preprocessor, but later it was expanded to CSS/HTML preprocessor. Shortly, it allows JavaScript to CSS/HTML conversion. Of course, because it generates HTML it was normal to act as a template engine. I.e. somehow to fill the markup with data.

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

Managing events in JavaScript

posted in JavaScript on 2013-08-23   model function var view controller eventbus callback function var scope event

I just noticed that the most popular repository in my GitHub account is EventBus. There is already an article about it, but it's a little bit outdated. I needed to clarify few things, so here is a new one.

read more

Managing events in JavaScript

posted in Must-see on 2013-08-23   model function var view controller eventbus callback function var scope event

I just noticed that the most popular repository in my GitHub account is EventBus. There is already an article about it, but it's a little bit outdated. I needed to clarify few things, so here is a new one.

read more

JavaScript: sequencing function calls

posted in JavaScript on 2013-07-09   function var callback run element chain function res type console log

While I'm working on Auxilio I end up in a sitatuation where I have to call few javascript functions in a sequence. It's an interesting how this could be solved and I'll be happy if you share your opinion for such problem.

read more

Get computed css styles for a given element

posted in CSS3 on 2013-06-16   queryselector h1 null document queryselector h1 getcomputedstyle document queryselector

I just found out that it is possible with pure javascript. It's supported in all the major browsers. Find more information here.

read more

A strange IOErrorEvent.IO_ERROR event dispatched

posted in ActionScript on 2013-06-11   urlrequest var urlloader addeventlistener json encode obj string http site urlstring string http var urlstring string problem

Really simple GET request from a flex based application. However it fails if GET parameters are passed.

read more

Git under windows (console mode)

posted in Architecture on 2013-05-29   git windows powershell file aliases function command status alias set

I'm a Windows user. I also have a virtual machine with Ubuntu installed and coding there from time to time. I use Git a lot and in general I prefer console mode over the GUI. Under Unix everything works just great, but Windows's command prompt requires more efforts from our side. However I found some helpful tips, which could make your life easier.

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

What exactly "Retina display" means in the context of the front-end development

posted in HTML5 on 2013-03-26   retina display means simple explanation great article ll suggest lot searched smashingmagazine check

If you are wonder what exactly "Retina display" means I'll suggest to check this great article in SmashingMagazine. I searched a lot for a simple explanation and that's the best one.

read more

The Breakpoint

posted in HTML5 on 2013-03-10   devtools addy osmani paul irish breakpoint ep episode ll javascript performance tooling

A bunch of useful things about our lovely browser - Chrome. Dev tools theming, console tips, editing of SASS directly inside the browser.

read more

Douglas Crockford’s Function Challenges

posted in JavaScript on 2013-02-25   function s function challenges crockford s function douglas crockford s called multiple times function challenges test compose functions function scope learn knowledge

Douglas Crockford’s Function Challenges. Test your knowledge of function scope and and learn to compose functions that can be called multiple times through function returns.

read more

VarnaLab Challenges event

posted in Inspiration on 2012-09-18   varnalab varnalab challanges html www varnalab org http www varnalab varnalab http www great event coming

A great event is coming in VarnaLab - http://www.varnalab.org/2012/09/varnalab-challanges.html

read more

Brian McCallister and the code

posted in Architecture on 2012-05-16   programming profession convert business requirements efficiently convert business full article bugs read repeatable manner things programming computer

_Programming and the Profession of Programming are quite different things. Programming is being able to efficiently tell a computer exactly what to do in a repeatable manner. The profession of programming is being able to efficiently convert business requirements into bugs._Read the full article here.

read more

Dependency Injection in PHP. Create your own DI container.

posted in PHP on 2012-05-12   class key view show arguments array content navigation title skills

By my opinion one of the biggest problems in programming are dependencies. If you want to have a good well written application you should avoid dependencies between your modules/classes. There is a design pattern which could help and it's called Dependency Injection (DI). It allows you to inject objects into a class, instead of creating them there.

read more

The Open-Closed Principle

posted in Architecture on 2011-12-18   principle classes modules functions entities classes modules software entities classes called open closed robert c martin great article modification extension

That's a great article by Robert C. Martin. It's one of those articles that really may change something in your programming. The principle is called Open-Closed and it says:_SOFTWARE ENTITIES (CLASSES, MODULES, FUNCTIONS, ETC.) SHOULD BE OPEN FOR EXTENSION, BUT CLOSED FOR MODIFICATION._More about that here.

read more

Adobe\'s strategic transformation and the Flash Platform

posted in ActionScript on 2011-11-20   adobe adobe community read full article social connections touch interfaces fundamental transformation change innovation time devices

Adobe is in the midst of a fundamental transformation. We are transforming from software in boxes to solutions in the cloud, and to a world of touch interfaces on devices, and social connections everywhere. This is a time of both innovation and change for Adobe and for the Adobe community ...Read the full article here.

read more

A few things you don\'t know about JavaScript

posted in JavaScript on 2011-05-18   javascript expert javascript programmers mistakes subtle bugs common mistakes subtle avoid common mistakes javascript programming language javascript garden check called javascript garden javascript called javascript bad practices

A couple of days ago, I found very useful page about JavaScript called "JavaScript Garden". Check out here.JavaScript Garden is a growing collection of documentation about the most quirky parts of the JavaScript programming language. It gives advice to avoid common mistakes, subtle bugs, as well as performance issues and bad practices that non-expert JavaScript programmers may encounter on their endeavours into the depths of the language.

read more

How We\'ll Layout Websites in 2016

posted in Inspiration on 2011-04-30   ll layout websites

Peter (@stopsatgreen) delivered a lightning talk for us on the various CSS3 layout methods being developed by the W3C and his opinion on their potential future.

read more

Convert Adobe Flash FLA files into HTML and reach more devices

posted in ActionScript on 2011-03-13   html supported wallaby reach

"Wallaby" is the codename for an experimental technology that converts the artwork and animation contained in Adobe® Flash® Professional (FLA) files into HTML. This allows you to reuse and extend the reach of your content to devices that do not support the Flash runtimes.

read more

How to import images directly into the html code (base64)

posted in PHP on 2010-11-11   base64 file html css small form data fp image
read more

Apple App Store Opens its Doors to Adobe Flash

posted in Other on 2010-09-14   flash devices twitter lit ios devices twitter party development tools 3rd party development apple announce removal active tutsplus full article speculation began blogosphere jumped

_"Yesterday saw Apple announce removal of the infamous restrictions on 3rd party development tools for iOS devices. Twitter lit up, the blogosphere jumped into gear and speculation began in earnest. So what’s this all about and what does it mean for Flash?"_The full article on active.tutsplus.com here.

read more

Customize ComboBox in Flash (AS3)

posted in ActionScript on 2010-06-17   combo tf data import flash dp additem label customcellrenderer function combo textfield setstyle oncombochange cellrenderer movieclip

In my work as a flash developer very often I receive from the client just one photoshop file with the design of the application/site that has to be coded. In the last project the designer made the ComboBox in the style of the site. So I couldn't use the default look of the Flash's drop down component.

read more

Send mass email with Thunderbird

posted in Other on 2010-03-15   thunderbird mozilla org en addons mozilla org https addons mozilla thunderbird https addons thunderbird addon helpful plugin

Very helpful plugin for Thunderbird https://addons.mozilla.org/en-US/thunderbird/addon/47144.

read more

SVET - web based project management system

posted in Other on 2010-01-05   project management system based project management web based project svet make detailed reports specific period working time online notebook work basically

svetsoft - web based project management systemFinally I finished some bugs of my own project management system and I think it's ready for use. SVET is one of my biggest projects and it's a web based project management system, that helps you to organize your work. Basically it's an online notebook which you can use to store the information for your projects. It enables you to track your working time and communicate with your team and clients. You can also make detailed reports of what you've done for a specific period of time. Please check out here.

read more

Fat-Man Collective

posted in Inspiration on 2009-09-06   fat man collective collective fat man man collective fat

fat-manfat-man collective

read more

Flash CS3 crashes when closing the testing window !

posted in ActionScript on 2008-11-14   textfield crashes testing window flash scrolling text field creating scrolling text mask directly m working bkwld problem applied

I'm working with a class for creating scrolling text field. So I'm using a MovieClip as mask and TextField. When I test the movie and close the testing window Flash just crashes. It's because I have applied the mask directly to the TextField :) The problem is described here. Thank you BKWLD !

read more

Creative navigation by Hellomonday.com

posted in Inspiration on 2008-08-22   hellomonday site creative navigation gudrun og gudrun flash drawing api www red issue navigate trough minus good sites guys
read more