Welcome to my coding blog!

  • Logger Tagged Template Literal

    In his GitHub book You Don’t Know JS Kyle Simpson talks about tagged template literals. In Front End Master course he also gives an example of a useful console logger tagged template literal shown below: Here is how to use the function above: Here’s the output: References You Don’t Know JS Frontend Masters course JavaScript:…

  • Automated Deployment of Laravel Project

    In this article I would like to share my approach to automated deployment of a Laravel project. I have been successfully using this approach for my side projects. In this article I will share Laravel project deployment on Linux (Digital Ocean) server. In a nutshell deploying Laravel project consists of “building” it (installing composer dependencies,…

  • Logger Setup with Winston

    A simple setup with winston logger:

  • Adding Email Headers in Laravel Application

    Adding email headers in Laravel application is quite simple. SwiftMessage can be customized using withSwiftMessage method of Mailable base class: https://laravel.com/docs/8.x/mail#customizing-the-swiftmailer-message However you have to remember to do it every time you create a new “mailable” class. Some mail APIs require you to put a special header each time you send an email. In this…

  • API Server Logging with Laravel

    When you work with APIs it is usually a good idea to log requests and responses. I already covered how to do logging when you are consuming an API. You can read about it in this post. Here we will cover how to do it when building an API service with Laravel. For example, you…

  • Exporting Records with Timezone Adjustments

    As a rule, dates in a database are stored in UTC. So, when you export records from database constrained by dates, it is a good idea to use appropriate timezone in export query. You can do it in one of two ways. One way is create incoming dates in user’s timezone, then covert time to…

  • Retrying and Logging Requests with Guzzle

    When consuming 3d party API, you may want to do two things: In this article we will look at how to implement the above features using Guzzle, a popular PHP library for making API calls. Let us scaffold our app composer init composer require guzzlehttp/guzzle:~6.0 composer require monolog/monolog composer require –dev phpunit/phpunit:^8 We will be…

  • Stream Files From S3

    When using S3 as our external storage, sometimes we have to let users download files from S3. If file is too large, it may not fit in the memory. The solution is to stream file into user’s browser straight from S3. Let’s take a look how to do it with Laravel’s Filesystem. There are 2…

  • Loading Start Scripts for GitBash on Windows

    I use GitBash as my shell on Windows. Below are the scripts I normally load including git ssh agent. Useful git aliases:

  • YouTube and Copyright

    Отношение YouTube к авторскому праву состоит таким образом, чтобы защитить себя (YouTube) от возможных исков, которые могут подать большие компании. Для YouTube маленький человек в этом отношении не стоит на первом плане. Добросовестное использование YouTube поддерживает принцип добросовестного использования произвений третьиих лиц. Когда в Вашем YouTube влоге используюется произведение третьих лиц, следует придерживаться следующих правил,…