TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #721 · 26.12

Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev

Hashtags

Резултати

Намерени 143 подобни публикации

Търсене: #harvard

当前筛选 #harvard清除筛选
PDF资料

@pdf_001 · Post #869 · 04.11.2020 г., 13:02

#Harvard Writing Project 提供的写作手册涵盖史学、文学、艺术史、人类学、哲学、宗教学、政治学、性别研究、经济学、心理学等。全部PDF,自由下载 https://writingproject.fas.harvard.edu/pages/disciplinary-writing-guides

Hashtags

🕵🏻‍♀️How Harvard rates your application? part 4 For part 1: https://t.me/farangizmurodiy/14 🏛 When you apply to Harvard, Harvard rates your application from 1 to 6 in four categories and gives one overall rating. Part 4: Athletic Rating 🏅🏅🏅 1️⃣Unusually strong prospect for varsity sports at Harvard, desired by Harvard coaches. 2️⃣ Strong secondary school contribution in one or more areas; possible leadership role(s). 3️⃣ Active participation. 4️⃣ Little or no interest. 5️⃣ Substantial activity outside of conventional EC participation such as family commitments or term-time work (could be included with other e/c to boost the rating or left as a "5" if it is more representative of the student's commitment). 6️⃣Physical condition prevents significant activity. Note: After watching lots of videos of Harvard students talking about their admission files, I understood that not being athlete will not damage your application, but if you're an international level athlete, it will benefit you a lot. Because the calculation of an application's overall rating is not just arithmetical, getting a low athletic rating will not disadvantage you if you are very successful in other areas. However, getting 1, being recruited athlete, will boost your application significantly. 👩🏻‍⚖️ This was the part 4 of#Harvard admission series. Finally, in the next Harvard post, I’ll be sharing strategies on how you can apply those valuable infos from all four parts to your own application. @farangizmurodiy

Hashtags

🕵🏻‍♀️How Harvard rates you? part 3 🏛 When you apply to Harvard, Harvard rates your application from 1 to 6 in four categories and gives one overall rating. Part 3: Personal Rating ❤️ 1) Outstanding 2) Very Strong 3) Generally Positive 4) Bland or somewhat negative or immature 5) Questionable personal qualities 6) Worrisome personal qualities 🤯 This is the most subjective rating in Harvard admissions. Also, this subjectiveness is the reason why Harvard is dealing with an affirmative action lawsuit. More info: https://rb.gy/tjr3zl What determines your personal rating is: 📝 Essays 👩‍🏫 Recommendation Letters Because it's very subjective, your application as a whole plays a role in this rating. Part 1: https://t.me/farangizmurodiy/14 Part 2:https://t.me/farangizmurodiy/23 👩🏻‍⚖️ This was the part 3 of 4 #Harvard admission series. In the end of the series, I’ll be sharing strategies on how you can apply this valuable info to your own application. @farangizmurodiy

Hashtags

🕵🏻‍♀️How Harvard rates you? part 2 🏛 When you apply to Harvard, Harvard rates your application from 1 to 6 in four categories and gives one overall rating. Part 2: Extracurricular Rating 🏆 1️⃣ Unusual strength in one or more areas. Possible national-level achievement or professional experience. A potential major contributor at Harvard. Truly unusual achievement. 2️⃣Strong secondary school contribution in one or more areas such as class president, newspaper editor, etc. Local or regional recognition; major accomplishment(s).[in another filing]: "Significant school, and possibly regional accomplishments: for example, an applicant who was the student body president or captain of the debate team and the leader of multiple additional clubs." 3️⃣Solid participation but without special distinction. (Upgrade 3+ to 2- in some cases if the e/c is particularly extensive and substantive.) 4️⃣ Little or no participation. 5️⃣Substantial activity outside of conventional EC participation such as family commitments or term-time work (could be included with other e/c to boost the rating or left as a "5" if it is more representative of the student's commitment). 6️⃣Special circumstances limit or prevent participation (e.g. a physical condition). 👩🏻‍⚖️ This was the part 2 of 4#Harvard admission series. In the end of the series, I’ll be sharing strategies on how you can apply this valuable info to your own application. @farangizmurodiy

Hashtags

🕵🏻‍♀️How Harvard rates you? When you apply to Harvard, Harvard rates your application from 1 to 6 in four categories and gives one overall rating. Part 1: Academic Achievement 📚 1) Summa potential: Genuine scholar; near-perfect scores and grades (in most cases) combined with unusual creativity and possible evidence of original scholarship. 2) Magna potential: Excellent student with superb grades and mid-to-high-700 scores (33+ ACT). 3) Cum laude potential: Very good student with excellent grades and mid-600 to low-700 scores (29 to 32 ACT). 4) Adequate preparation: Respectable grades and low-to-mid-600 scores (26 to 29) ACT). 5) Marginal potential: Modest grades and 500 scores (25 and below ACT). 6) Achievement or motivation marginal or worse. 👩🏻‍⚖️ This was the part 1 of 4 #Harvard admission series. In the end of the series, I’ll be sharing strategies on how you can apply this valuable info to your own application. 🏆 Follow for more unique admission strategies: @farangizmurodiy

Hashtags

123•••101112
ПредишнаСтр. 1 от 12Следваща