20 июля 1969 года, в 20:17:39 по Гринвичу, лунный модуль миссии «Аполлон-11» совершил первую в истории человечества пилотируемую посадку на другое небесное тело. Событие огромной значимости, как в плане науки, так и в плане идеологическом, стало возможным благодаря самоотверженной работе сотен людей — техников, контролёров, специалистов по связи. И, конечно, программистов. Знаете поговорку: «За каждым великим мужчиной стоит женщина»? Так вот, в случае Нила Армстронга, Базза Олдрина и Майкла Коллинза, это на 100% правда, хотя и женщина была одна на троих. И имя ей — Маргарет Гамильтон, госпожа программного кода НАСА.Читать полностью »
Рубрика «software engineering»
Fly me to the moon. Маргарет Гамильтон
2023-02-11 в 8:01, admin, рубрики: NASCAR, sage, software engineering, timeweb_статьи_выходного_дня, Аполлон-11, Блог компании Timeweb Cloud, космонавтика, Маргарет Гамильтон, математика, наса, Научно-популярное, Программирование, Программное обеспечение, СШАИнженерия данных != инженерия ПО
2022-11-27 в 10:00, admin, рубрики: data engineering, data mining, devops, ruvds_перевод, software engineering, Блог компании RUVDS.com, инженерия данных, разработка по, управление разработкойВ последние годы мы видим, как инженерия данных всё больше сливается с индустрией DevOps. В обоих этих направлениях для доставки надёжных цифровых продуктов клиентам используется облачная инфраструктура, контейнеризация, CI/CD и GitOps. Это схождение в плане использования одного набора инструментов заставило многих думать, что инженерия данных не имеет значительных отличий от инженерии программного обеспечения. Как следствие, первая оказывается «несовершенной», поскольку дата-инженеры отстают с внедрением эффективных практик разработки ПО.
Но такая оценка ошибочна. Несмотря на то что в обработке данных и разработке ПО используется много общих инструментов и практик, между ними есть ряд существенных отличий. Игнорирование этих отличий и управление командой дата-инженеров по аналогии с командой разработки ПО является ошибкой. Так что цель данной статьи – подчеркнуть некоторые уникальные проблемы в инженерии данных и пояснить, почему в этой области иногда требуется особый подход.Читать полностью »
Магистерская программа JetBrains на базе Университете ИТМО: интервью со студентами
2020-02-22 в 13:35, admin, рубрики: computer science, jetbrains, software engineering, Блог компании Образовательные проекты JetBrains, магистратура, образование, Университет ИТМО
Совсем скоро выпускникам бакалавриата предстоит сделать выбор – остановиться на достигнутом или продолжить обучение. Для тех, кто выберет второй вариант, мы хотим напомнить о нашей магистерской программе «Разработка программного обеспечения / Software Engineering» на базе Университета ИТМО.
Ранее мы рассказывали о том, как у нас устроена учеба. А в этот раз мы задали несколько вопросов нашим студентам первого года обучения: попросили рассказать немного о себе, поделиться впечатлениями о поступлении и их первом семестре на программе. Знакомьтесь!
Читать полностью »
Agile и потребности мозга: управление стрессом
2019-10-23 в 9:02, admin, рубрики: agile, project management, software engineering, Блог компании Dell EMC, Программирование, Софт, управление проектамиВам приходилось испытывать сильные эмоции на работе? Как насчёт страха, внезапно захлестнувшего ваш мозг? Легко потом работать эффективно? Если ваша организация уже внедрила agile, но с вами такое всё еще случается – что-то идёт не так.
Меня зовут Артем Зарафьянц, и я руковожу одним из отделов разработки СХД Dell Technologies в Санкт-Петербурге. Работаю 12 лет, с открытия нашего офиса. В 2007 году, начиная работу над VNXe, мы стали использовать agile на уровне команды – тогда не сложилось. Наш процесс столкнулся с ватерфоллом на глобальном уровне и постепенно угас. VNXe мы выпускали без agile: конечно же, успешно (как и всё масштабное в нашей корпорации), однако медленно, дорого и на стрессе. Примерно 6 лет назад наша инженерная организация (несколько тысяч сотрудников) начала систематическое внедрение agile at scale сверху. В то время я уже был менеджером и получил второе (из трёх) высшее образование – по психологии. Это помогло мне осознанно пройти через опыт внедрения agile, и я готов им поделиться.
Как придумывать содержательные имена для вашего кода
2019-07-12 в 13:02, admin, рубрики: php, software development, software engineering, technology, Блог компании Plarium, код, Программирование, программирование для начинающих, программирование как искусство, разработка программного обеспечения, Совершенный кодПеред вами перевод статьи из блога Better Programming на сайте Medium. В ней программист Daan делится простыми правилами, следуя которым вы сможете давать хорошие имена функциям и переменным.
Будучи разработчиком, вы наверняка тратите много времени на создание переменных и придумывание их имен. Имена повсюду: они нужны для файлов, классов, методов и тех самых переменных.
Так как мы проводим столько времени присваивая имена, очень важно делать это качественно. В данной статье я расскажу вам о нескольких простых правилах, следуя которым вы сможете создавать хорошие имена. Ведь это целое искусство!
Читать полностью »
Первый выпуск корпоративной магистерской программы JetBrains и Университета ИТМО
2019-06-18 в 17:19, admin, рубрики: software engineering, Блог компании Computer Science Center, выпускники, магистратураВ этом году состоится первый выпуск студентов корпоративной магистерской программы JetBrains и Университета ИТМОЧитать полностью »
Набор в бакалавриат СПбГУ при поддержке Яндекса и JetBrains
2019-06-17 в 13:03, admin, рубрики: jetbrains, software engineering, анализ данных, Блог компании Computer Science Center, информатика, математика, машинное обучение, образование, Программирование, Промышленное программирование, Учебный процесс в IT, яндексВ сентябре 2019 года СПбГУ открывает факультет математики и компьютерных наук. Набор в бакалавриат начинается уже в конце июня на три направления: «Математика», «Математика, алгоритмы и анализ данных» и «Современное программирование». Программы созданы коллективом Лаборатории им. П.Л. Чебышёва вместе с ПОМИ РАН, Computer Science центром, компаниями Газпромнефть, JetBrains и Яндекс.
Курсы читают известные преподаватели, опытные и увлечённые сотрудники IT-компаний. Среди преподавателей — Николай Вавилов, Эдуард Гирш, Сергей Иванов, Сергей Кисляков, Александр Охотин, Александр Куликов, Илья Кацев, Дмитрий Ицыксон, Александр Храбров. А также Александр Авдюшенко из Яндекса, Михаил Сенин и Святослав Щербина из JetBrains и другие.
Занятия проходят на Васильевском острове в центре Петербурга.
Читать полностью »
Merkle Tree: ржавое и быстрое
2019-06-14 в 6:19, admin, рубрики: blockchain, data structures, merkle tree, performance optimization, Rust, software engineering, Алгоритмы, высокая производительность, Программирование
Всем привет! Недавно открыл для себя язык Rust. О своих первых впечатлениях поделился в предыдущей статье. Теперь решил копнуть немного глубже, для этого необходимо что-то посерьёзнее списка. Выбор мой пал на дерево Меркла. В этой статье я хочу:
- рассказать про эту структуру данных
- посмотреть на то, что уже есть в Rust
- предложить свою реализацию
- сравнить производительность
Implementing UI in iOS: Better, faster, and it scales
2019-02-19 в 15:28, admin, рубрики: design, iOS, ios development, software engineering, swift, UI, Блог компании Badoo, дизайн мобильных приложений, разработка мобильных приложений, разработка под iOS
A few months ago I came across a very interesting documentary series on Netflix called Abstract, they basically explore the output of professional designers from different sectors like architecture, graphic design, fashion, … in their workplaces.
It was easy to spot some similarities in the work of designers from other fields with that of an iOS developer who implements user interfaces. For example, when a designer is creating something that is big enough to be broken down into smaller parts, using a strategy like ‘Divide and Conquer’ is key to being able to focus on smaller parts that will be assembled at later stages in the process.
Breaking down a whole design into smaller subunits allows us to think about each problem in isolation, removing any dependencies between the components. But the full picture also needs to be present throughout the whole process, otherwise there can be problems when the time comes to fit everything back together.
On the other hand, while watching Abstract I noticed that in the design process for objects like a shoes, banners or buildings the final design remains fixed for the lifetime of the product. The design of a Nike shoe isn’t going to change after it is released and there aren’t going to be any updates once it’s on the shelf in the shop. Sometimes a design remains unchanged even 20 years later, and the product is still sound.
Читать полностью »