Мой опыт показывает, что глаголы должны быть убраны из описания предметных областей.
Они всегда всё портят. Нужно оставить только один глагол: TO BE
Есть студенты.
Есть курсы.
Есть посещения студентом курса. (Это отдельный класс, а если речь про БД, то это будет таблица где будут например данные: id, student_id, course_id, date, time)
То есть нет никакого «Журнала посещаемости», который имеет записи. Есть просто ПОСЕЩЕНИЯ.
И тогда да, у вас у студента будут student.visits, у курса будут course.visits
И это всё прекрасно работает. Если вам хочется пересечения, то это уже отдельный объект/класс/таблица БД и т.д.
И кажется, что это не зависит от языков программирования. Так просто удобно. Если мы говорим про объекты, то надо говорить про их объекты и их свойства.
С Python интересная ситуация. Мне кажется в сообществе Python-разработчиков не очень модно занимать веб-разработкой. Data Science, AI, ML — вот трушные области работы для питониста. А в Ruby как: хочешь писать на Ruby — занимаешься веб-разработкой.
И поэтому (по-моему личному опыту) средний опыт питониста в веб-разработке ниже, чем у рубистов. И еще ниже, если речь идет о fullstack разработке. А именно о ней шла речь в статье. Ведь для того, чтобы хорошо разобраться в беке нужно время. А если потом еще добавить фронтовые webpack, postcss, linters, yarn, tree shacking, etc — то нужно еще больше времени.
И по-моему личному опыту, средний проект на Rails сделан лучше, чем средний проект на Django. Последние два проекта на Django, которые мне довелось смотреть были сделаны без git (точнее первичный git clone есть, а дальше вялые и брошенные попытки вести git c последним коммитом больше года назад), и все равно с диким хламом в репе (вроде node_modules, паролей, secrets), без тестов, без деплоя, с загрузкой кода по ssh и т.д.
Я в Rails проектах многое видел, но такого никогда не видел)
Спасибо за статью. Такая ситуация не только в PHP.
В Ruby сообществе последнее время еще модно пилить все на микросервисы, переписывать все на монады, сервис-объекты, 12factorapp и т.д. Архитектура ради архитектуры, программирование ради программирования.
Спасибо за
Программирование — это в первую очередь процесс формализации требований, вы же пытаетесь формализовать сам процесс формализации, без всякой оглядки на какие-либо ограничения.
Сервер Хабра отдает один раз.
Сервер CDN кеширует статику.
Браузер скачивает этот js chunk 1 раз.
Следующая версия будет скачиваться, когда выкатится новое обновление этой страницы. Ну допустим раз в день. Если я зашел и прочитал 5 статей, то я скачал один раз, а не 5.
А еще сервер хабра отдал 1 раз, CDN закешировал и отдал пользователям 1 млн раз.
А если пихать это все в архив, то пользователи скачают 3-5 млн раз этот JS chunk.
И этот объем придется отдавать серверу.
Поэтому я не очень понимаю, как вообще это все можно провернуть.
Тысячи и миллионы сайтов рассчитаны на то, чтобы кешировать статику и делают это на разных уровнях: сервер, nginx, CDN, браузер, etc.
Как отказаться от этого кеширования в вебе — я не понимаю.
Но на самом деле мне кажется, что это задачка нереальная, потому что отвалится вся система кеширования (картинок, js, css). Такой рост объема данных «интернет» просто не переварит.
1) Я знаю коллегу, который устроился в gitlab, и спустя несколько месяцев снял себе место в коворкинге. Естественно рядом с домом. Ходить он туда не обязан, и летом и во время отпуска он его не оплачивает.
2) Мой друг в 2016м устроился на удаленку в голландскую компанию. Менеджером по обработке заказов. Не разраб, и ЗП не космическая. Компания занимается доставкой своих приборов в РФ и им нужны тут сотрудники. Большинство из них на удаленке. Так вот компания: оплатила новый ноут, 2 монитора, стол под все это, принтер, кресло. Стол/кресло можно было выбирать самому и бюджет был на то, чтобы выбрать себе лучшее геймерское кресло. Еще раз напомню — это просто менеджер по работе с клиентами и обработке заказов. А да, еще компания оплатила билет в Нидерланды, проживание, командировочные на 2 недели обучения, сразу после трудоустройства.
Как вы думаете мой друг все еще работает в этой компании? Да)
Удаленка не означает безразличное отношение к сотруднику и его условиям труда.
P.S. был случай в моей карьере, когда я привез свое собственное кресло в офис, потому что офисные были такие дерьмовые, что уж лучше на своем.
Есть хорошая практика сравнивать производительность труда по отраслям/предприятиям.
Например: сравнить заводы «Северсталь» с другими металлургическими заводами мира, и выяснить как они отличаются. (Причем мерить не в $, а в тоннах производимой аналогичной продукции).
Или то же сельской хозяйство:
— сколько продукции собирается с гектара
— сколько нужно людей чтобы вырастить тысячу тонн условной пшеницы
Или возьмем средний хороший салон красоты в Москве и Париже.
Парикмахер в Москве постриг 8 человек за смену по 20$ (160$ вклад в ВВП),
Парикмахер в Париже подстриг 8 человек за смену по 50$ (400$ вклад в ВВП)
Их производительность труда одинаковая: 8 стрижек за смену. Но если учитывать вклад в ВВП в $, то вылезает разница в 2 раза.
Если кто-то знает, где найти статистику по производительности труда по отраслям — буду очень признателен за ссылки.
P.S. я не утверждаю, что в РФ все идеально с производительностью, много где есть места для оптимизации. И измерять как раз надо производимую продукцию, в каждой конкретной отрасли, а не вклад в ВВП в $.
P.S.S. применительно к IT:
Возьмем Яндекс vs Google. Скорее всего сложность разработки поискового движка одинакова и для Яндекса и для Google. Но вот Яндекс «продает его» на 200 млн пользователей, а Google на 2 млрд. И скорее всего производительность программиста Google в 10 раз выше, чем программиста Яндекс. Хотя код по качеству и количеству они могут писать одинаковое количество.
И никак тот факт, что в Google доход в $ на программиста выше, чем в Яндексе, не означает, что Яндекс красная компания, а Google бирюзовая.
Народ, а подскажите, пожалуйста, как из попытки восстановить доступ через смс следует, что попытка взлома шла именно от правительства РФ?
Я не говорю что это не так. Но и доказательств, что это так тоже нету. Меня очень смущает последнее время политизированность статей.
Во-первых: мне жалко, если хабр начнёт страдать от этой политизированности.
Во-вторых: я не хочу, чтобы Хабр превратился в площадку для политических дискуссий. Я уже неоднократно видел, как жестко минусовали за попытку задать вопрос, за просьбу уточнить источники, за желание отметить, что есть другая точка зрения.
Если на работе хабре начнётся политика, то система кармы и рейтинг приведёт к тому, что останется одна только точка зрения.
Очень хочется надеяться, что Хабр останется площадкой, где за исследованиями стоят факты, за обвинениями доказательства, за советами опыт и т.д.
Согласен. $2000-2500 — это нормальная цена для топового ноута.
В РФ можно купить Macbook Pro 2018
15" Core i7 2.2GHz/ 16GB/ 256GB SSD c Touch Bar — за 143 000 ₽
— Это всего на $230 дороже чем, $2000
Я готов заплатить за MacOS и отличный TouchPad $230
Ну а 500 000 рублей — это просто для тех, кто не готов подождать месяц.
Уверен, что через месяц за $3000 можно будет купить топовый MacBook Pro
Это преимущество надо воспринимать не как гарантию, а как снижение вероятности.
Допустим есть вероятность в 3%, что что-то станет с продом за год. Это очень много.
Поэтому есть backup) Наличие backup позволяет нам восстановить данные. Но тоже не 100% данных, и не со 100% вероятностью. Допустим и там и там по 99%
Тогда наш урон это 3% * (1% + 1%) = 0.06%
Если мы к этом еще добавляем облако, которое теряет ваши данные раз в 1 млн случаев, то вероятность потерять данные для вас становится еще меньше.
Если мы копируем данные в другой ДЦ, от другого вендора — то мы еще раз многократно снижаем вероятность ущерба.
Скажите, пожалуйста.
Кроме USA (1-2 экономика мира) и Китая (1-2 экономика мира) какая еще страна впереди РФ? По Alexa Rating или по Similarweb?
Мне кажется, это является достижением нашего IT. Достижением в мировом масштабе. Я никогда не говорил, что мы первые в мире. Но то, что РФ занимает достойное место — это факт.
Автору спасибо за статью.
Переводчикам спасибо за перевод.
Я благодарен этой подборке за несколько ссылок. Да, я все это могу сделать вручную, но эти инструменты могут упростить мне жизнь.
Они всегда всё портят. Нужно оставить только один глагол: TO BE
Есть студенты.
Есть курсы.
Есть посещения студентом курса. (Это отдельный класс, а если речь про БД, то это будет таблица где будут например данные: id, student_id, course_id, date, time)
То есть нет никакого «Журнала посещаемости», который имеет записи. Есть просто ПОСЕЩЕНИЯ.
И тогда да, у вас у студента будут student.visits, у курса будут course.visits
И это всё прекрасно работает. Если вам хочется пересечения, то это уже отдельный объект/класс/таблица БД и т.д.
И кажется, что это не зависит от языков программирования. Так просто удобно. Если мы говорим про объекты, то надо говорить про их объекты и их свойства.
И поэтому (по-моему личному опыту) средний опыт питониста в веб-разработке ниже, чем у рубистов. И еще ниже, если речь идет о fullstack разработке. А именно о ней шла речь в статье. Ведь для того, чтобы хорошо разобраться в беке нужно время. А если потом еще добавить фронтовые webpack, postcss, linters, yarn, tree shacking, etc — то нужно еще больше времени.
И по-моему личному опыту, средний проект на Rails сделан лучше, чем средний проект на Django. Последние два проекта на Django, которые мне довелось смотреть были сделаны без git (точнее первичный git clone есть, а дальше вялые и брошенные попытки вести git c последним коммитом больше года назад), и все равно с диким хламом в репе (вроде node_modules, паролей, secrets), без тестов, без деплоя, с загрузкой кода по ssh и т.д.
Я в Rails проектах многое видел, но такого никогда не видел)
В Ruby сообществе последнее время еще модно пилить все на микросервисы, переписывать все на монады, сервис-объекты, 12factorapp и т.д. Архитектура ради архитектуры, программирование ради программирования.
Спасибо за
При повторной загрузке страницы загружает
116kB из 6.9MB
Это 1,5%
Для новой статьи (которую я еще не читал) загрузилось со всеми картинками 800kB из 6.8MB
Это 11%
Оставшиеся 89% — это кеш.
Сейчас cloudflare и браузер можешь закешировать вот такие запросы:
dr.habracdn.net/habr-web/js/chunk-vendors.c83286b7.js
Сервер Хабра отдает один раз.
Сервер CDN кеширует статику.
Браузер скачивает этот js chunk 1 раз.
Следующая версия будет скачиваться, когда выкатится новое обновление этой страницы. Ну допустим раз в день. Если я зашел и прочитал 5 статей, то я скачал один раз, а не 5.
А еще сервер хабра отдал 1 раз, CDN закешировал и отдал пользователям 1 млн раз.
А если пихать это все в архив, то пользователи скачают 3-5 млн раз этот JS chunk.
И этот объем придется отдавать серверу.
Поэтому я не очень понимаю, как вообще это все можно провернуть.
Тысячи и миллионы сайтов рассчитаны на то, чтобы кешировать статику и делают это на разных уровнях: сервер, nginx, CDN, браузер, etc.
Как отказаться от этого кеширования в вебе — я не понимаю.
Но на самом деле мне кажется, что это задачка нереальная, потому что отвалится вся система кеширования (картинок, js, css). Такой рост объема данных «интернет» просто не переварит.
Если я заблуждаюсь — поправьте меня пожалуйста.
2) Мой друг в 2016м устроился на удаленку в голландскую компанию. Менеджером по обработке заказов. Не разраб, и ЗП не космическая. Компания занимается доставкой своих приборов в РФ и им нужны тут сотрудники. Большинство из них на удаленке. Так вот компания: оплатила новый ноут, 2 монитора, стол под все это, принтер, кресло. Стол/кресло можно было выбирать самому и бюджет был на то, чтобы выбрать себе лучшее геймерское кресло. Еще раз напомню — это просто менеджер по работе с клиентами и обработке заказов. А да, еще компания оплатила билет в Нидерланды, проживание, командировочные на 2 недели обучения, сразу после трудоустройства.
Как вы думаете мой друг все еще работает в этой компании? Да)
Удаленка не означает безразличное отношение к сотруднику и его условиям труда.
P.S. был случай в моей карьере, когда я привез свое собственное кресло в офис, потому что офисные были такие дерьмовые, что уж лучше на своем.
Есть хорошая практика сравнивать производительность труда по отраслям/предприятиям.
Например: сравнить заводы «Северсталь» с другими металлургическими заводами мира, и выяснить как они отличаются. (Причем мерить не в $, а в тоннах производимой аналогичной продукции).
Или то же сельской хозяйство:
— сколько продукции собирается с гектара
— сколько нужно людей чтобы вырастить тысячу тонн условной пшеницы
Или возьмем средний хороший салон красоты в Москве и Париже.
Парикмахер в Москве постриг 8 человек за смену по 20$ (160$ вклад в ВВП),
Парикмахер в Париже подстриг 8 человек за смену по 50$ (400$ вклад в ВВП)
Их производительность труда одинаковая: 8 стрижек за смену. Но если учитывать вклад в ВВП в $, то вылезает разница в 2 раза.
Если кто-то знает, где найти статистику по производительности труда по отраслям — буду очень признателен за ссылки.
P.S. я не утверждаю, что в РФ все идеально с производительностью, много где есть места для оптимизации. И измерять как раз надо производимую продукцию, в каждой конкретной отрасли, а не вклад в ВВП в $.
P.S.S. применительно к IT:
Возьмем Яндекс vs Google. Скорее всего сложность разработки поискового движка одинакова и для Яндекса и для Google. Но вот Яндекс «продает его» на 200 млн пользователей, а Google на 2 млрд. И скорее всего производительность программиста Google в 10 раз выше, чем программиста Яндекс. Хотя код по качеству и количеству они могут писать одинаковое количество.
И никак тот факт, что в Google доход в $ на программиста выше, чем в Яндексе, не означает, что Яндекс красная компания, а Google бирюзовая.
Всегда приятно читать комментарий, в котором автор ответил, лучше чем смог бы я)
И с мыслью согласен на 100% и с подачей!
Народ, а подскажите, пожалуйста, как из попытки восстановить доступ через смс следует, что попытка взлома шла именно от правительства РФ?
Я не говорю что это не так. Но и доказательств, что это так тоже нету. Меня очень смущает последнее время политизированность статей.
Во-первых: мне жалко, если хабр начнёт страдать от этой политизированности.
Во-вторых: я не хочу, чтобы Хабр превратился в площадку для политических дискуссий. Я уже неоднократно видел, как жестко минусовали за попытку задать вопрос, за просьбу уточнить источники, за желание отметить, что есть другая точка зрения.
Если на работе хабре начнётся политика, то система кармы и рейтинг приведёт к тому, что останется одна только точка зрения.
Очень хочется надеяться, что Хабр останется площадкой, где за исследованиями стоят факты, за обвинениями доказательства, за советами опыт и т.д.
В РФ можно купить Macbook Pro 2018
15" Core i7 2.2GHz/ 16GB/ 256GB SSD c Touch Bar — за 143 000 ₽
— Это всего на $230 дороже чем, $2000
Я готов заплатить за MacOS и отличный TouchPad $230
Ну а 500 000 рублей — это просто для тех, кто не готов подождать месяц.
Уверен, что через месяц за $3000 можно будет купить топовый MacBook Pro
Допустим есть вероятность в 3%, что что-то станет с продом за год. Это очень много.
Поэтому есть backup) Наличие backup позволяет нам восстановить данные. Но тоже не 100% данных, и не со 100% вероятностью. Допустим и там и там по 99%
Тогда наш урон это 3% * (1% + 1%) = 0.06%
Если мы к этом еще добавляем облако, которое теряет ваши данные раз в 1 млн случаев, то вероятность потерять данные для вас становится еще меньше.
Если мы копируем данные в другой ДЦ, от другого вендора — то мы еще раз многократно снижаем вероятность ущерба.
Вот за это снижение вероятности мы и платим.
Кроме USA (1-2 экономика мира) и Китая (1-2 экономика мира) какая еще страна впереди РФ? По Alexa Rating или по Similarweb?
Мне кажется, это является достижением нашего IT. Достижением в мировом масштабе. Я никогда не говорил, что мы первые в мире. Но то, что РФ занимает достойное место — это факт.