Знание Delphi — не нонсенс, а ниша :-) Вот совсем недавно, буквально месяц назад переводил одному заказчику код с Delphi на php.
На сочетании разных навыков вполне можно зарабатывать, хоть и не так часто, как хотелось бы. Ещё пример: на Апворке как-то заказчик искал перлового программиста со знанием хотя бы основ нотной грамоты, а в идеале (заказчик не надеялся его достичь) ещё и знакомого с набором нот в программе LilyPond. Мы пересеклись — клиент получил желаемое, я заработал. Не умел бы я одновременно и программировать, и ноты набирать — остался бы без денег.
Бывают и не начинающие, которые ещё помнят, что это Организация освобождения Палестины^W^W^W^W^W^W^W это ООП проходили в прошлом веке, а после этого писали на чём-нибудь, не особо это ООП требовавшее.
А вот в перле, например, можно в регулярных выражениях использовать модификатор x — он позволяет игнорировать пробелы (точнее пробельные символы сами по себе, а не \s), записывать выражение в несколько строк и добавлять комментарии. Получается достаточно удобно (пример из Mojo::Date):
my $RFC3339_RE = qr/
^(\d+)-(\d+)-(\d+)\D+(\d+):(\d+):(\d+(?:\.\d+)?) # Date and time
(?:Z|([+-])(\d+):(\d+))?$ # Offset
/xi;
Ну... Я когда-то, пробуя Перл после Си (до этого была куча и других языков), тоже активно использовал строковые функции. Но потом втянулся, прочитал man perlre и пару перловых книжек — теперь спокойно пользуюсь регулярными выражениями. Правда, не везде их синтаксис одинаков.
Ну да, на моём ноутбуке её тоже нет. Но если я дома, то к ноутбуку подключена нормальная полноразмерная клавиатура со стандартной раскладкой — там нужная клавиш есть.
По состоянию на март 2022 года справка об отсутствии судимости с апостилем стоила, если правильно помню, 2500 рублей. Да ещё и нельзя было оплатить сразу в месте получения — надо было идти ногами в банк и нести оттуда квитанцию. Плюс перевод — конкретно мне обошёлся в 900, но зависит и от конторы, и от языка.
Я как-то задавался подобными вопросами. Выкрутился, задав в медиазапросах размеры в сантиметрах. Но это для случая, когда не используется Bootstrap — с бутстрапом использую встроенные в него значения.
DOT(1) General Commands Manual DOT(1)
NAME
dot - filter for drawing directed graphs
neato - filter for drawing undirected graphs
twopi - filter for radial layouts of graphs
circo - filter for circular layout of graphs
fdp - filter for drawing undirected graphs
sfdp - filter for drawing large undirected graphs
patchwork - filter for squarified tree maps
osage - filter for array-based layouts
SYNOPSIS
dot [options] [files]
neato [options] [files]
twopi [options] [files]
circo [options] [files]
fdp [options] [files]
sfdp [options] [files]
patchwork [options] [files]
osage [options] [files]
DESCRIPTION
These are a collection of programs for drawing graphs. There is actually only one main pro‐
gram; the specific layout algorithms are implemented as plugins. Thus, they largely share all
of the same command-line options.
dot draws directed graphs. It works well on directed acyclic graphs and other graphs that can
be drawn as hierarchies or have a natural ``flow.''
neato draws undirected graphs using a ``spring'' model and reducing the related energy (see Ka‐
mada and Kawai, Information Processing Letters 31:1, April 1989).
twopi draws graphs using a radial layout (see G. Wills, Symposium on Graph Drawing GD'97, Sep‐
tember, 1997). Basically, one node is chosen as the center and put at the origin. The remain‐
ing nodes are placed on a sequence of concentric circles centered about the origin, each a
fixed radial distance from the previous circle. All nodes distance 1 from the center are
placed on the first circle; all nodes distance 1 from a node on the first circle are placed on
the second circle; and so forth.
circo draws graphs using a circular layout (see Six and Tollis, GD '99 and ALENEX '99, and
Kaufmann and Wiese, GD '02.) The tool identifies biconnected components and draws the nodes of
the component on a circle. The block‐cutpoint tree is then laid out using a recursive radial
algorithm. Edge crossings within a circle are minimized by placing as many edges on the cir‐
cle's perimeter as possible. In particular, if the component is outerplanar, the component
will have a planar layout. If a node belongs to multiple non‐trivial biconnected components,
the layout puts the node in one of them. By default, this is the first non‐trivial component
found in the search from the root component.
fdp draws undirected graphs using a ``spring'' model. It relies on a force‐directed approach in
the spirit of Fruchterman and Reingold (cf. Software‐Practice & Experience 21(11), 1991, pp.
1129‐1164).
sfdp also draws undirected graphs using the ``spring'' model described above, but it uses a
multi-scale approach to produce layouts of large graphs in a reasonably short time.
patchwork draws the graph as a squarified treemap (see M. Bruls et al., ``Squarified
treemaps'', Proc. Joint Eurographics and IEEE TCVG Symp. on Visualization, 2000, pp. 33-42).
The clusters of the graph are used to specify the tree.
osage draws the graph using its cluster structure. For a given cluster, each of its subclusters
is laid out internally. Then the subclusters, plus any remaining nodes, are repositioned based
on the cluster's pack and packmode attributes.
dot — для ориентированных графов и всяких иерархий, neato — для неориентированных, circo и twopi — для разложенных по окружностям плюc ещё несколько. https://graphviz.org/docs/layouts/ — тут подробнее.
Странно. Мне обычно хватает нескольких секунд даже когда е́ду. Воткнул нужную передачу — правая рука освободилась, ей же и пристёгиваюсь. Или вы всё время переключаете передачи?
Практическое прдтверждение: На моей машине подсветка климатических крутилок давно перегорела, но меня это не сильно волнует: любую из трёх (скорость вентилятора + рециркуляция, температура, направление обдува) я спокойно нахожу наощупь и также наощупь высталяю в нужное положение.
Да хоть бы и неточно — если знать разницу между временем фотоаппарата и GPS-трекера, то можно указать смещение в уже упомянутом exiftool — оно там задаётся в секундах. Когда я снимал обычными фотоаппаратами (а не телефоном, как сейчас), заметил, что часы там спешат и через какое-то время уже знал, как быстро в каждом фотоаппарате они убегают — потом просто перед каждым запуском привязки фотографий выставлял нужное смещение. Если считать лень, можно время от времени (ну не каждый день, чё уж) фотографировать навигатор (если там есть экран, где отображаются часы с секундами) и потом уже по этой фотке смотреть разницу между временем фотоаппарата и навигатора.
В шестнадцатеричной не считаю, но в двоичной — вполне. Когда что-то надо посчитать, загибаю пальцы в двоичной системе — одной руки таким образом хватает, чтоб сосчитать от 0 до 31, двух — в теории до 1023, на практике — где-то до 80 доходил.
Знание Delphi — не нонсенс, а ниша :-)
Вот совсем недавно, буквально месяц назад переводил одному заказчику код с Delphi на php.
На сочетании разных навыков вполне можно зарабатывать, хоть и не так часто, как хотелось бы. Ещё пример: на Апворке как-то заказчик искал перлового программиста со знанием хотя бы основ нотной грамоты, а в идеале (заказчик не надеялся его достичь) ещё и знакомого с набором нот в программе LilyPond. Мы пересеклись — клиент получил желаемое, я заработал. Не умел бы я одновременно и программировать, и ноты набирать — остался бы без денег.
Бывают и не начинающие, которые
ещё помнят, что это Организация освобождения Палестины^W^W^W^W^W^W^W это ООП проходили в прошлом веке, а после этого писали на чём-нибудь, не особо это ООП требовавшее.А вот в перле, например, можно в регулярных выражениях использовать модификатор
x— он позволяет игнорировать пробелы (точнее пробельные символы сами по себе, а не\s), записывать выражение в несколько строк и добавлять комментарии. Получается достаточно удобно (пример из Mojo::Date):или даже так (из Mojo::DOM::HTML):
Ну... Я когда-то, пробуя Перл после Си (до этого была куча и других языков), тоже активно использовал строковые функции. Но потом втянулся, прочитал
man perlreи пару перловых книжек — теперь спокойно пользуюсь регулярными выражениями. Правда, не везде их синтаксис одинаков.Багзилла — на перле, Mantis — на PHP, Trac — на питоне, Redmine — на руби. Выбор есть :-)
Ну да, на моём ноутбуке её тоже нет. Но если я дома, то к ноутбуку подключена нормальная полноразмерная клавиатура со стандартной раскладкой — там нужная клавиш есть.
На OpenStreetMap — несколько видов карт и в том, который по умолчанию, границы достаточно хорошо видны.
По состоянию на март 2022 года справка об отсутствии судимости с апостилем стоила, если правильно помню, 2500 рублей. Да ещё и нельзя было оплатить сразу в месте получения — надо было идти ногами в банк и нести оттуда квитанцию.
Плюс перевод — конкретно мне обошёлся в 900, но зависит и от конторы, и от языка.
Я как-то задавался подобными вопросами. Выкрутился, задав в медиазапросах размеры в сантиметрах. Но это для случая, когда не используется Bootstrap — с бутстрапом использую встроенные в него значения.
Ну у меня наоборот — оттопыренный палец соответствует нулю, загнутый — единице. И самый младший разряд — на большом пальце правой руки.
man dotвам в помощь :-)dot— для ориентированных графов и всяких иерархий,neato— для неориентированных,circoиtwopi— для разложенных по окружностям плюc ещё несколько.https://graphviz.org/docs/layouts/ — тут подробнее.
Странно. Мне обычно хватает нескольких секунд даже когда е́ду. Воткнул нужную передачу — правая рука освободилась, ей же и пристёгиваюсь. Или вы всё время переключаете передачи?
Алэ́вн? Эллэвын? Илевын?
Практическое прдтверждение:
На моей машине подсветка климатических крутилок давно перегорела, но меня это не сильно волнует: любую из трёх (скорость вентилятора + рециркуляция, температура, направление обдува) я спокойно нахожу наощупь и также наощупь высталяю в нужное положение.
Но графвизом рисовать всё равно проще и быстрее — я проверял. Ну и помимо
dotв его состав входят и другие утилиты для рисования графов.Да хоть бы и неточно — если знать разницу между временем фотоаппарата и GPS-трекера, то можно указать смещение в уже упомянутом
exiftool— оно там задаётся в секундах.Когда я снимал обычными фотоаппаратами (а не телефоном, как сейчас), заметил, что часы там спешат и через какое-то время уже знал, как быстро в каждом фотоаппарате они убегают — потом просто перед каждым запуском привязки фотографий выставлял нужное смещение. Если считать лень, можно время от времени (ну не каждый день, чё уж) фотографировать навигатор (если там есть экран, где отображаются часы с секундами) и потом уже по этой фотке смотреть разницу между временем фотоаппарата и навигатора.
Я себе больше десяти лет назад написал скрипт для копирования и сортировки фоток — до сих пор пользуюсь.
https://habr.com/ru/post/128527/
В шестнадцатеричной не считаю, но в двоичной — вполне. Когда что-то надо посчитать, загибаю пальцы в двоичной системе — одной руки таким образом хватает, чтоб сосчитать от 0 до 31, двух — в теории до 1023, на практике — где-то до 80 доходил.
Ну так между шестнадцатеричной, двоичной и восьмеричной в уме преобразовывать гораздо проще, чем между любой из них и десятичной.