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

Smart placeholders in your markdown

posted in JavaScript on 2020-05-06   markdown placeholders template annotation marked contentful https button part content stuff p p seemore const

I ❤️ markdown. I like its simplicity and minimalistic API which is good enough to cover most of needed HTML markup. At least for textual content. At work we have a small node based microservice that delivers data from Contentful in exactly markdown format. It's all working well but we started having cases where part of the text is in Contentful and the other part is in that microservice. For example when we have a button with a catchy design. We want to content manage the label of the button but the actual markup to be on our side.

read more

Create your own Covid-19 data tracker

posted in JavaScript on 2020-03-30   covid-19 tracker virus api zeit covid https data github data tracker thevirustracker time johns hopkins university code back end endpoints react created recharts beginning tags tag link countries package sh https c19stats

I'm continuing to experiment with React and TypeScript. The weekend-long project this time was a Covid-19 data tracker. In this blog post I will share how I built c19stats.now.sh. I exposed the data as a public API at the same URL. I guess you, as many other people, follow the situation so you may want to glue your fingers on the keyboard and create something useful around the data. I got lots of fun playing with the diagrams.

read more

NADCAST.24 с Радо Станков

posted in NADCAST on 2020-03-26   nadcast remote productivity work tips home working remotely separation https rstankov biz 24_radostankov mp3 cbox biz 24_radostankov host003 cbox biz ws host003 cbox outset ws host003 nadcast outset ws http nadcast outset mp3 http nadcast

В тези смутни времена се чуваме online с Радо Станков за да си поговорим за remote working. Не че по принцип не се чуваме така, но сега е малко по-различно. В този 24-ти епизод споделяме нашия опит в работа от разстояние. Приятно слушане.

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

From 0 to 100 GitHub stars in a week

posted in JavaScript on 2020-02-27   github stars project branding promote octomments krasimir write idea https github blog align center don t easy section add https post link javascript reddit facebook make time

2020 for me started with the release of several OS projects. Two of them reached 100 stars in a week and I was thinking that would be nice sharing my workflow. Not like it is working every time, absolutely not, but leads to some good results.

read more

Webpack/TypeScript/React starter kit as of 2020

posted in JavaScript on 2020-02-23   webpack typescript starter react eslint beginning krasimir beginning npm run watch components app tsx src components app beginning https github

I just started using TypeScript. I did couple of React projects and noticed a pattern in the setup. I decided to export that to a starter kit 👉 beginning. It is based on Webpack with Babel and TypeScript loader.

read more

Octomments - using GitHub as a comment plugin

posted in JavaScript on 2020-01-31   octomments github comments github comments github issues server issues comment https github krasimir octomments https repo app

87% of my readers are using Chrome on desktop. This means that I have the luxury to care less about performance. However I just recently found that this blog has 56 (out of 100) points on Google's pagespeed test. That's not good. The report says that my Disqus comments are blocking the main thread for ~900ms. I want comments on my blog but I also want my users to reach to content as quickly as possible. So, after so many years using Disqus I decided to break with it and use something else.

read more

"Exit strategy" by Travis Bible

posted in Cinema on 2020-01-24   cinema short film https www youtube

Two brothers caught in a time loop must traverse a series of maze-like events in order to prevent a catastrophic fire from occurring.

read more

Hopa - zero config CLI that runs JavaScript and TypeScript

posted in JavaScript on 2020-01-12   hopa runner typescript javascript babel typescript io webpack https code don t krasimir hopa

Yesterday was one of those days. I stumbled a task and wanted to find the right tool for it. That same task is on my way at least twice a week and I always refuse to optimize it. Because it was a weekend I decided to spend some time and research a proper tool for the job. Well, I find nothing that suites my need. I time-boxed a hour and said F.ck it!. I will code it myself. That's how Hopa was born - a zero config CLI that runs JavaScript and TypeScript. Transpiles, bundles, watches and executes code.

read more

"The Candidate" by David Karlak

posted in Cinema on 2020-01-12   cinema short film secret society http www davidkarlak https www youtube

The story follows a secret society whose purpose is to find people who don’t deserve to live and to kill them with their thoughts. The tension between the pessimistic protagonist and the liaison of the secret society comes to a head in a riveting twist.

read more

Part 3: Riew - reactive view in patterns

posted in Riew on 2020-01-06   riew csp routine go javascript channels console log yield krasimir riew https github function state const

In this article we will see some use cases of Riew. Those are patterns which I found repeating while using the library. There are other blog posts part of the same series and I will suggest checking at least this one so you get a basic understanding before jumping into the code snippets below.

read more

Reactive view - the concept

posted in Riew on 2020-01-04   riew csp routine go javascript channels kitty ch const function view https react redux

Something bugs me last couple of years. I'm using React for some time now and there is always this doubt if I'm placing the business logic on the right place. I'm trying to be pragmatic, to follow best practices and listen what the community is saying. However, I still feel that something is not ok. This blog post presents the idea of the reactive view. That is nothing new per se but I came up with this term because it fits well in my idea.

read more

Bret Victor: Inventing on principle

posted in Inspiration on 2020-01-01   inspiration inventing principle href https vimeo bret victor inventing decade

I just finished reading My Decade in Review by Dan Abramov and as part of his article he mentions this talk by Bret Victor. I think it's amazing and want to keep a reference to it somewhere. What a better place than this 12 years old blog.

read more

NADCAST.23 с Яни и Ния

posted in NADCAST on 2019-12-10   nadcast influencer.bg remoteit world https https influencer bg world https influencer remoteit world https https remoteit world

Епизод 23 на малко позабравения NADCAST е тук. Този път гости ми бяха Яни (https://remoteit.world/) и Ния (https://influencer.bg/). Поговорихме си за маркетинг, брандинг, hiring и работа от разстояние. Приятно слушане.

read more

From PHP to Node with Zeit's lambdas and Cypress.io

posted in JavaScript on 2019-05-23   https blog cypress content zeit html javascript article articles

The first post in this blog was published on 25th of August 2008. This place was always living on a shared PHP/MySQL hosting. It was driven by a custom made PHP CMS for over 10 years. It is time to move forward and follow my actual language of choice - JavaScript. I spent some time recently migrating it to Zeit and this article is showing my process.

read more

NADCAST.22 live at React.NotAConf

posted in NADCAST on 2019-05-16   https twitter nadcast

Last weekend I was part of the ReactNotAConf conference and this 22th episode was live recorded on stage there. Kudos for the organizers and the speakers. It was an awesome event and it looks like we've made a really interesting panels. Enjoy.

read more

NADCAST.20 със Стефан Кънев

posted in NADCAST on 2019-02-27   https https www nadcast

Пилотния за сезон 2019 епизод е със Стефан Кънев. Поговорихме си за мениджмънт и лидерство. Приятно слушане.

read more

NADCAST.19 с Радо Станков и Минко Генчев

posted in NADCAST on 2018-12-20   https nadcast https twitter

Ето един малък коледен подарък - епизод номер 19 на NADCAST. Последните няколко месеца съм на вълна продуктивност. С Радо Станков и Минко Гечев си поговорихме за TEA framework. Или казано по друг начин, как да намерим повече време (time), енергия (energy) и фокус (attention). Приятно слушане.

read more

NADCAST.18 with Sara Vieira

posted in NADCAST on 2018-10-04   https sara vieira nadcast

This episode is with Sara Vieira. She is doing a lot of interesting things with React, GraphQL, Apollo and with JavaScript in general. She's also part of bunch of conferences doing talks and workshops which itself is a big challenge. Happy listening :)

read more

NADCAST.17 с Радо Станков

posted in NADCAST on 2018-07-26   nadcast https

След дългата, почти два месеца пауза, епизод 17 на NADCAST е с Радо Станков. Започнахме с някои много интересни новини като предстоящия NotAHackathon и VarnaConf. След това си поговорихме за различните по вид работни среди. През freelancer-ството до работата в продуктова компания.

read more

NADCAST.16 с Владимир Конушлиев

posted in NADCAST on 2018-05-31   https nadcast

Много ценен разговор с Владо се получи. В този 16-ти епизод дискутираме code review процеси, навици, мотивация и като за финал малко за баланса в нашата професия. Надявам се да ви хареса.

read more

NADCAST.15 live recorded at React.NotAConf

posted in NADCAST on 2018-05-09   https twitter react nadcast https www youtube http nadcast krasimirtsonev mp3 http nadcast live recorded

Episode #15 of NADCAST was live recorded at ReactNotAConf conference in Sofia on 28th of April. After every presentation we've made a panel with the speaker and ask topic related questions. So, if you listen the whole episode you'll get a pretty good overview of what the conference was about.

read more

NADCAST.14 със Стефан Кънев и Димитър Димитров

posted in NADCAST on 2018-04-19   https nadcast

Стефан и Митьо споделиха солидни практики и опит в менторирането на по-начинаещи програмисти. Надявам се този 14-ти епизод да ви бъде полезен независимо на какво ниво сте.

MP3: http://nadcast.krasimirtsonev.com/StefanKanev_DimitarDimitrov.mp3

read more

NADCAST.13 с Радо Станков

posted in NADCAST on 2018-04-11   react https http nadcast patterns conf summit https bulgariawebsummit web summit https bulgaria web summit notaconf http react react notaconf http

Фаталният епизод 13 на NADCAST е с моя добре познат събеседник Радо Станков. Основна тема на нашия разговор беше новата версия на React и предстоящите React.NotAConf (http://react-not-a-conf.com/) и Bulgaria Web Summit (https://bulgariawebsummit.com/) конференции.

read more

NADCAST.12 с Димитър Димитров

posted in NADCAST on 2018-03-22   https nadcast

Епизод номер 12 е с Димитър Димитров (Митьо). Поговорихме си за менторството и за това как трябва да се подхожда към начинаещите програмисти. Имаше и малко DevOps даже :)

read more

NADCAST.10 с Минко Гечев и Радо Станков

posted in NADCAST on 2017-12-22   http angular nadcast https twitter

Предколеден 10-ти епизод на NADCAST е с Радо Станков и Минко Гечев. Разговора започна с малко meta теми, но после си поговорихме за Angular, React и JavaScript като цяло. Приятно слушане и весели празници.

read more

NADCAST.09 с Радо Станков

posted in NADCAST on 2017-10-23   link react https facebook license nadcast graphql http state facebook event link

Епизод 9 на NADCAST е с Радо Станков. Основно си поговорихме за React и нашумелите около библиотеката теми. Приятно слушане :)

read more

NADCAST.07 with Kent C. Dodds

posted in NADCAST on 2017-08-15   http https kent c dodds

Episode 7 of my podcast with Kent C. Dodds. We had a nice chat about open source, teaching, React and Prettier.

read more

NADCAST.06 with Cole Peters

posted in NADCAST on 2017-07-10   https cole css

Episode 6 of my podcast with Cole Peters. We had a nice chat about the good old days, designing for web and CSS.

read more

NADCAST.04 с Найден Гочев и Михаил Кочанов

posted in NADCAST on 2017-06-12   forum nerds2nerds https groups google

Тази седмица мои гости бяха Мишо и Найден от Nerds2Nerds. Както всеки път така и в този епизод темите са малко на случаен принцип. Поговорихме си за интервю процеси, за remote work и къде е по-яко да се работи.

read more

NADCAST.03 с Радо Георгиев

posted in NADCAST on 2017-06-07   https

Трети епизод на "NADCAST". Този път със Радо Георгиев. Радо преподава и програмира и компания движи и конференция организира и още какво ли не. Поговорихме си за доста неща и е трудно да ги изброя тук. Та изслушайте го целия епизод :)

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

Accessing remote Git server under windows

posted in Architecture on 2013-05-28   git push windows server origin https git clone

Let's say that you have an access to remote server which has Git installed. A trivial case if you use unix based OS. But what if you use Windows :)

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

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