![smartmockupsktarkghn | Embarcadero RAD Studio Delphi C++Builder Blogs smartmockups ktarkghn](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2021/09/smartmockups_ktarkghn-9222855.jpg?resize=1140%2C694&ssl=1)
Привет. Эта статья является частью серии, в которой мы говорим с профессиональными разработчиками программного обеспечения, спрашиваем их, каково это зарабатывать на жизнь написанием кода, и, возможно, по ходу дела получаем некоторое представление об индустрии разработки программного обеспечения.
Сегодня мы отправляемся в просто великолепную страну Данию, чтобы поговорить с MVP Embarcadero Гленном Дуфке. Часто можно обнаружить, что Гленн бесстрашно бросает вызов предрассудкам людей относительно Delphi, разъясняя преимущества языка и то, как он может решить проблемы каждого. Если бы я сам еще не был чемпионом Delphi, думаю, Гленн мог бы в одиночку передумать и заставить меня кодировать с его помощью! Вы столкнетесь с Гленном на различных онлайн-мероприятиях, таких как TCoffeeAndCode, а также на форумах по информационной безопасности и во многих других местах.
Table of Contents
Гленн, спасибо за участие в интервью 😊
Спасибо, что пригласили меня — я был перегружен работой, извините, это заняло время!
Какими были бы ваши краткие вечерние новости о том, кто вы и чем занимаетесь?
Я управляю собственной консалтинговой компанией GlennKonnekt, где предоставляю услуги в области разработки программного обеспечения, проектирования электроники для встроенных решений и промышленной автоматизации.
Какие продукты Embarcadero вы используете а) чаще всего б) регулярно?
Delphi — это то, что я чаще всего использую в течение дня для вещей, над которыми я работаю.
Как и / или почему вы стали разработчиком?
Помимо написания программного обеспечения, я также занимаюсь проектированием электроники для встраиваемых систем и систем промышленной автоматизации. Я хотел знать, как заставить вещи «работать», тоже имея возможность писать программное обеспечение.
Задачи — это весело, и есть о чем подумать, плюс знание аппаратной и программной части упрощает учет деталей, которые в конечном итоге имеют решающее значение.
![61920519102191235312598803377861108218986496n | Embarcadero RAD Studio Delphi C++Builder Blogs 61920519 10219123531259880 3377861108218986496 n](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2021/09/61920519_10219123531259880_3377861108218986496_n-5450774.jpg?resize=750%2C422&ssl=1)
Вы думаете, что когда-нибудь перестанете быть разработчиком? Если да, то что будет дальше?
Нет, не знаю. это постоянно меняющаяся область, и постоянно происходит многое. Однако, если бы я переключился на что-то другое, это, вероятно, открыло бы небольшой бургерный ресторан, где подают лучшие домашние гамбургеры, которые вы можете получить.
Что заставило вас начать использовать Delphi / C ++ Builder?
Какое-то совпадение. Когда я сначала немного занялся программированием, прежде чем я имел гораздо более четкое представление о том, что это такое, случилось с Commodore 64 с BASIC (на самом деле Microsoft BASIC 2.0, лицензированный Commodore), когда мне было около 7 лет. Примерно в 9 я попробовал HiSoft Pascal на Amiga 500, доставшейся мне от моего дедушки. Тем не менее, я не продвинулся полностью, так как у меня не было руководств или чего-то еще, что могло бы меня направить.
Когда я стал немного старше, мне было около 11 лет, я был так заинтригован тем, что заставляет ПК работать и как программное обеспечение попало в машину, чтобы заставить его работать. К счастью, один из друзей моего брата только что закончил программу по информатике, где их обучали Delphi (около 2001 г.), и он подарил мне пробную версию Delphi 6, вскоре после того, как мне подарили копию Delphi 7 Enterprise. Поскольку в то время у нас не было Интернета дома (56k было обычным явлением, ISDN для тех, кто мог себе позволить, а ADSL только появлялся на рынке, но был дорогим), я застрял с файлом справки, который меня научил больше всего. Мне также удалось найти пару книг, в том числе «Освоение Delphi 7» Марко Канту .
Между тем я также смотрел на C / C ++, потому что мне сказали: «Это то, что используют настоящие программисты», но это не вычислялось в моем мозгу. Сегодня для меня нетрудно использовать другие языки, но Object Pascal — самый чистый, самый выразительный из всех, и я использую его по умолчанию, когда могу. К счастью, C ++ Builder действительно упрощает написание или использование библиотек C ++ по сравнению с другими средами и платформами.
Если бы вы могли дать какой-нибудь совет студенту, который подумывает о карьере разработчика программного обеспечения, что бы это было?
Получите копию последней версии Delphi и одну из последних книг о Delphi . Delphi — бесценный инструмент, который учит хорошим навыкам программирования.
Табуляция… или пробелы?
Если мы говорим об укрощении змей , то это табы. Для Object Pascal я тоже использую вкладки, но это больше для форматирования и согласованности, поскольку компилятору все равно. Тем не менее, я забочусь о том, как мой код выглядит и преподносится. Для меня код — это искусство само по себе и в некоторой степени отражает образ мышления разработчика.
Какой самый лучший день у вас как у разработчика?
Когда вы видите, что код, над которым вы работали в течение нескольких месяцев, прекрасно складывается и работает, как задумано. Конечно, это не без ошибок, но они достаточно быстрые, чтобы их исправить.
Что самое плохое в работе разработчика?
Когда что-то не работает или возникают неудачи из-за отсутствия информации о данной задаче.
Какой самый крутой совет по разработке вы знаете?
Используйте виртуальные машины для всего и не загромождайте свой мозг новейшими библиотеками [кода], языками и техническими стеками. Придерживайтесь нескольких, таких как Delphi, и станьте в этом в совершенстве — учите и делитесь знаниями, вот где вы начинаете расти. Имейте хорошее решение для резервного копирования NAS, которое может делать автоматические снимки, например TrueNAS с файловой системой ZFS.
Работа из дома, работа из офиса, работа в открытом / общем пространстве? Что ты предпочитаешь и почему? Вы можете выбирать?
У меня есть свой небольшой кабинет. Я предпочитаю этот стиль, но бывают случаи, когда мне также нравится работать в общем офисе с небольшой командой.
![Office | Embarcadero RAD Studio Delphi C++Builder Blogs office](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2021/09/Office-8023309.jpg?resize=750%2C563&ssl=1)
Расскажите нам что-нибудь интересное, что, по вашему мнению, мы могли не знать.
Я большой любитель кошек, и мой офисный инспектор Цезарь часто подходит, чтобы пообниматься. Он спасение из местного приюта. Я провел много ночей, будучи подростком, занимаясь реверс-инжинирингом [на языке ассемблера] своих скомпилированных приложений, которые я писал, чтобы лучше понять, что происходит. Это также то, что меня заинтересовало, как работают компиляторы, и в настоящее время я работаю над своим собственным исследовательским компилятором.
Если бы вы могли взмахнуть волшебной палочкой «исправить технологическую индустрию», что бы вы изменили?
Убедиться, что ElectronJS и все, что касается JavaScript, nodejs и Rust, было лишь сноской в истории. Как бы вопиюще это ни звучало, эти технологии вносят свой вклад в проблемы безопасности и накапливаются на свалке технологий с угрожающей скоростью, вместо того, чтобы повышать качество программного обеспечения, оно снижается.
Вы были в Кремниевой долине? Если да, то как это было? Если нет, то хотели ли вы когда-нибудь?
К сожалению, нет. Ближе всего к Силиконовой долине я был в аэропорту Сан-Франциско. Конечно, было бы интересно побывать хоть раз, но я не в таком восторге от Кремниевой долины, как когда-то. Я считаю, что в США есть и другие области, которые намного интереснее с технической точки зрения.
Вы когда-нибудь встречали известных / хорошо известных технических деятелей? Кто это был? Как прошло?
Я встречал различных фигур из сообщества Delphi / C ++ Builder, предпринимателей с множеством выходов и миллионами за плечами. В конце концов, они люди, и я подхожу к ним с добротой и уважением. Из людей, с которыми я хотел бы встретиться, это, конечно же, Илон Маск и, как датчанин, однажды познакомлюсь с Андерсом Хейлсбергом.
Если бы вы могли убедить кого-то рассмотреть Delphi или C ++ Builder, каким был бы ваш метод, как бы вы это сделали?
Вы хотите написать хороший код, который легко читать, и при этом иметь возможность повторно использовать код на разных платформах? Тогда Delphi — это [инструмент] goto.
Какой технический продукт вы хотите изобрести / спроектировать и почему?
JavaScript — но я бы, вероятно, назвал его как-нибудь иначе, и если бы я его спроектировал, мир разработчиков не пострадал бы так, как они сейчас. В настоящее время это один из наиболее часто используемых (и злоупотребляемых) языков сценариев для разработки расширенного материала в браузере, и некоторые думают, что он подходит для настольных и мобильных устройств в виде «собственных» приложений — что, на мой взгляд, совершенно неверно.
Плохой языковой дизайн вообще не существовал бы, если бы синтаксис был основан на подмножестве Object Pascal и значительно упростил бы написание приложений для браузера.
Интернет и браузеры не могут развиваться намного дальше, пока мы не избавимся от JavaScript, столь резкого и противоречивого, как это кажется на первый взгляд. Google несколько раз пробовал использовать язык Dart, но он также страдает от неправильного выбора дизайна и утомительного синтаксиса (почему они не понимают, что языки фигурных скобок и чувствительность к регистру — это плохо?). TypeScript — это временное исправление для чего-то, что уже сломано, то же самое касается WebAssembly, хотя мы, по крайней мере, можем написать компилятор wasm и использовать Object Pascal в качестве предпочтительного языка, чтобы писать лучший код и при этом запускать его в браузере. Тем не менее, WebAssembly еще относительно молод.
![91544540102216059576880486415938497428848640n | Embarcadero RAD Studio Delphi C++Builder Blogs 91544540 10221605957688048 6415938497428848640 n](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2021/09/91544540_10221605957688048_6415938497428848640_n-1511726.jpg?resize=450%2C350&ssl=1)
Если бы вы могли снова прожить свою жизнь, вы бы все равно стали разработчиком? Почему?
На этот вопрос всегда сложно ответить, так как он всегда будет отражать настоящее. Я бы, наверное, да. У меня в голове слишком много идей.
Сколько кофе вы пьете в день и достаточно ли этого?
Слишком много. Нередко я выпиваю хотя бы банку, может, две. Я ценитель кофе, ценю чашку хорошего кофе, и это мое топливо превращается в код.
Вы ночной ястреб, который кодирует до позднего вечера, утренний человек, который встает рано и прямо в рабочее время, или вы придерживаетесь какого-то обычного рабочего времени?
По большей части я предпочитаю работать вечером и ночью. Там тишина и покой, и я могу думать о хороших решениях. Я стараюсь придерживаться регулярного графика в течение дня.
За свою карьеру вы когда-нибудь «тянули ночь напролет», чтобы иметь дело с чем-то, что абсолютно необходимо сделать?
Пару раз. Иногда необходимо внести критические по времени исправления или нужно урезать поток идей. Однако я стараюсь избегать ночных ночей.
Какой самый глупый вопрос вам задают (ни один из них не в счет!)
Вы знаете X или Y — и этот человек ранее просматривал мое резюме, где оно было указано.
Расценки на работу с клиентами? Если вы это сделаете, не раскрывая ничего, что могло бы вызвать у вас дискомфорт, какой процесс вы используете?
Я предпочитаю работать по часам. Иногда клиенты спрашивают расценки, но в этом случае я стараюсь максимально подробно описать объем моей работы.
Как остановить клиентов / менеджеров программ / менеджеров от «расползания функций»?
Я скажу, что нам нужна эта версия, прежде чем мы сможем начать работать над дополнительными функциями. Что важно, чтобы рассказать об этом и быть конкретным
Вы слушаете музыку, пока пишете код? Если да, то не могли бы вы рассказать нам несколько треков / исполнителей / выступлений?
У меня есть широкий список тщательно отобранных треков, которые я слушаю при кодировании. От чиптюнов из моей собственной коллекции, современных треков от Lukhash до жидких драм-н-бейсов, поставленных Metrik, London Elektricity, Wilkinson, Grafix, Seba, Netsky, Logistics, High Contrast, Degs, Pendulum, State of Mind, Apex .. Пожалуйста, остановите меня , Я могу продолжать вечно! Красота музыки в целом заключается в том, что она запускает определенные области в вашем мозгу в зависимости от того, чего вы хотите достичь.
![IMG20200730183340 | Embarcadero RAD Studio Delphi C++Builder Blogs img 20200730 183340](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2021/09/IMG_20200730_183340-3619291.jpg?resize=456%2C627&ssl=1)
Используете ли вы какие-либо методы или приемы, такие как Agile, Scrum, Kanban, TDD? Если да, то почему? Если нет, то почему?
Немного Канбана и больше TDD, как учил Йенс Фадж.
Вы отслеживаете ошибки? Если да, что посоветуете?
Да, безусловно! И я призываю всех сделать это!
Я использую различные системы, от Jira, Github Issue tracker, Gitlab Issue tracker, Bitbucket Issue tracker. Я думаю, это важно, особенно когда ошибки иногда появляются снова.
Такое случалось не раз в некоторых небольших группах, в которых я работал. Системы контроля версий, такие как git, mercurial или subversion, являются ключевыми вместе с системой отслеживания проблем.
Было ли у вас когда-нибудь техническое интервью, которое проходило очень гладко — если да, что вы посоветуете другим? Если у вас было провальное интервью, что пошло не так, и нужно ли вам обнять?
Просто будь собой.
Хороший разработчик программного обеспечения:
Делятся своими знаниями — обучение — это ключ к росту и развитию сообщества.
Плохой разработчик программного обеспечения:
Все делает сам и не делится своими знаниями
iPhone, Android, прочее — а почему?
У меня есть и то, и другое, хотя я предпочитаю Android. Что ж, технически это неправда, так как я балуюсь postmarketOS, полномасштабным дистрибутивом Linux для мобильных устройств.
Для разработчика: ПК против Mac? Почему?
ПК; Мне нужно что-то, что я могу расширять и поддерживать сам — Mac — это просто ПК с завышенной ценой в другой оболочке.
Чем вы хотите, чтобы вас запомнили?
Возвращение Delphi в тройку самых уважаемых языков и сред разработки 😊
Какой фильм для разработчиков, хакеров, техников и компьютерщиков лучший?
У меня есть несколько фаворитов в этой категории: Хакеры 1995 года, Операция «Разрушение», Антимонопольное право, Матрица, Человек-газонокосилка, Wargames, Tron Legacy, Johnny Mnemonic.
Ни одного разработчика нельзя увидеть без:
Копия Delphi
Если бы о вашей жизни сняли фильм, кого бы вы хотели сыграть?
Джонни Ли Миллер
У вас есть веб-сайт, который люди могут посетить, и если да, то какой?
Блог: https://code-kungfu.com
Сайт компании: https://gkon.dk
Если вы пользуетесь Твиттером, каков ваш твиттер?
@ B1tSmurf
Какой способ связи с потенциальными клиентами вы предпочитаете?
Отправьте электронное письмо, а затем запланируйте онлайн или личную встречу. Я предпочитаю, чтобы люди сначала обращались к вам с помощью текста.
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition