Search
Write a publication
Pull to refresh
2
0
Сергей Викторыч @SpyDeX

ПО (разработка, разработка и ещё раз разработка)

Send message

«Ни для кого не годится»: передовой португальский закон об удаленной работе подвергается критике

Reading time4 min
Views8.2K

Деловой квартал Лиссабона

Принятый месяц назад закон Португалии о работе из дома был призван сделать страну раем для удаленных сотрудников. Привлечь экспатов и, соответственно, компании, которые в них нуждаются. И закон звучит прекрасно: компаниям теперь запрещается тревожить своих сотрудников в нерабочее время. Они должны помогать оплачивать счета за газ, электричество и интернет. Начальникам также запрещено использовать ПО для отслеживания того, чем занимаются их удаленные работники.


Есть только одна проблема: закон может сделать ситуацию с удаленкой хуже для всех. Критики говорят, что он слишком сырой, новые правила недоработаны, а зачастую неосуществимы. И они могут иметь очень неприятные последствия, заставляя компании вообще отказаться от работы из дома.

Читать дальше →

Метаклассы в Python

Reading time14 min
Views38K

Привет, Хабр! У нас продолжается распродажа в честь черной пятницы. Там вы найдете много занимательных книг.

Возможен вопрос: а что такое метакласс? Если коротко, метакласс относится к  классу точно как класс к объекту.

Метаклассы – не самый популярный аспект языка Python; не сказать, что о них воспоминают в каждой беседе. Тем не менее, они используется в весьма многих статусных проектах: в частности, Django ORM[2], стандартная библиотека абстрактных базовых классов (ABC)[3] и реализации Protocol Buffers [4].

Это сложная фича, позволяющая программисту приспособить под задачу некоторые самые базовые механизмы языка. Именно по причине такой гибкости открываются и возможности для злоупотреблений – но нас это уже не удивляет. С большими возможностями приходит большая ответственность.

Читать далее

Молодым везде у нас дорога, везде ли старикам почет?

Reading time7 min
Views14K

Привет Хабр!

В этой статье я хочу поделится своими соображениями по поводу перспектив роста и развития «пожилых» (в возрасте более 40 лет) разработчиков. Статья будет полна субъективизма и антитолерантности, так что всем желающих похоливарить – добро пожаловать в комментарии.

Читать далее

Мифический человеко-месяц 45 лет спустя

Reading time9 min
Views24K
Впервые о книге Фредерика Брукса я услышал лет десять назад, ещё учась в универе. Её настоятельно советовал почитать наш научный руководитель. Как часто бывает в таких случаях, когда кто-то вам советует что-то почитать, то вы вежливо говорите нечто вроде «да-да, в скором времени, непременно этим займусь», заносите очередной пункт в свой grow list (в лучшем случае) и благополучно об этом забываете.



Через пару лет я вернулся к этой книге и наконец с ней ознакомился. К тому моменту у меня уже было несколько лет работы в IT-индустрии. И когда я начал читать, то удивился, насколько книга, написанная в 1975, да ещё и в сфере разработки ПО, по-прежнему актуальна!

В этом году наконец вышло очередное переиздание, поэтому я решил приобрести её в бумажном варианте и перечитать ещё раз. И вместе с вами обсудить некоторые цитаты, которые актуальны до сих пор.
Читать дальше →

Делу время, потехе час! Тезисы «мифического человеко-месяца» Фредерика Брукса, в пословицах и поговорках

Reading time27 min
Views14K

Время — судья


Книга “мифический человеко-месяц”, заслуживает того, чтобы её читали и перечитывали, издавали и переиздавали. В 2025 году, а он не за горами, будет 50 лет первому изданию. Т.е. проверка временем пройдена. В 1995 году вышло юбилейное издание (ждём юбилейного издания 2К25), в предисловии к которому, автор, помимо прочего, сообщает:
Работая над обзором и обновлением книги «Мифический человеко-месяц», я поразился, как мало тезисы, заявленные в ней, были подвергнуты критике, доказаны или опровергнуты текущими исследованиями и опытом в инженерии ПО. Теперь для меня оказалось полезным каталогизировать эти тезисы в сырой форме, лишённой подтверждающих аргументов и данных. В надежде, что эти голые утверждения привлекут аргументы и факты для доказательства, опровержения, обновления или уточнения, я включил этот план в главу 18.

Кто празднику рад, тот накануне пьян


И я подумал, а почему бы и мне не составить свой список тезисов этой книги, в рамках подготовки к пятидесятилетнему юбилею. Но в форме не просто набора тезисов, а в форме пословиц, поговорок и т.д.

В споре рождается истина


А цель всё та же что у Брукса, ещё раз обратить внимание, и привлечь новые аргументы, доказательства, опровержения или уточнения.

А заодно расслабиться, и повеселиться. Не воспринимайте написанное слишком буквально — без смешного нельзя понять серьёзное.
Читать от доски до доски...

20 вещей, которые я узнал за 20 лет работы инженером-программистом

Reading time8 min
Views100K

Наткнулся на любопытный материал, в котором автор систематизировал и записал свой опыт инженера-программиста в 20 тезисов. Я работаю в коммерческой разработке ПО больше 25 лет, и этот текст отозвался во мне практически каждой буквой — большинство советов я тоже регулярно практикую, не облекая их в формат ёмких афоризмов. В общем, решил сделать перевод.

Особенно отзываются пункты «стройте компактные системы» и «лучший код — это отсутствие кода». Последний совет я превращаю в цитату из какого-то второсортного фильма про самураев: «Лучшая победа — та, которую ты одержал, не доставая меч из ножен» (думаю, сослуживцы за моей спиной уже закатывают глаза). И, конечно, бесконечные разговоры про легендарных 10x-программистов постоянно хочется прервать советом не связываться с 0,1x-программистами (которые реально существуют, в отличие от 10x).

Читать далее

Паразит, дарующий своим  хозяевам «вечную молодость» и многократно удлиняющий срок их жизни

Reading time3 min
Views162K

... и это еще не все: бонусом идет сытое и беззаботное существование.

Автор: Лысый Камрад (@LKamrad)

—  Да какой же это паразит? —  воскликнет  читатель, —   Ведь он осуществляет заветную мечту чуть не  каждого жителя планеты —  не стареть, жить долго  и в достатке, не прилагая никаких усилий для этого.   Кто бы в здравом уме от такого "паразита"  отказался? 

Вот только "вечно юные" бездельники, живущие в три-четыре-пять раз дольше других, сами становятся паразитами в обществе им подобных существ, вкалывающих "в поте лица своего".

Речь идет о ...

Читать далее

Расчетный листок, полученный римским солдатом X легиона. 2000 лет пролетело — ничего не изменилось…

Reading time3 min
Views66K

Листок папируса, найденный близ крепости Масады в Израиле, представляет собой расписку о получении жалования (и вычетах из него) одного из солдат римской армии.

Автор: Лысый Камрад (@LKamrad)

На самом деле армия Римской империи  –  это не только  стройные ряды когорт, блеск  доспехов, топот солдатских калиг,  звуки труб, взметнувшиеся штандарты и  орлы легионов  над ними,  как в исторических блокбастерах  Голливуда, но так же  контроль и учет всех расходов,  тщательно просчитанная логистика снабжения и, как следствие,  куча бюрократических проволочек, бумаг и документов.

Перед нами  один из таких замечательных  документов  –  квиток о получении зарплаты  солдатом Гаем Мессием  с  подробно расписанными вычетами из нее. 

Давайте познакомимся с нашим "расчетным листком"  поближе.

Читать далее

Эксперимент Базермана: как мы ежедневно теряем деньги

Reading time5 min
Views225K

Вы ещё не слышали, как профессор Гарвардской школы бизнеса «наживается» на своих студентах? Тогда вам, наверное, будет интересно узнать о том, как продать 20 долларов за гораздо большую сумму. Скажем, долларов за 200.

Профессор Макс Базерман придумал эксперимент, который демонстрирует необъяснимое иррациональное поведение будущих профессиональных бизнесменов и менеджеров в их родной стихии — управлении проектами. Кстати, в эту же ловушку попадают и топ-менеджеры крупных компаний, с которыми профессор проводит свои семинары.

Читать далее
Привет, Хабр. Меня зовут Антон Иванов, я СТО «Лаборатории Касперского». Сейчас информационная безопасность — обширная область с очень размытым краем. Не всегда можно понять, где кончается обычная разработка и начинается ИБ-разработка. Под катом я расскажу, почему пытаться провести эту грань вообще контрпродуктивно. А также — почему мы занимаемся машинным зрением для беспилотников и что изобрёл автор квиксорта (помимо квиксорта).
Читать далее

Пытаясь сохранить сотрудников, компании начинают проводить «удерживающие» собеседования

Reading time4 min
Views66K

Все больше компаний на фоне «Великого увольнения» используют тет-а-теты со своими ключевым специалистами, чтобы получить обратную связь и удержать их в штате. Как это происходит.

Читать далее

Как Илон Маск уволил своего ассистента после просьбы о прибавке

Reading time4 min
Views118K
Я глубоко уважаю Илона Маска, даже несмотря на то, что его критикуют и называют «маркетологом, выехавшим на наработках NASA». Пусть даже такая критика оправдана — человечеству не хватает здорового драйва и стремления к чему-то далёкому. Все-таки это первый человек в истории, который одновременно пытается колонизировать Солнечную систему, сделать электромобили мейнстримом и расширить потенциал мозга (и много что ещё). Но за эти дальновидные цели приходится платить тем, кто находится рядом с ним.

Многочисленные истории от сотрудников и партнёров показывают, что Маск может любой ценой расставить приоритеты в своей работе — даже в ущерб своим профессиональным и личным отношениям. Как раз об одном таком поучительном случае и читайте под катом.


Приятного чтения!

В софте все всрато и становится еще всратее

Reading time5 min
Views181K

Приветствую хабравчане!

Глава 1 - Нытье про то, что раньше было лучше

Десяток лет читаю Хабр, в основном разработка, программирование, старое железо и посты с адовым рейтингом. Видел несколько постов об ожирении сайтов, софта. О разочаровании в программировании с 2000+ постов. И пост, что в софте все ок, но никто не доволен или как оно там. А не важно. Хочу поделиться своими мыслями и наблюдениями на этот счет.

Ниже размещена картинка с ПК которые у меня были, не все, парочку ноутов я просто не помню. Эволюция их производительности, специально выделил производительность на одно ядро.

Читать далее

Хабр для взрослых: готовим статью к бою

Reading time17 min
Views18K

Нас было трое: я, @Boomburum и @denis-19 У нас было 3 микрофона, 2 часа времени, отличная платформа для трансляции, много идей для разговора, чат с вопросами пользователей, 1400 зрителей в пике. Не то чтобы это был самый первый опыт, но если начинаешь рассказывать про Хабр, становится трудно остановиться. Единственное, что вызывало у меня опасение — это эфир. Ничто в мире не бывает более беспомощным, безответственным и порочным, чем эфирная лажа, когда виснет звук и падает картинка. Я знала, что рано или поздно мы столкнёмся и с этой дрянью, но это случилось на третьем вебинаре. 

А пока — не расшифровка первого, а полноценный лонгрид на его основе. 

Читать далее

Как SEO-оптимизация и алгоритмы Google уничтожили настоящий интернет

Reading time5 min
Views58K
Примечание от переводчика: этот текст — перевод-компиляция двух небольших англоязычных заметок, которые автор почему-то разделил на два разных текста. Я уверен, что логически они связаны и представляют некоторую ретроспективную ценность. В первую очередь тем, что оспаривают устоявшееся мнение о том, что раньше интернет был похож на бурлящий котел, первичный бульон, а сейчас он — стройный, понятный и с каждым годом становится все лучше. Конечно, местами автор перегибает палку, но во многом с ним сложно не согласиться. Текст достаточно эмоционален, что я, конечно же, попытался максимально передать и адаптировать в ходе перевода. Приятного чтения.



Как SEO-оптимизация уничтожила интернет


В промежутке между 1998 и 2003 годом поиск в Google был просто волшебным. Я помню, как вводил какую-то смутную комбинацию, типа «oil mother's milk» и в итоге попал на страницу Wired с интервью Томаса Голда, астрофизика, который рассказывал о том, что залежи углеводородов (oil) пополняются за счет давления внутри геологических пластов.

Если вы сегодня ищете что-то техническое, конкретное, академическое или вообще — некоммерческое, то удачи вам. Лучшая в мире информационно-поисковая система превратилась в нечто, напоминающее Digg эры 2006 года: индексы популярности контролируются небольшим количеством финансово мотивированных игроков. Они называют себя «оптимизаторами».
Читать дальше →

VCL, избавляемся от мерцания, раз и навсегда

Reading time34 min
Views46K

Delphi и C++Builder разработчики, использующие VCL не по наслышке знают о вездесущей проблеме мерцания контролов. Мерцание происходит при перерисовке, вследствие того, что сначала отрисовывается фон компонента, и только потом сам компонент.


И если в случае с наследниками от TWinControl частичным решением проблемы является установка свойства DoubleBuffered в True, что заставляет контрол отрисовываться в буфере (однако DoubleBuffered работает тоже не идеально, к прим.: контрол перестает быть прозрачным), то в случае с TGraphicControl решение с DoubleBuffered просто невозможно, из-за отсутствия у TGraphicControl окна, установка же DoubleBuffered в True у родителя не помогает, из-за того что отрисовка вложенных TGraphicControl-ов происходит уже после прорисовки родителя в буфере.


Обычно остается только одно — смириться с мерцанием, и максимально упростить отрисовку для минимизации эффекта, или использовать по возможности исключительно TWinControl-ы, что не всегда возможно и удобно.


Однажды намучившись с мерцанием, я не выдержал и решил решить эту проблему, раз и навсегда!


Как мне удалось решить проблему?

Читать дальше →

Делаем «взрослое» приложение под Android с помощью «детской» среды программирования Scratch

Reading time2 min
Views46K
UPD. Для Scratch версии 3.0 и старше используйте https://forkphorus.github.io/ или https://turbowarp.org/

Пришла мне идея сделать для не компьютерной настольной игры «Битва Големов» приложение для Android смартфона. Иногда и такое в голову приходит. Захотелось сделать программу, которая бы заменяла для бесплатной Print&Play версии игры 20 карт Удачи и счетчик раундов, генерируя для двух игроков текущую Бонус карту (или ее отсутствие) и показывая номер раунда. Это экономило бы для тех, кто печатает игру, два листа А4 формата.



Но на чем делать? Хотелось чего то быстрого и не затратного в изучении. Из простых решений приходил только AppInventor, который я уже использовал для создания управления робота из металлического конструктора. Но потом решил — почему бы не попробовать что-то другое?

Поиск показал, что оказывается можно создавать приложения (увы не standalone, но сейчас с интернетом проблем почти нету) на… Scratch. Да, именно в этой «детской» среде программирования, которую я хорошо знал, разрабатывая до этого для нее роботов и методику.

Поэтому я решил сделать приложение для смартфона на… Scratch.
Читать дальше →

Битва Големов. Как разработать настольную образовательную игру и чего это стоит…

Reading time7 min
Views10K
Вы крутой геймдизайнер любитель настолок? Вы придумали крутую игру и уверены, что в нее будут играть миллионы играть хотя бы 200-300 человек? Тогда это повествование для вас. А также для всех остальных, кому интересно как идет разработка настольных игр на реальном примере и почему не стоит браться за этот процесс без нужной подготовки.



Немного вводной информации — чтобы издать настольную игру вам нужно продаться в рабство или продать идею издателю и получать роялити с тиража или единовременно или выступить издателем самостоятельно, вложив свои личные средства и собрав средства на крауд-кампании на площадках типа Бумстартера или planeta.ru. Далее в тексте будет много картинок, историй и поучительных моментов. «Мы» по тексту — это наша семейная команда — я, жена и сын. Все вместе — проект ПРОСТОРОБОТ.
Читать дальше →

Совмещаем «детский» микроконтроллер и настольные игры

Reading time3 min
Views10K
Подарили мне недавно Micro:Bit. Который для обучения школьников, от BBC и сейчас имеет возрастающую популярность (особенно после того, как китайцы пообещали вот-вот сделать его клон дешевле раза в два). Я сам знаком с Arduino, был одним из пионеров, который у нас в стране показал, как скрестить Arduino со средой Scratch и эта платка… меня на первых порах не заинтересовала. Но чуть позже родилась идея: а не скрестить ли ее с настольными играми?

Я сам автор «настолок», их фанат. И наличие достаточно дружелюбной среды программирования (изначально плата программируется на Python и Java, но есть блочная среда с симулятором) заставило попробовать реализовать эту идею.

Сразу предупрежу — я не программист! И это хорошо, так как мои изыскания сможет повторить даже школьник младших классов и любой из вас. И сделать себе «кастомное» устройство, помогающее и упрощающее жизнь с настольными играми.


Битва Големов из карт. Как мы превращали игру в Карточную лигу Пароботов

Reading time3 min
Views2.2K
Продолжение данной истории. Сейчас речь пойдет не о концепции, а том, как мы из вот этого



т.е. классической версии в которой само игровое поле, элементы на нем, жетоны повреждений были представлены «вырубкой» из картона и было «дорого и богато» делали карточный «движок» и наполнение и уменьшали число «не карточных» компонентов до минимума. В терминологии компьютерных игр это «левел-дизайн» и «дизайн персонажей». Но у нас же и ИТ-игра про программирование роботов.

Итак по порядку. Если ранее я уже рассказывал про карты команд на языке Scratch, то сейчас речь пойдет о замене других компонентов.
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity