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

AI driven open source library for measuring your web page carbon footprint

posted in JavaScript on 2023-01-14   JavaScript AI OS

Some people say that 2023 will be the year of AI. With tools like ChatGPT and DALL·E the world is definitely changing. There are different opinions on how such instruments will affect the everyday tasks of the professionals. My two cents (for now) are that those are just tools to achieve what we want quicker and more efficiently. Who knows, someday I may call myself a "prompt engineer". For the time being, though, I'm still writing a lot of stuff alone and occasionally ask ChatGPT for help.

read more

Configure Google domain email in Vercel with ImprovMX

posted in Architecture on 2021-01-27   vercel email google improvmx

Back in February last year I blog on topic Email not working after DNS change. Well, I had kinda similar situation but not exactly. This time I bought a domain from Google and wanted to use an email with it. The setup wasn't obvious for me so I decided to document the process.

read more

Pairify - how to match balanced string pairs

posted in JavaScript on 2020-03-11   pairify balanced matches javascript pairs decided type stack line starter token code const position function category https

I'm now actively working on a VSCode extension. I started it as a theme but then decided to add some more features. Like for example a tin line on the left side of the editor marking the current function scope. In order to do that I had to analyze the current file's code and find the lines that are included in that scope. The obvious approach will be to translate the code to AST and then traverse the tree finding the information that I need. This however will require the usage of a language server which now I don't want to deal with. So I decided to explore a brute force approach. Looping over the string characters and finding balanced matches. I quickly wrapped it into a library. I called it Pairify. It consumes text and returns an array of pairs. This blog post will show you how it works.

read more

Email not working after DNS change

posted in Architecture on 2020-02-07   email dns not working zeit domain working google mx record mail server services thing

I just recently moved my outset.ws domain to Zeit name servers. That's my 13 years old domain which I'm not using it anymore. It makes sense to point to krasimirtsonev.com. The thing is that I have an email which is used all over the net. I of course want to keep that email. And suddenly I wasn't able to receive messages to it. I started missing some very important emails. Like bills that have to be paid and GitHub notifications.

read more

Presentational and container React components

posted in JavaScript on 2016-08-01   time component clock components props react seconds container return

When we start using React we very soon also start asking questions. Where I’m suppose to put my data, how to communicate changes or how to manage state? The answers of this questions are very often matter of context and sometimes just practice and experience with the library. However, there is a pattern which is used widely and helps organizing React based applications - splitting the components into presentational and containers.

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

CSS variables are here for ages

posted in CSS3 on 2014-08-13   div content font size color container css width div class footer variables

Every front-end developer that starts reading about CSS preprocessors thinks “Oh, finally variables in CSS". Indeed, the ability to create and use variables in CSS makes our code much more flexible. However, I think that there is no need to use a preprocessor to create flexible stylesheets.

read more

ToDoMVC with AbsurdJS

posted in JavaScript on 2014-07-26   model function js todos app main css component absurdjs event

You've probably heard about ToDoMVC project. It's same ToDo application made with different frameworks. It's interesting how the same problem is solved by different programmers following different concepts. This article is about making the ToDoMVC application with AbsurdJS.

read more

ExpressionEngine: thumbnail could not be created for the image under Windows

posted in PHP on 2013-11-28   file windows thumbnail file upload preferences image created

I'm a Windows user and I'm working on a ExpressionEngine based site. I'm using EasyPHP as a server and everything works as expected. However, once I decided to upload a file I got "Thumbnail could not be created for the image. Please make sure the thumbnail directory is writable.".

read more

JavaScript: sequencing function calls #2

posted in JavaScript on 2013-07-10   chain error console log arguments function res chain errors run object chainends

I created a simple JavaScript library for running functions in a sequence. The story behind this is published here. Today I made few interesting changes which deserve a new blog post.

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

Web Highlights #5

posted in HTML5 on 2013-05-30   http web design article unnecessary paints adobe device google street view code organizing javascript css paint times http www html5rocks

Everyday I'm reading or watching something which I find helpful. Normally I bookmark those things, but at the end I have dozen of folders and subfolders which I never check. So, I decided to make such blog post where I'll share valuable things in the net.

read more

Web Highlights #3

posted in HTML5 on 2013-04-22   http answer http www html5rocks css paint times design workflow considerations web design workflow responsive web design

A bunch of cool stuff ;-)

read more

How to find non-secure items on a page

posted in Other on 2012-02-08   secure items find http www whynopadlock simple web tool internet explorer annoying message repair helps found

We all know the annoying message of Internet Explorer about non secure items. I just found a simple web tool which helps to find those items and repair them.http://www.whynopadlock.com/

read more

The Dependency Inversion Principle

posted in Architecture on 2012-01-24   depend abstractions dependency inversion principle abstractions b abstractions low level modules high level modules higher level components inversion principle relates abstractions read details details

The Dependency Inversion Principle relates to the stability and reusability of higher-level components within an application. The principle states:_A. High-level modules should not depend on low-level modules. Both should depend on abstractions.B. Abstractions should not depend upon details. Details should depend upon abstractions._Read more here.

read more

How TDD and Pairing Increase Production by anarchycreek.com

posted in Architecture on 2011-12-12   pairing increase production tdd period http anarchycreek article period http great article period

Just a great article. Period! http://anarchycreek.com/2009/05/26/how-tdd-and-pairing-increase-production/

read more

CSS: selecting a specific child

posted in Other on 2011-01-05   span css main span specific child style set

The selectors are one of the most powerful features in CSS. Sometimes they can save you a lot of additional work. In this article I'll show you how to set the style of a specific child in a list of elements.

read more

checkPolicyFile flag was not set

posted in ActionScript on 2010-10-26   loader var context loadercontext crossdomain xml file checkpolicyfile flag set

Sometimes the uploading of crossdomain.xml file is not enough to get the things working.

read more

How to protect your SWF file

posted in ActionScript on 2010-10-15   function swf protect void check file import flash public ondatafiledtoload onfailed files string

Is there any way to protect your flash work? To be honest the answer is NO. As you probably know everything that is uploaded on a web server and is accessible from a web browser is downloaded to the users' computers and could be found in the temporary directories. Once someone gets your swf file he could use one of the dozen decompilers to reproduce the .fla and .as files. Anyway, there are still some ways to make stealing difficult.

read more

Embed fonts in all the text fields of your flash document

posted in ActionScript on 2010-02-26   jsfl script flash embed main flash_cs3_extending pdf http livedocs adobe simply ctrl r commangs run command flash commangs run jsfl embedcharactersintextfield jsfl

Very helpful solution that will save you maybe several hours. I used JSFL language and very short script to parse all the items in the library. Then for every item just embed the characters that I wanted. Get the script from here http://www.outset.ws/files/jsfl/embedCharactersInTextField.jsfl. In flash: Commangs -> Run command (or simply Ctrl+R) and point the script file.You can download the jsfl documentation from here http://livedocs.adobe.com/flash/9.0/main/flash_cs3_extending.pdf.

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