Ну что, Эппл таки был прав, удалив гнездо наушников из седьмого айФона? Раз сам Гугл удалил его из своего телефона “Пиксель”?
https://www.theverge.com/2017/10/5/16428570/google-pixel-2-no-headphone-jack-apple-wireless-future
Month: October 2017
Чех варит топор
Вернее, вываривает, в растворе лимонной кислоты с целью снять ржавчину. Восстанавливает немецкий строительный топор времён второй мировой.
Прикольно он его луком натирает. Пишут, что луковый сок создаёт на поверхности углеродистой стали защитное покрытие из оксидов/солей железа.
Может, я и не прав
Но возвращаюсь на старое место работы. Сисадминить.
Вдобавок к прибавке в зряплате выцыганил новые обязанности (иначе какой смысл возвращаться?), так что теперь учить:
Azure/AWS: IaaS и прочий PaaS
Получать CCNA Cloud и CISSP. Плотно заняться SIEM.
Вот это будет бомба. Так как будущее определённо за облачными сервисами, я обеспечу себе хороший задел на грядущее.
А инфобез… “Some things look better just passing through”, как пел Элтон Джон. Да, в инфобезе можно заработать больше денег. Без вопросов. Хотя лично я большой разницы не вижу, по крайней мере, с той степени, с которой мне пришлось начинать в этой области. И, как уже сто раз было говорено, показано и обосновано, связь между зарплатой и удовольствием от работы если и есть, то очень слабая.
Про сами знаете чего
Ну чо, опять винтовки с патронами из магазинов пропадут?
Придушил бы гада. Мало того, что людей убил, так для нормальных осложнения создаёт.
Про изучение языков программирования
Да, именно так оно и работает.
Именно поэтому когда знакомые меня спрашивают, с какого языка начать знакомство с программированием, я никогда не советую Джаваскрипт, Перл, Питон и прочие языки с динамической типизацией. Совсем не потому, что они “хуже”, а потому что понять, что происходит, при отсутствии понимания типов переменных, невозможно.
Девочка пытается совершить арифметические действия с переменной типа char — действие, не вполне стандартное, так что компилятор действует “по наитию” — так что char в зависимости от контекста становится числом или строковой переменной.
При этом на низком уровне процессору глубоко до лампочки, что с чем складывать — он вполне может сложить яблоки с грушами, а финики с морковкой — по сути ведь, не всё ли равно, какие единички и нолики складывать? Ну, а если при этом возникнут неожиданные эффекты — ну это уже проблема программиста. На ассемблере ведь даже типов переменных нет. Да, надо указывать, сколько бит резервировать, но и всё тут. А уж как это интерпретировать — это вопрос к более высокому уровню абстракции.
Проблемы с интерпретацией никуда не исчезают, но если мы попробуем повторить девочкины действия на том же C# или на Джаве, в рыло прилетит привет от компилятора — “ты чо с чем складываешь, совсем охренел, что ли?” И предложит cast в другой тип данных. Поэтому подобных необъяснимых эффектов там просто не будет, а у программиста вырабатывается привычка руками кастовать переменные при любых неявных действиях с разными типами.
Сам я, кстати, пошёл сначала по неправильному пути, начав изучать программирование с одного из самых запутанных языков — с Перла. Ну, того самого, по которому даже проводилось соревнование “Кто непонятнее напишет” (https://en.wikipedia.org/wiki/Obfuscated_Perl_Contest). Не то, чтобы Перловый код обязательно получается кривой и непонятный, но там очень просто сделать именно так. Для начинающего — не то.