В Go встроен шикарный функционал для бэнчмарка.
Мне нужно было понять, какой из двух if'ов на первом скрине отработает быстрее, а главное насколько (при разных длинах строки).
Раньше в матлабе надо было писать разные циклы, самому выбирать число итераций, засекать время, а тут все изкаропки. Четко!
Первые шаги к HighLoad😂
Мне нужно было понять, какой из двух if'ов на первом скрине отработает быстрее, а главное насколько (при разных длинах строки).
Раньше в матлабе надо было писать разные циклы, самому выбирать число итераций, засекать время, а тут все изкаропки. Четко!
Первые шаги к HighLoad😂
Сноска к слову RPC (Remote Procedure Call):
"In modern programming languages, we might instead say remote method invocation (RMI), but who likes these languages anyhow, with all of their fancy objects?"
Только Си)
"In modern programming languages, we might instead say remote method invocation (RMI), but who likes these languages anyhow, with all of their fancy objects?"
Только Си)
Ща читаю операционки и короче. Есть два вида многозадачности:
1. Классический - потоки. Планировщик по очереди их запускает и все ок.
2. Событийные системы. Тут всего 1 поток. Все операции асинхронные, т.е. пишешь какой-нибудь read() и программа не ждет завершения, а продолжает выполняться дальше. Суть в том, что периодически ты проверяешь состояние своего read и если он завершился, то делаешь что-то соответствующее.
К чему я это. Для меня стало открытием, что первая модель не единственно возможная многозадачность.
Кстати, вторая модель напоминает мне сильно javascript. С его коллбэками, промисами асинками и т.д. Скорее всего потому что там она и используется т.к. джаваскрипт не компилируемый, а интерпретируемый и первый подход сложно реализовать, если вообще возможно (я не знаю еще).
Более того, первый подход имеет тот недостаток, что такой код правильно писать сложно. То есть всякие условия гонки не исключены, дедлоки, лайвлоки и т.д. Второй же подход это не имеет изначально т.к. всего 1 поток! Но такой код писать тоже не легко (Не смогу особо сказать почему, но может можно загуглить по manual stack managment).
Морали нет) Очередные ночные рассуждения
1. Классический - потоки. Планировщик по очереди их запускает и все ок.
2. Событийные системы. Тут всего 1 поток. Все операции асинхронные, т.е. пишешь какой-нибудь read() и программа не ждет завершения, а продолжает выполняться дальше. Суть в том, что периодически ты проверяешь состояние своего read и если он завершился, то делаешь что-то соответствующее.
К чему я это. Для меня стало открытием, что первая модель не единственно возможная многозадачность.
Кстати, вторая модель напоминает мне сильно javascript. С его коллбэками, промисами асинками и т.д. Скорее всего потому что там она и используется т.к. джаваскрипт не компилируемый, а интерпретируемый и первый подход сложно реализовать, если вообще возможно (я не знаю еще).
Более того, первый подход имеет тот недостаток, что такой код правильно писать сложно. То есть всякие условия гонки не исключены, дедлоки, лайвлоки и т.д. Второй же подход это не имеет изначально т.к. всего 1 поток! Но такой код писать тоже не легко (Не смогу особо сказать почему, но может можно загуглить по manual stack managment).
Морали нет) Очередные ночные рассуждения
Можно переименовать канал в /dev/null, тогда название будет корректнее отражать ту отстраненность, которую я испытываю, когда сюда пишу)
Про "ксерокс", синьку и английское слово blueprint
https://pikabu.ru/story/pro_sinku_7741753
https://pikabu.ru/story/pro_sinku_7741753
Пикабу
Про синьку
Автор: Tech.spiritus
Как понять что по чем с языком программирования
Рейтинги:
- https://www.tiobe.com/tiobe-index/
- http://pypl.github.io/PYPL.html
- https://spectrum.ieee.org/the-top-programming-languages-2023
- https://redmonk.com/sogrady/2023/05/16/language-rankings-1-23/
Исследования:
- https://survey.stackoverflow.co/2024/technology/
- https://habr.com/ru/company/habr_career/blog/485146/
- https://insights.stackoverflow.com/survey/2020
- https://madnight.github.io/githut/#/stars/2021/1
- https://trends.google.ru/trends/?geo=RU тут руками можно сравнивать популярность запросов
Рейтинги:
- https://www.tiobe.com/tiobe-index/
- http://pypl.github.io/PYPL.html
- https://spectrum.ieee.org/the-top-programming-languages-2023
- https://redmonk.com/sogrady/2023/05/16/language-rankings-1-23/
Исследования:
- https://survey.stackoverflow.co/2024/technology/
- https://habr.com/ru/company/habr_career/blog/485146/
- https://insights.stackoverflow.com/survey/2020
- https://madnight.github.io/githut/#/stars/2021/1
- https://trends.google.ru/trends/?geo=RU тут руками можно сравнивать популярность запросов
IEEE Spectrum
The Top Programming Languages 2023
Python and SQL are on top, but old languages shouldn’t be forgotten
Forwarded from Двач
This media is not supported in your browser
VIEW IN TELEGRAM
Британские службы спасения успешно протестировали первый в мире реактивный костюм парамедика – такие костюмы хотят использовать для экстренной помощи пострадавшим
Лётные испытания прошли в национальном парке в Озёрном крае. Во время теста удалось долететь со дна долины на место «происшествия» за 90 секунд. Чтобы добраться туда пешком, спасателю потребовалось бы 25 минут
Лётные испытания прошли в национальном парке в Озёрном крае. Во время теста удалось долететь со дна долины на место «происшествия» за 90 секунд. Чтобы добраться туда пешком, спасателю потребовалось бы 25 минут
Очень круто про многозадачность в ОС и почему потребовалась такая сущность, как горутина, используемая в Go
https://www.coursera.org/learn/golang-webservices-1/lecture/Z7AKM/mietody-obrabotki-zaprosov-i-pliusy-nieblokiruiushchiegho-podkhoda
https://www.coursera.org/learn/golang-webservices-1/lecture/Z7AKM/mietody-obrabotki-zaprosov-i-pliusy-nieblokiruiushchiegho-podkhoda
Брайан Эктон ходил на собеседование в Facebook и получил отказ. Он сказал «да пошли они…» и создал WhatsApp. Несколько лет спустя Facebook купил WhatsApp за 19 миллиардов долларов.
Вот его твит 2009 года, когда он ходил на собеседование: https://twitter.com/brianacton/status/3109544383?s=19
Вот его твит 2009 года, когда он ходил на собеседование: https://twitter.com/brianacton/status/3109544383?s=19
Twitter
Brian Acton
Facebook turned me down. It was a great opportunity to connect with some fantastic people. Looking forward to life's next adventure.