All streams
Search
Write a publication
Pull to refresh
21
0

Играю музыку в борделе

Send message
Совет: закладывайте правильную архитектуру с начала, но не пишите все сразу.

Я тоже был сторонником этого совета, пока не научился хорошо эмулировать многозадачность мозга :)

Как пример — при работе с основным проектом (скажем, на C#), почти всегда открыт более мелкий, который на данный момент не критичен по времени (или вообще в рамках самообразования), например что-нибудь на PHP или JS.

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

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

Понятия не имею, можно ли этому просто научиться или это какое-то особое строение/расстройство моего мозга.
У меня как-то само сложилось во времена, когда я был молод, глуп и жаден (и брал на себя больше, чем получалось унести).

Я вам больше скажу — у меня рабочее место состоит из специально обученного дивана и 50" 4к телевизора :) Так что клавиатура на коленях овер 95% времени на коленях (не смотря на наличие специального столика с регулируемым наклоном, им не пользуюсь, коленки — родней и удобней).
Не смотря на удобную подставочку под правую руку с мышкой, перекладывать руку на нее во многих случаях лень, и к тому же снижает производительность.
Разумеется, там где можно я заточил инструменты под клавиатуру, но есть куча ненастраиваемого ПО, где просто приходится пользовать мышь.

Вот тут бы крайне пригодился трекбол/тачпад, да хоть клитор, как в ThinkPad'ах.
Да, конечно. В файле настроек (commands.xml) руками поменять Zoom на Scroll. Но т.к. устроен файлик команд по дурацки, менять нужно будет в куче мест.
Например:
    <Application UniqueName="AdobeGenericDialog" AppName="Adobe">
      <C319 Type="6" Activator="ScrollUp" />
    </Application>		
    <Application UniqueName="$PageMaker_PMAppFrame" AppName="Adobe InDesign">
      <C319 Type="6" Activator="ScrollUp" />
    </Application>
    <Application UniqueName="VWClass500" AppName="Adobe PageMaker">
      <C319 Type="6" Activator="ScrollUp" />
    </Application>
    <Application UniqueName="PremierePro" AppName="Adobe Premiere Pro">
      <C319 Type="6" Activator="ScrollUp" />
    </Application>		
    <Application UniqueName="InfoPathPrintPreview" AppName="Microsoft InfoPath">
      <C319 Type="6" Activator="ScrollUp" />
    </Application>				
    <Application UniqueName="ImageReady" AppName="Adobe Image Ready">
      <C319 Type="6" Activator="ScrollUp" />
    </Application>
    <Application UniqueName="Illustrator9" AppName="Adobe Illustrator">
      <C319 Type="6" Activator="ScrollUp" />
      <C320 Type="6" Activator="ScrollDown" />	
    </Application>
    <Application UniqueName="MSPaintPrintPreview" AppName="Microsoft Paint Print Preview">
      <C319 Type="6" Activator="ScrollUp" />
      <C320 Type="6" Activator="ScrollDown" />	
    </Application>		
    <Application UniqueName="QWidget" AppName="Adobe Photoshop Album">
      <C319 Type="6" Activator="ScrollUp" />
      <C320 Type="6" Activator="ScrollDown" />			
    </Application>


Не помню уже точно, как я с этим боролся, по-моему поискозаменой всех C319 и С320 на C319 Type=«6» Activator=«ScrollUp» и C320 Type=«6» Activator=«ScrollDown» соответственно (соблюдая теги разумеется).
Не забудьте перезапустить процесс, чтобы настройки вступили в силу.

PS
Если честно, то даже после переделки зума в скролл, пользоваться им не особо удобно, хотя иногда можно.
Давно мечтаю, чтобы в MS Natural Ergonomic встроили трекбол, вместо ненужной зумо-листалки, а пару клавишь «туда-сюда» поменяли бы на кнопки мыши.
Клавиатура здоровая, удобная, место под шарик вполне себе найдется.
Я бы сказал — очень повезло, наша кроме фразы (дословно) «когерентный свет» про лазеры ничего пояснить не могла.
Эх, жаль :( Полная «картина мира» была бы понятней, а так слишком много абстракции для стороннего читателя.

Но вы продолжайте, очень занимательно, чесслово.

[sarcasm]
Боже, какой занимательный срач, аж зачитался!
А разбор кода будет?
[/sarcasm]
Во блин, а я такой строить собирался 30 лет тому назад :))

Публикацию «Почему быть фуллстеком клево»? :)
Если народу будет интересно, почему бы и нет? :)
Нет, это сугубо их идея. Простая как три рубля, внезапная, как понос :)
Что-то вроде того:

— Слух, а можно сразу две сортировки делать?
— Это как и зачем?
— Ну я вот тут смотрю, а когда переключаю, нифига не понимаю, что и откуда. Как-нить можно сразу и такую и такую?
— [сразу начинаешь думать, как перекроить UI, чтобы еще что-то влезало, на 14" с 1024х768 особо не разбежишься, а один из трех мониторов вообще в 800х600 только умеет] Ээээ… Нууу… А куда ее вставить-то тут, без того экран занят?!
— Да не надо вставлять, пусть тут [тык в экран пальцем] квадрат вылазит с ней, пока держу клавиши и все.
— Бинго!


Ровно как и перенести режимы сортировок на одну клавишу (слепым методом печати они не владели, т.е. куча хоткеев для одного и того же было для них не очень удобным решением).
А в таком виде (Ctrl+T) — клац = одна сортировка, клац-клац = другая, клац-клац-клац = третья…

А уж сколько денег было поднято на простецкой проге для сдачи данных/отчетов в налоговую до прихода в массы «1С Налогоплательщик» (да и после тоже, т.к. скорость внесения данных в мою поделку была без преувеличения на пару порядков выше)…
И все это благодаря тому, что кривенький и косонький UI был на самом деле выверен до последнего тыка в клавиатуру, все заточено под максимальную скорость ввода.
Закончилась лафа с этим ПО только после внедрения на предприятия и частникам всевозможных «Бухгалтерий», «Кадров», где эти отчеты формировались на автомате.
Приоритет — это сделать софтину, а не родить инженерный шедевр.

Именно так.

Кстати, когда я начинал свой путь (это когда за деньги), то разумеется смотрел, как это делают другие корифеи.
Поначалу меня всегда удивляло, что узкоспециализированное ПО (для одного человека или небольшой группы/команды) имеет «убогий дизайн».
Ну реально, вместо лаконичного и «уже вроде как привычного» от билгейца — какое-то малопонятное со стороны нагромождение UI-элементов, хоткеев и вообще, без бутылки не разберешься (под DOS вообще были шедевры почище vi).

Однако, после нескольких попыток нести в массы «правильный» интерфейс, начало приходить понимание, что это все явно неспроста, а заточено именно под упомянутого пользователя или группу.

Первым проектом после осознания факта, что узкоспециализированное ПО должно быть в первую очередь функциональным и удобным, а только потом «красивым», была система учета/управления библиотекой (заведение с бумажными книгами) под винду (год 98й однако был).
После изменения «красивенько» на «удобненько», приложение приобрело несколько страшноватый вид, но скорость работы трех девчонок повысилось где-то в 5 раз.
Т.е. UI было сделано так, как им было удобно. Хоткеи такие, какие им были удобны. Каждое движение, каждое нажатие было максимально функциональным — от автодобавления строк, до сортировок и сохранения.

Скажем, ну кто бы мог подумать, что девчонкам удобно нажать Ctrl+T n раз (режимы сортировок) и чтобы она (сортировка) не менялась в основном окне, а всплывало поверх формы, не загораживая основной список и висело там до тех пор, пока хоткей зажат?
Да в жизни бы до такого не догадался, а девкам, подсказавшим, как им было бы удобно ну очень нравилось — кинули взгляд, ага, здесь то, а здесь то; отпустили хоткей и дальше работать. На все про все уходило в пределах 1-2с, когда при «обычной» сортировке (когда все в одном списке) приходилось листать по 10 (а то и 30с), да еще запоминать большие объемы данных, т.к. перед глазами не было предыдущих данных.

И таких нюансов при плотном контакте с будущими пользователями — вагон и две тележки сверху.
ИМХО, только такой подход реализует тезис «вам шашечки или ехать» :)
Не совсем фрилансер. Просто за 20+ лет кодинга за деньги я наработал весьма солидную базу клиентов и (самое главное) — некий авторитет («широко известен в узких кругах»), благодаря которому не мне нужно искать клиентов на свои поделки, а наоборот, всегда стоит очередь на мои услуги. Уже закрытые и сданные как правило ничего не требуют, но есть десятка полтора, которые время от времени обновляются («на обслуживании»). За деньги конечно.

Кому-то нужен крайне специфический внутренний продукт (например, ПО для расчетов ТТХ изготавливаемой арматуры в мобильничек или «микро-CAD» для расчетов прочностных характеристик всяких специфичных железяк (на этом проекте я не осилил матан, поэтому понадобилась помощь зала, хех)). Здесь обычно рулит дотнет.

Кому-то нужен специфичный сайтик (не визитка, не интернет-магазин, и не шаблон WP/Drupal/итп, такое я не беру, неинтересно). Здесь как правило PHP/JS/CSS/HTML. Если нужен специфичный дизайн, то я привлекаю стороннего покемона (с художественным развитием у меня не очень).

Иногда приходится делать продукт для интранета (с подъемом серверов, блэкджеком и прочим).

И в чужих древних разработках (пресловутые Делфи/VB/CBuilder лохматых годов) приходится покопаться — ПО написано 20 лет назад, поддержки уже давно нет, а поменять что-то нужно (чаще прикрутить что-то к чужому коду быстрее и дешевле, чем переписать заново, проекты попадаются далеко не уровня «hello, world»).

Linux — это больше хобби, но случалось несколько раз писать за деньги и под него.

Почему я, а не «команда проф. разработчиков»? Потому что малый и средний бизнес как правило не понимает 90% того, что лидеры/«эффективные менеджеры» этих команд им говорят, и (главное) не тянут по финансам.

Скажем, переговоры по «микро-CADу» с разными командами заняли в итоге 4 месяца(!) и цены на готовый продукт начинались от 5 млн (в рублях разумеется), со временем разработки в 4-6 месяцев.

Я не особо напрягаясь сделал чуть больше, чем за квартал и за миллион. При этом вечерами ведя пару мелких проектов.
Не потому, что я круче упомянутых команд, а потому, что я мог по 2-3 дня подряд ничего не писать, а ходить хвостом за инженерами, для которых этот продукт делался.
Узнавать, что им нужно, помимо унылого ТЗ, как будет удобно, как вообще это работает с их точки зрения.
В результате, как минимум треть ТЗ ушла в помойку, а процесс разработки ускорился невероятно из-за того, что отпала необходимость реализовывать ненужные фичи, которые «вроде как нужны», но на самом деле никто их никогда бы и не использовал.

В общем, такой подход к разработке — это еще один очень важный скилл в жизни fullstack :)
А мне нравится фуллстек. Да, я точно так же осознаю, что нельзя «объять необъятное», но меня это никак не смущает. Ровно как и «не помню про IDisposable без гугла» (кстати, не помню, ага). Я вообще много времени провожу в гугле при разработке чего-либо. Мне нравится учиться. Нравится смотреть, как программируют другие, нравится думать и сравнивать, почему вот этот подход лучше вот этого.
Никогда не считал зазорным спросить совета у более опытного разработчика в текущей технологии, не испытываю по этому поводу никаких комплексов.

Я тащусь от того, что в общем-то не ограничен языком или платформой. Ннннада .NET? Не вопрос (asp, xamarin, wpf). Запилить бэкенд на PHP? Легко. CSS к сайтику? И это тоже! Что здесь? Си и Linux? Давайте сюда, сделаем. Что это? Делфи? Воу, какой раритет! Ну ОК, давай в Делфи.
И так далее и тому подобное.

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

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

Сейчас вроде EDGE в моде у MS?
Главное, чтобы не Windows 10 only, остальное пережить можно :D
Сетевуха в нем есть, какой-то 3COM, только она без RJ45, один коаксиал.
Ретро-гик-порно :) [Утер скупую слезу и пошел в чулан гладить PC XT]
Это можно «автоматизировать» путем принуждения к работе других инженеров, ловко руководя ими :))
Существует постулат (не помню, за чьим авторством) — «Любое разумное существо стремится работать как можно меньше» (разумеется, получая за это как можно больше).
Ребята из статьи целиком и полностью соответствуют этому правилу.

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

Заголовок спойлера
image

Ждем отчета «как я почистил клавиатуру»
Жаль… Плакала мечта нашего инженегра вместо микросборок свою микросхему толкать в оборудование :)
Ну глядишь, такими темпами через десяток-другой лет можно по почте будет получать готовые кристаллы по персональному проекту за стоимость пары бутербродов.
Надеюсь, доживу :)

Information

Rating
Does not participate
Location
Россия
Registered
Activity