Допустим, вы разработчик, и вам от пользователя приходит строка user-agent с описанием того, каким браузером он пользуется.
В этой строке будет что-то типа такого:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36
И вы хотите из неё узнать мажорную версию Chrome, то есть вытащить число 51. Что вы сделаете? Можно, конечно, написать свой парсер, но я уверен, многие воспользуются регулярными выражениями. Я бы воспользовался. Какое выражение сюда подходит? С виду кажется, что вот такое:
/Chrome\/(\d\d)\./g
Мы ищем слово Chrome и слэш, затем ловим в группу две цифры, после которых стоит точка. Так?
По крайней мере, мышление достаточного количества разработчиков именно таково. Зачастую программистам не хватает умения отойти от техзадания на уровень вещественной сути того, с чем они работают. На самом деле число 51 это версия. Версия будет увеличиваться со временем. «Марти, где твоё четырёхмерное воображение?» Если уже прошло 50 версий, то и следующие 50 не за горами, число станет трёхзначным, регулярка или парсер, сделанные под двухзначные числа, перестанут работать.
Трехзначная версия Chrome и Firefox приближается уже сейчас. И да, в них падает куча функций на сайтах, включая крупные корпорации: Yahoo, Bethesda, HBO и бог знает сколько сайтов поменьше. Чисто из-за цифры. Это уже назвали «Проблема сотой версии» по аналогии с «Проблемой 2000 года» (программисты записывали год двумя цифрами, 2000 стал неотличим от 1900).
К чему это я? Полезно задумываться о физическом воплощении того, что вы представляете в своей программе. Ваш код должен описывать не столько требования заказчика, сколько законы, по которым существует этот объект в реальном мире.
#dev
#admin@cosmosy
✨ В Корее уже 11 апреля, а значит пришло время поздравить наших очаровательных cosmosy с первой годовщиной со дня их официального дебюта!
👍 За этот год девочки подарили нам 2 прекрасных альбома, множество интересных клипов, а также ярких выступлений и образов! Они рассказывают нам свою историю, в которой они одновременно предстают в качестве обычных школьниц, в качестве айдолов и даже мифических существ!
🎉 Желаем cosmosy оставаться такими же милыми и целеустремлёнными! Пусть у них будет как можно больше верных поклонников, а в работе пусть их окружают внимательные и заботливые люди!
🤗 Счастья, здоровья и успехов вам, наши дорогие Химеша, Дихана, Камион и Эймей!
يه جوری لفت میدین ک انگار سيبيلاي معين رو من زدم😐
لباي شهرام صولتي رو من پروتز کردم😐
کليپس رو من ساختم😐
من گفتم پسرا ابرو بردارن😐
من گفتم گلزار اهنگ بخونه😐
سرعت نت رو من اوردم پايين😐
شماره احسان علی خانی رو من دارم😐
که دخترا خواستگار ندارن تقصیر منه😐
کولر خونه رو من خاموش میکنم😐!
خو لفت ندین دیع😐😐😒
#Admin
@dardodelhayeman751
✨Good evening our dear members. How are you doing? Hope you're all fine and safe!
I hope you find the posts useful and you're really doing a great progress in developing listening and reading skills.👍🏻
My advice for you is to listen and read regularly and reinforce them through answering the quizzes after each recording.🎧
Best wishes!🌹
✍🏻#admin
✨Good afternoon, dear friends.🌸
Be ready for tonight's quiz onThe First, Second&Third Conditionalslessons. So kindly, give them a quick review!🙂
✍🏻#admin
✨ Good evening dear friends 🌸
How are you all doing? Hope you're doing great and making a good use of your time at home!🙂
Kindly, review all the lessons about the future above👆🏻and be well prepared for the quiz tonight, God willing.
I expect to see more interaction than before. The more you participate in answering the questions, the more you understand the grammar rules and guidelines.👌🏻
Stay home, wash your hands regularly and be safe.😊
✍🏻#admin
Good evening dear friends! 🌺
Are you ready for tonight's quiz? I'm sure you are!👍 It's gonna be on the last two lessons:Going to and Will.
Stay home and be safe.🙂
✍🏻#admin
Good evening dear friends.🌸
Kindly, review the last two lessons on the past perfect simple and past perfect continuous for tonight's quiz, God willing.😊
Please, stay home and be safe! 🤲
✍#admin
@EnglishGrammarSecrets
Dear members!✨
This is your channel, so if you have any comment, suggestion or question, feel completely free to send it here👇.
@EnglishGrammarSecrets_bot
✍#Admin
https://medium.com/django-musings/customizing-the-django-admin-site-b82c7d325510
Customizing the #Django#Admin site
Let’s start by saying that Django’s admin site is spectacular. It can literally save you months of work, but having said that, one thing that one needs to understand is that Django’s admin site is only ok as an internal tool. It is not, and never has been intended to be, an end user tool.
✨Good morning, dear friends. Have a wonderful day ahead.☀️
Be ready for tonight's #quiz onMixed Conditionalslesson. So kindly, give them a good review!💪🏻🙂
✍🏻#admin