четверг, 4 января 2018 г.

Формы в Laravel

 Многие фреймворки имеют встроенную поддержку генерации форм. В Laravel так было изначально, но затем формы выделили в отдельный компонент laravelcollective/html. В самом Laravel осталось буквально несколько элементов: защита от CSRF и поддержка дополнительных методов HTTP в HTML-формах.

Для установки этого компонента выполните эту команду:


$ composer require "laravelcollective/html"

суббота, 6 мая 2017 г.

Полезные настройки для vim

 Вставляем в ~/.vimrc


set tabstop=4

syntax on " Syntax highlighting

set showmatch " Shows matching brackets

set ruler " Always shows location in file (line#)

set smarttab " Autotabs for certain code

set shiftwidth=4


понедельник, 1 мая 2017 г.

Фаулер о добавлении новой функциональности

Обнаружив, что в программу необходимо добавить новую функциональность, но код программы не структурирован удобным для добавления этой функциональности образом, сначала произведите рефакторинг программы, чтобы упростить внесение необходимых изменений, а только потом добавьте функцию.

Мартин Фаулер

понедельник, 13 июня 2016 г.

GIT fatal: inflateInit: out of memory

На одном из серверов при попытке пушнуть взятый под git код возникла ошибка

Delta compression using up to 24 threads.
fatal: inflateInit: out of memory (no message)


Помогло сокращение трэдов упаковки git config --global pack.threads 1

вторник, 4 августа 2015 г.

Преждевременная оптимизация

 "Преждевременная оптимизация — корень всех зол". 


Дональд Кнут

статья «Structured Programming with go to Statements» в сборнике «Computing Surveys» (Vol. 6, № 4, декабрь 1974, стр. 268)

Linux: генерация рандомной строки для пароля

 cat /dev/urandom | tr -dc '[:alnum:]' | fold -w ${1:-20} | head -n 1