Как же быть, как создать стартап на миллиард долларов? Ну если вы уверены в своей очередной "гениальной" идее... Ко мне раньше каждый месяц цифровые сумасшедшие обращались с просьбами оценить их идею на миллион долларов (которую рассказывают осторожными намёками, вдруг я её украду )))); теперь я таких просто сразу баню.
Дорогие, цена абсолютно любой вашей идеи ноль рублей ноль копеек; сделайте прототип и получите реальную обратную связь. Есть классическое А/Б тестирование. Создаёте пробную версию не более чем за две недели (80..100% обещанной функциональности можете пока выполнять вручную), после чего даёте рекламу и смотрите, будет ли интерес к вашей идее хотя бы немного отличен от нуля. Если конверсия в рекламе хотя бы 1% будет (скорее всего нет), то дальше уже легко смасштабировать расходы (на рекламу и разработку) на возможный доход. Но всё равно следующая итерация не должна превышать 2 месяца, и т. п.
Первый шаг -- создайте стартап хотя бы на тысячу рублей. Это вообще элементарно, но даже на это авторы гениальных идей не способны, как показывает практика :) Поэтому и говорить с ними не о чем.
Дорогие, цена абсолютно любой вашей идеи ноль рублей ноль копеек; сделайте прототип и получите реальную обратную связь. Есть классическое А/Б тестирование. Создаёте пробную версию не более чем за две недели (80..100% обещанной функциональности можете пока выполнять вручную), после чего даёте рекламу и смотрите, будет ли интерес к вашей идее хотя бы немного отличен от нуля. Если конверсия в рекламе хотя бы 1% будет (скорее всего нет), то дальше уже легко смасштабировать расходы (на рекламу и разработку) на возможный доход. Но всё равно следующая итерация не должна превышать 2 месяца, и т. п.
Первый шаг -- создайте стартап хотя бы на тысячу рублей. Это вообще элементарно, но даже на это авторы гениальных идей не способны, как показывает практика :) Поэтому и говорить с ними не о чем.
В vk забросали вопросами "а как это, стартап хотя бы на тысячу рублей?"
Дорогие, ну вы чего? :)
Ну ок. Алгоритм 5 шагов.
1. Определитесь с тематикой, в которой вы шарите: например, GameFi, или машинное обучение, или прозаический классический бэкенд.
2. Ищете по этой теме не менее двух заказчиков на сайтах фриланса, демпингуя по любым заказам до уровня 1000 рублей. Ничего страшного, если работы за такую цену будет куда больше: просто начьните :)
Если получится за большую цену, тоже хорошо; главное, чтобы цена в 1,000 рублей не становилась отмазкой в духе "не возьмусь, это много работы, лучше ещё поищу заказы повыгоднее".
3. Сделайте заказ качественно и не дольше чем за 3 недели; получите деньги за работу, и потратьте их в течение 24 часов.
4. Повторяйте пункты 2-3, чтобы на протяжении не менее двух месяцев вы выполняли не менее двух заказов одновременно.
5. Теперь повышаете текущую цену в два раза (если была 1,000 -- будет 2,000 рублей; было 4,000 - делаете 8,000 и т. д.), и начинаете сначала.
За первый год такой активности вы получите прекрасный опыт, а на второй год доберётесь уже до достаточно серьёзных заказов, когда можно вполне расширяться и оформлять ИП или даже ООО.
Дорогие, ну вы чего? :)
Ну ок. Алгоритм 5 шагов.
1. Определитесь с тематикой, в которой вы шарите: например, GameFi, или машинное обучение, или прозаический классический бэкенд.
2. Ищете по этой теме не менее двух заказчиков на сайтах фриланса, демпингуя по любым заказам до уровня 1000 рублей. Ничего страшного, если работы за такую цену будет куда больше: просто начьните :)
Если получится за большую цену, тоже хорошо; главное, чтобы цена в 1,000 рублей не становилась отмазкой в духе "не возьмусь, это много работы, лучше ещё поищу заказы повыгоднее".
3. Сделайте заказ качественно и не дольше чем за 3 недели; получите деньги за работу, и потратьте их в течение 24 часов.
4. Повторяйте пункты 2-3, чтобы на протяжении не менее двух месяцев вы выполняли не менее двух заказов одновременно.
5. Теперь повышаете текущую цену в два раза (если была 1,000 -- будет 2,000 рублей; было 4,000 - делаете 8,000 и т. д.), и начинаете сначала.
За первый год такой активности вы получите прекрасный опыт, а на второй год доберётесь уже до достаточно серьёзных заказов, когда можно вполне расширяться и оформлять ИП или даже ООО.
High-Performance Modern Python
Python in GraalVM is 8.92x faster than CPython and 8.34x faster than Jython.
Python in GraalVM is 8.92x faster than CPython and 8.34x faster than Jython.
На днях прочитал саркастическую новость, что дескать телекомовское оборудовавние, где теперь работает российский софт по импортозамещению, подорожало на 50%.
Ну +50% -- это очень достойный результат (без иронии), потому что подобные программно-аппаратные проекты крайне сложные в разработке. Даже +500% в нынешних условиях было бы нормально кстати.
В паблике vk немного рассказываю, как стратегически существенно понижать сложность и стоимость подобных проектов. Например, один из американских гуру по встраиваемым системам достиг такого kung fu, что переносил драйверы на новое железо за один час!
Ну +50% -- это очень достойный результат (без иронии), потому что подобные программно-аппаратные проекты крайне сложные в разработке. Даже +500% в нынешних условиях было бы нормально кстати.
В паблике vk немного рассказываю, как стратегически существенно понижать сложность и стоимость подобных проектов. Например, один из американских гуру по встраиваемым системам достиг такого kung fu, что переносил драйверы на новое железо за один час!
Забавная ностальгическая и поучительная история
"Как мы (невероятно криво) делали Старкрафт".
Очень много багов пришлось на самопальные реализации двунаправленных связных списков
(наглядный ответ на вопрос "зачем вообще надо изучать АСД?"):
Unfortunately, each list was "hand-maintained" -- there were no shared functions to link and unlink elements from these lists; programmers just manually inlined the link and unlink behavior anywhere it was required.
Ну ладно, монадические трансформеры не использовались :)
но категорные типы (например, terminal coalgebras) для декомпозиции можно было бы задействовать? а не лепить на коленке эти жуткие иерархии классов.
Это был сарказм :) Один сеньор на миллион такое умеет, а я научу курсантов подобному на формате hard work.
"Как мы (невероятно криво) делали Старкрафт".
Очень много багов пришлось на самопальные реализации двунаправленных связных списков
(наглядный ответ на вопрос "зачем вообще надо изучать АСД?"):
Unfortunately, each list was "hand-maintained" -- there were no shared functions to link and unlink elements from these lists; programmers just manually inlined the link and unlink behavior anywhere it was required.
Ну ладно, монадические трансформеры не использовались :)
но категорные типы (например, terminal coalgebras) для декомпозиции можно было бы задействовать? а не лепить на коленке эти жуткие иерархии классов.
Это был сарказм :) Один сеньор на миллион такое умеет, а я научу курсантов подобному на формате hard work.
Code Of Honor
Tough times on the road to Starcraft - Code Of Honor
I’ve been writing about the early development of Warcraft, but a recent blog post I read prompted me to start scribbling furiously, and the result is this three-part, twenty-plus page article about the development of StarCraft, along with my thoughts about…
Лаборатория Математики и Программирования Сергея Бобровского pinned «Забавная ностальгическая и поучительная история "Как мы (невероятно криво) делали Старкрафт". Очень много багов пришлось на самопальные реализации двунаправленных связных списков (наглядный ответ на вопрос "зачем вообще надо изучать АСД?"): Unfortunately…»
Задачка для джуниоров (с собеседования в IBM):
множество, содержащее только пустое множество -- {{}}
считается пустым или непустым?
Для большего запутывания напомню: пустое множество {} считается подмножеством любого другого множества, например {{1}}, но в том числе и пустого {}
(можете это проверить в своём языке программирования со стандартным типом данных Set, или даже с пустыми строками).
P.S. Ответ завтра будет.
множество, содержащее только пустое множество -- {{}}
считается пустым или непустым?
Для большего запутывания напомню: пустое множество {} считается подмножеством любого другого множества, например {{1}}, но в том числе и пустого {}
(можете это проверить в своём языке программирования со стандартным типом данных Set, или даже с пустыми строками).
P.S. Ответ завтра будет.
Ответ на вчерашнюю задачку: {{}} -- это непустое множество. Но совсем не потому, что это естественно, а наоборот -- всё очень запутано:)
Классический пример кризиса оснований математики -- это аксиоматическая теория ZFC (логика предикатов + проверка принадлежности множества множеству), развитие которой происходило весьма неформальными методами. Воеводский эту проблему пытался как-то решить, по крайней мере запустил процесс, в унивалентных основаниях математики, и его продолжатели вроде таких куда-то ещё бредут, потому что даже сама возможность формализации метатеории не доказана, или даже, точнее, тут возникает потребность в некоей странной нелогической, "корпускулярной" логике :)
Существуют некоторые математические предположения (даже можно сказать, доказательства теорем), которые недоказуемы в определённой формальной системе (например, в аксиоматике арифметики Пеано, непротиворечивость которой недоказуема по Гёделю (но доказуема в конструктивистских подходах)). Как вообще мы узнаем, что некоторые теоремы в ней недоказуемы, если они достаточно сложные (например, о криптостойкости некоторого алгоритма в модели, отличной от давно устаревшей Долева-Яо, которой однако и сегодня массово учат в университетах по критобезу, чему хакеры очень радуются:) правильно сегодня учить этому вот так)?
Классический пример кризиса оснований математики -- это аксиоматическая теория ZFC (логика предикатов + проверка принадлежности множества множеству), развитие которой происходило весьма неформальными методами. Воеводский эту проблему пытался как-то решить, по крайней мере запустил процесс, в унивалентных основаниях математики, и его продолжатели вроде таких куда-то ещё бредут, потому что даже сама возможность формализации метатеории не доказана, или даже, точнее, тут возникает потребность в некоей странной нелогической, "корпускулярной" логике :)
Существуют некоторые математические предположения (даже можно сказать, доказательства теорем), которые недоказуемы в определённой формальной системе (например, в аксиоматике арифметики Пеано, непротиворечивость которой недоказуема по Гёделю (но доказуема в конструктивистских подходах)). Как вообще мы узнаем, что некоторые теоремы в ней недоказуемы, если они достаточно сложные (например, о криптостойкости некоторого алгоритма в модели, отличной от давно устаревшей Долева-Яо, которой однако и сегодня массово учат в университетах по критобезу, чему хакеры очень радуются:) правильно сегодня учить этому вот так)?
Готовлю лекцию "Про инопланетян, плоскую землю и функциональное программирование". Вы узнаете такие невероятные факты, что
a) Haskell значительно старше, чем Java, и
b) Haskell сейчас в том возрасте, в каком был Algol, когда родился Haskell.
Ещё смешное, в тему: Monad_tutorials_timeline
В 100500-й раз про то, как преобразовывать профунктор в комонаду через коалгебру, снова вот это вот всё.
a) Haskell значительно старше, чем Java, и
b) Haskell сейчас в том возрасте, в каком был Algol, когда родился Haskell.
Ещё смешное, в тему: Monad_tutorials_timeline
В 100500-й раз про то, как преобразовывать профунктор в комонаду через коалгебру, снова вот это вот всё.
Если вы думаете, что знаете, на что способен type inference, подумайте ещё раз: профункторные линзы на PureScript
(нет, это совсем не похоже на TypeScript, это скорее хаскель для фронтенда)
вот какие красивые композиции можно выделывать
(нет, это совсем не похоже на TypeScript, это скорее хаскель для фронтенда)
вот какие красивые композиции можно выделывать
Однако если вы хотите изучить функциональное программирование "для практики", не вздумайте браться за хаскель, потеряете кучу времени совершенно впустую. Самый прагматичный подход: сперва изучаете C++20 просто по хардкору, и затем берётесь за stl, в которую Степанов сразу заложил мощную математику -- в ней идеологически полно функциональщины. И потом смотрите, что в вашем языке из стандартных либ есть подобного (хотя вряд ли), ну по кр.мере пытаетесь придерживаться стиля stl. И в целом, от темплейтов остаётся всего один шаг до метапрограммирования.
Задачка по импортозамещению: спроектируйте логическую плату (напишите функцию, условно), у которой три входа и три выхода. При подаче на любой вход 1 или 0 на соответствующем выходе появляется инвертированный сигнал 0 или 1. Вы можете использовать произвольное количество AND и OR, но из-за санкций только два элемента NOT.
Джона Бэкуса однажды спросили, почему функциональное программирование так и не стало по-настоящему популярным. Он ответил: "ФП сильно упростило реализацию сложных задач, но сильно усложнило реализацию простых задач".
Обращение к коллективному бессознательному подпищеков :)
Ваша задача: проголосовать так, чтобы истинным стал пункт, за который проголосует большинство.
Ваша задача: проголосовать так, чтобы истинным стал пункт, за который проголосует большинство.
Anonymous Poll
45%
А) Пункт А наберёт большинство голосов.
13%
Б) Пункт Б наберёт большинство голосов.
43%
В) Пункт А или пункт Б наберут большинство голосов.
То самое чувство, когда понимаешь на собственной шкурке, что же такое капитализм )))
"Twitter employees say managers instructed them to work 12-hour shifts, seven days a week to hit Musk’s aggressive deadlines and that their jobs are at stake."
"Twitter employees say managers instructed them to work 12-hour shifts, seven days a week to hit Musk’s aggressive deadlines and that their jobs are at stake."
Надеюсь, вы активно используете sed, но он универсальный, а нередко требуется нечто более продуктивное под определённую специфическую задачу. Например, разбираться с этими гадкими безтиповыми json-ами -- лакмусовой бумажкой того дна, в которое скатилось ИТ :)
jq -- a lightweight and flexible command-line JSON processor.
jq is like sed for JSON data - you can use it to slice and filter and map and transform structured data with the same ease that sed, awk, grep and friends let you play with text.
...it has zero runtime dependencies.
Я посмотрел, как он устроен внутри -- ну, да, jq создаёт внутреннее представление json-а, так что вы используете изоморфизм :) На эту тему в СильныхИдеях будет материал скоро.
Кстати, jq -- отличный пример для микро-бизнеса, ну или хотя бы для сайд-проектов: создавать вот такие маленькие инструменты (рационализаторство), помогающие в повседневной рутинной деятельности разработчика.
jq -- a lightweight and flexible command-line JSON processor.
jq is like sed for JSON data - you can use it to slice and filter and map and transform structured data with the same ease that sed, awk, grep and friends let you play with text.
...it has zero runtime dependencies.
Я посмотрел, как он устроен внутри -- ну, да, jq создаёт внутреннее представление json-а, так что вы используете изоморфизм :) На эту тему в СильныхИдеях будет материал скоро.
Кстати, jq -- отличный пример для микро-бизнеса, ну или хотя бы для сайд-проектов: создавать вот такие маленькие инструменты (рационализаторство), помогающие в повседневной рутинной деятельности разработчика.
Как программисту развивать логику?
Хорошо бы конечно отдельно пройти курсы по мат.логике,
а на уровне джуниора/миддла очень рекомендую порешать задачки из книг Рэймонда Смаллиана для малышей: "Принцесса или тигр?", "Алиса в стране смекалки", "Загадка Шехерезады". Далее, если будете это легко решать (но это вряд ли :), попробуйте осилить "Вовеки неразрешимое", и после этого уже вполне можно взрослый курс по логике изучать.
И в любом случае, крайне рекомендую "Передразнить пересмешника" -- изумительно увлекательная книга по комбинаторной логике, в сказочном формате познакомитесь со множеством важнейших понятий.
вылечит и психа
и лунатика
кодоприкладная
математика
Хорошо бы конечно отдельно пройти курсы по мат.логике,
а на уровне джуниора/миддла очень рекомендую порешать задачки из книг Рэймонда Смаллиана для малышей: "Принцесса или тигр?", "Алиса в стране смекалки", "Загадка Шехерезады". Далее, если будете это легко решать (но это вряд ли :), попробуйте осилить "Вовеки неразрешимое", и после этого уже вполне можно взрослый курс по логике изучать.
И в любом случае, крайне рекомендую "Передразнить пересмешника" -- изумительно увлекательная книга по комбинаторной логике, в сказочном формате познакомитесь со множеством важнейших понятий.
вылечит и психа
и лунатика
кодоприкладная
математика
👍1
Привлекли микрософтовских буржуев к общественно полезным работам ))
In 2020, Core Developer Mark Shannon drafted an Implementation plan for speeding up CPython (the most common implementation) by five times. Python 3.11 has already seen speedups of 10-60% in some areas of the language.
P.S. В сентябре кстати я говорил, как microsoft подставляет разработчиков своим copilot-ом, и вот на днях им выкатили иск на 9 миллиардов долларов, и поделом.
In 2020, Core Developer Mark Shannon drafted an Implementation plan for speeding up CPython (the most common implementation) by five times. Python 3.11 has already seen speedups of 10-60% in some areas of the language.
P.S. В сентябре кстати я говорил, как microsoft подставляет разработчиков своим copilot-ом, и вот на днях им выкатили иск на 9 миллиардов долларов, и поделом.
Microsoft News
A Team at Microsoft is Helping Make Python Faster
Python 3.11 brings the specialized adaptive interpreter, the starting point of a large plan to make Python much faster. At Microsoft, we have a full-time team dedicated to this project.