Картинка сделана юмористами, все яблофоны комплектуются кабелем со стандартным USB разъёмом. А вот история почему на этих кабелях провод до недавнего времени по политическим соображением выходил непосредственно из твёрдого пластика разъёма без предохраняющей от излома гибкой трубки, вполне реальна.
Это уже вопрос не к яблокам, а к «директору мегазоопарка». ЕС, например, просто законодательно обязало производителей обеспечить возможность зарядки телефонов от Micro-USB. Даже Apple пришлось уступить и выпустить переходник для iPhone.
Не удивительно, что с идей выступили именно яблоки — их ноутбуки работают с одной зарядки часов семь и среди их пользователей больший процент держит зарядные устройства дома и не таскает их с собой.
Персональные данные как раз единственное, что уникально и имеет ценность. Выпускаемый миллионными партиями новый телефон можно просто купить. К тому же быстро, если не ставить целью купить по самой низкой цене. А вот во сколько времени, денег и нервов может обойтись утеря устройства на который завязан онлайн-банкинг? К тому же странах где Apple зарабатывает свои миллиарды не спрашивают паспорт на каждый чих, и бОльшее количество вопросов можно решить по телефону или электронной почте при помощи простейшей аутентификации по дате рождения или почтовому коду. Для добрых же людей, принято оставлять прямо на экране блокировки надпись «нашедшего прошу за вознаграждение ...» Понятное дело, для этого нужно потратить пару минут заранее, пока гром не грянул. Список советов простым смертным где подстелить соломку сегодня, чтоб не было мучительно больно завтра.
Если есть радиоэлектронное предприятие с обученными людьми и высокой трубой, то следующим логичным шагом будет проецировать цветные полоски прямо на трубу в формате маркировки резисторов. Стильные получатся часики, жалко что руководство не одобрит настолько техническую идею.
Это верно, но ссылаться всё же не помешает. Это я к тому что статья безусловно полезна, но думается в такого рода публикациях нужен в конце раздел с гиперссылками на «must read» книги, другие статьи и т.д.
Например, если «непуганому программисту» лень читать томик Макконнелла, то может он всё же решится по пути на работу прослушать подкаст "SOLID Principles with Uncle Bob" c Мартином в главной роли.
Имена, по крайней мере public методов, должны иметь семантическое значение, а не рассказывать об особенностях реализации. Ведь реализация в любой момент может измениться и тогда придётся или переименовывать метод и перекомпилировать все использующие его модули, или же имя метода начинает лгать о его содержании.
Например getActiveConfirmedWithFilledCountryOrPhoneNumber может означать getActiveConfirmedAndValid, при том что понятие Valid сегодня действительно гласит «с заполненным кодом страны или телефонным номером», но завтра эта реализация имеет право поменяться.
А ещё с четверть века назад в журнале Юный Техник выдвигалась идея ионизировать направленным вверх лучом лазера воздух, чтоб использовать его в качестве мобильного громоотвода. Луч отражался от одноразового заземлённого металлического зеркала, в которое и должна была бить молния.
Странно, что имя Мартина Фаулера упоминается три раза, а Стива Макконнелла только один, причём написано с двумя ошибками. Имел честь видеть Фаулера лично, он год назад читал шестичасовой доклад по Continuous Delivery на мюнхенской конференции OOP 2011. Излагает очень талантливо и знает о чём говорит, но боготворить его всё же не стоит. Основополагающим трудом по написанию кода считается именно Code Complete Стива Макконнелла. Причём это не только моё мнение, книга заняла первое место в голосовании по теме What is the single most influential book every programmer should read? на StackOverflow. Фаулер там на почётном седьмом месте и он в целом пишет не столько про код, сколько про процессы — начал с Agile Manifesto, потом перешёл к Continuous Integration, сейчас двигает Continuous Delivery. Для него читаемость кода лишь один из факторов улучшающих качество проекта, важный, но далеко не единственный. Вот у Стив действительно целая книжка про то как писать код, там страниц двадцать лишь про то как оформлять комментарии.
Ещё могу порекомендовать Clean Code Роберта Мартина, у него не только про читаемость, но и про то как писать код, на который не будет страшно взглянуть после нескольких лет непрерывных правок и багфиксов.
Направленный в небо лазерный луч используется в астрономии. Дело в том, что даже при ясном небе воздух не абсолютно прозрачен и звёзды слегка шевелятся из-за атмосферных возмущений. Для борьбы с этим явлением параллельно оси телескопа направляют лазерный луч, который видится как ложная звезда. Автоматика легко отслеживает её, и, управляя подвижными зеркалами, компенсирует шевеление. Помнится один астроном рассказывал, что им заранее присылают таблицы из НАСА с указанием когда обсерватория обязана выключать луч, потому как над ней проходит рассматривающий Землю спутник.
Чтоб писать текст, скорости, да пожалуй и точности сервомоторов будет мало. Для этого применяют модулируемый по яркости лазерный луч и вращающееся зеркало (можно самодельное). www.youtube.com/watch?v=YwVcg__-41o
На глаз видится отлично, даже лучше чем на фотографии. Чтоб размыть качающийся рычаг, фотографировал с выдержкой в одну секунду, так что на фото четыре-пять наложенных друг на друга циклов. Так-как вся пластиковая конструкция получилась лёгкой и заметно раскачивается, то на фотографии пиксели получились размытыми по горизонтали. Глазами картинка воспринимается чётче.
Механизм раскачивания планки со светодиодами сделан по принципу «как проще», так что скорость движения неравномерна. Ближайшую к мотору точку проходит медленно, а от противоположной стороны практически отскакивает, мгновенно изменяя направление. Просто разделить время не получится, нужно вспоминать геометрию. «Дисплей» собирали с сыном за один вечер, так что есть ещё огромный потенциал для улучшений.
Список советов простым смертным где подстелить соломку сегодня, чтоб не было мучительно больно завтра.
Например, если «непуганому программисту» лень читать томик Макконнелла, то может он всё же решится по пути на работу прослушать подкаст "SOLID Principles with Uncle Bob" c Мартином в главной роли.
Например getActiveConfirmedWithFilledCountryOrPhoneNumber может означать getActiveConfirmedAndValid, при том что понятие Valid сегодня действительно гласит «с заполненным кодом страны или телефонным номером», но завтра эта реализация имеет право поменяться.
Так что поаккуратней там с мощностью :-)
Ещё могу порекомендовать Clean Code Роберта Мартина, у него не только про читаемость, но и про то как писать код, на который не будет страшно взглянуть после нескольких лет непрерывных правок и багфиксов.