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

05.03.10

Разработка - Математика и алгоритмы

10 небольших правил, выполнение которых, увеличит эффективность работы любого программиста.

Как-то писал для себя. Немного поправил и выложил. Может кому-то пригодится. По себе скажу, что все выполнять не всегда получается.


1. Техническое задание для каждой задачи (кроме мелких). Разбить большую задачу на этапы.

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


2. Расставить правильно приоритеты и следовать им.


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


3. Установить конкретные сроки.


Если есть возможность оценить в часах заранее работы, лучше им назначить конкретный срок. Так она будет выполнена быстрее.
Небольшое замечание - не нужно расписывать каждый рабочий день по минутам. Мы же не роботы. Так можно стать "заложниками" собственных планов,
испытывать несправедливое осуждение за невыполненную "по плану" работу. К тому же, не секрет, что многие программисты амбициозны и их сроки выполнения лучше умножить на 1.5..
Поэтому лучше определить где-то половину своего рабочего времени.


4. Делать задачу сразу же, как есть возможность. Лучше, чтобы было все готово заранее\за день.


Потому что так хочется отложить работу на завтра когда еще есть время. И постоянно получается, что все доделывается в последний момент\ночь.
Так и невротиком можно стать от постоянных "пожаров" - важных задач, которые нужно сделать прямо сейчас.


5. Код должен быть с комментариями, понятным и аккуратным.


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


6. Тестирование любого изменения.


Обязательно. Даже если кажется, что все 100% работать будет, да и код чуток всего поменял.

Пару раз попал из-за этого в неприятную ситуацию.


7. Отдыхать. Через каждые 2 часа делать небольшой перерыв на 10 минут.


Самое важное. Не стоит работать и по ночам - эффективность очень сильно снижается, все равно придется отсыпаться.


8. Не брать больше 3х проектов одновременно.


3 - максимум. Чтобы было меньше ситуаций, когда работаешь на 5ти проектах и утром получаешь 3 звонка о том, что нужно срочно приехать\доделать.
Эффективность тоже падает.


9. Потратить несколько минут на поиск решения поставленной задачи в интернете или у друзей.


Поставленная задача скорее всего была кем-то решена. И не раз.


10. Делать архивные копии.


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

Вступайте в нашу телеграмм-группу Инфостарт

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Математика и алгоритмы Разработчик 1С 8.3 Абонемент ($m)

Данная внешняя обработка для платформы 1С:Предприятие реализует усовершенствованный алгоритм Левенштейна для вычисления схожести строк с учетом различных лингвистических особенностей русского языка. В отличие от классической реализации, этот алгоритм учитывает фонетические, визуальные и контекстные особенности набора текста.

1 стартмани

07.11.2025    6616    17    InFlach    17    

27

Математика и алгоритмы Запросы Разработчик 1С:Предприятие 8 Бесплатно (free)

Рассмотрим быстрый алгоритм поиска дублей с использованием hash функции по набору полей шапки и табличных частей.

08.07.2024    8839    ivanov660    9    

24

Математика и алгоритмы Разработчик 1С:Предприятие 8 1C:Бухгалтерия Россия Абонемент ($m)

На написание данной работы меня вдохновила работа @glassman «Переход на ClickHouse для анализа метрик». Автор анализирует большой объем данных, много миллионов строк, и убедительно доказывает, что ClickHouse справляется лучше PostgreSQL. Я же покажу как можно сократить объем данных в 49.9 раз при этом: 1. Сохранить значения локальных экстремумов 2. Отклонения от реальных значений имеют наперед заданную допустимую погрешность.

1 стартмани

30.01.2024    16517    stopa85    12    

44

Математика и алгоритмы Бесплатно (free)

Разработка алгоритма, построенного на модели симплекс-метода, для нахождения оптимального раскроя.

19.10.2023    24849    user1959478    57    

41

Математика и алгоритмы Разное 1С:Предприятие 8 1C:Бухгалтерия Россия Абонемент ($m)

Расширение (+ обработка) представляют собою математический тренажер. Ваш ребенок сможет проверить свои знание на математические вычисление до 100.

2 стартмани

29.09.2023    15470    maksa2005    8    

27

Математика и алгоритмы Инструментарий разработчика Разработчик 1С:Предприятие 8 Россия Абонемент ($m)

Что ж... лучше поздно, чем никогда. Подсистема 1С для работы с регулярными выражениями: разбор выражения, проверка на соответствие шаблону, поиск вхождений в тексте.

1 стартмани

09.06.2023    24785    11    SpaceOfMyHead    20    

65

Математика и алгоритмы Разработчик 1С:Предприятие 8 Бесплатно (free)

Три задачи - три идеи - три решения. Мало кода, много смысла. Мини-статья.

03.04.2023    17443    RustIG    10    

30

Механизмы платформы 1С Математика и алгоритмы Разработчик 1С:Предприятие 8 Россия Бесплатно (free)

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

23.11.2022    16344    gzharkoj    17    

27
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. trozz 05.06.09 10:53 Сейчас в теме
Жизненно, но по моему это очевидно любому, и не программисту тоже.
16. ValentinV 07.06.09 21:10 Сейчас в теме
Вот тут
http://infostart.ru/forum/forum15/topic9707/messages75014/#message75014
alexk-is 03.06.09 11:53
(1) По терминологии кажется так:
"Тех. задание" - описание потребностей со слов заказчика.
Тех. задание является основанием для составления технического проекта.
В техническом проекте указывается перечень необходимых к выполнению работ.
По техническому проекту составляется график проведения работ,
в котором указываются сроки и ответственные за этапы со стороны заказчика и исполнителя.

Иначе:
задание - проект - перечень работ - график - сроки - ответственные

Вcе верно т.к. всесильно и наоборот:)
И психологически и юридически и математически и организационно-технологически...
Это проверяется.
======================================================
У Вас Фигня на масле. Вас заказчик за такие вещи еще не оскорблял?
Вам я плюс не поставлю, самому нужны, а минусы я не ставлю.
2. luns 05.06.09 10:53 Сейчас в теме
В принципе очевидные вещи, но +
3. iddqdidkfa 05.06.09 12:42 Сейчас в теме
По 8 пункту хочу уточнить: пусть будет больше 3-х проектов, но пусть они будут отложенными (т.е. клиент знает, что им начнут заниматься с такого-то числа) Если проектов станет уж сильно много - лучше скооперироваться с друзьями в подобие организации.
12. Altez 258 06.06.09 10:46 Сейчас в теме
по п.7: Одолживший мне денег сишник работает по ночам. В плане дохода эффективность его несколько выше))
(3)ищу друзей пишущих проги-курсовые по 1 т.р.)
4. venger 2127 05.06.09 13:13 Сейчас в теме
(0) Как бы это к рубрике Life относится, не желаете перенести в Life?
5. sCHTASS 49 05.06.09 13:21 Сейчас в теме
Относительно пункта 3.

> К тому же, не секрет, что многие программисты амбициозны и их сроки выполнения лучше умножить на 1.5.

Умнажать нужно на три - проверено временем.
6. AS108 151 05.06.09 14:24 Сейчас в теме
Полностью солидарна, у меня это называется "План-график". На его составление уходит обычно немного времени, но дальнейшая корректировка уже готового плана по ходу в зависимости от обстоятельств помогает экономить много времени и сил.
7. tsd 106 05.06.09 16:13 Сейчас в теме
великое искусство верховой езды заключается в том, чтобы… правильно держать равновесие (Белый рыцарь)
Все сабж знают, вот только почему то не применяют :)
8. toypaul 64 05.06.09 21:38 Сейчас в теме
100%!
пытаюсь следовать. иногда даже получается.
обычно нарушаются пп 4-9 особенно п. 4
9. O-Planet 6456 05.06.09 23:33 Сейчас в теме
Если речь идет "и о клиенте", то нужно 11: Платить программисту на 200 % больше, чем он просит. Вот тогда точно жить всем станет легко.
10. CheBurator 3234 06.06.09 00:43 Сейчас в теме
Пропущены несколько важных пунктов.
.
11. Если есть сомнение в адекватности клиента, его платежеспособности и т.п. - лучше отказаться от заказа/проекта сразу. Во многих таких случаях не спасет даже предоплата - вытнут все жилы и заставят белить потолки.
.
12. Чувствуешь, что работа/заказ/проект "не идёт" - следуй правилу: если рабботу долго не делать - она или отпадет сама собой или ее сделает тот, кому она нужнее.
.
13. пункт 12, как правило, является следствием невыполнения пункта 11...
Legavaz; int18h; Altez; biv75; +4 – Ответить
11. Altez 258 06.06.09 10:31 Сейчас в теме
Иногда (ночь с субботы на воскресенье) полезно посвятить ночь очередному долгострою (звонки "утопающих" не отвлекают)
13. Tatitutu 3857 06.06.09 10:50 Сейчас в теме
(11)(ночь с субботы на воскресенье) полезно посвятить ЛЮБИМОМУ ЧЕЛОВЕКУ - намного большим вернется
14. lihomanov 83 06.06.09 16:46 Сейчас в теме
Крутые Правила, помогает жизненно !!!!
15. WKBAPKA 216 06.06.09 19:43 Сейчас в теме
не буду плюсовать автору, т.к. эти истины выучил наизусть исходя из собственного опыта, но аффтар прав, и в этом его поддержу
17. ValentinV 07.06.09 21:15 Сейчас в теме
Еще добавьте в свой арсенал.

11. Узелок.

Вам точно поможет.:);)
18. Abadonna 3979 08.06.09 08:28 Сейчас в теме
Статью надо переместить в Life, на методические материалы не тянет
19. vde69 939 08.06.09 09:26 Сейчас в теме
первые 4 пункта читал многократно для различных профессий, пункт 8 говорит о том, что автор скорее не работал на "постоянке", пункт про "сроки" тоже говорит за это.

Но не смотря на этом в целом почти все верно. Я-бы добавил 2 пункта (знаю что меня сейчас забрасают помидорами):

11. Никогда не встраивать конкретного человека в систему (в том числе и себя), система должна работать ичходя из "штатки" а не личностей

12. всегда обеспечивай себя свежей туалетной бумагой, необходимо все задания получать в виде документов или хотя-бы электронных заявок, пусть она будет из 10 слов, но она должна быть.
20. Ish_2 1117 08.06.09 09:38 Сейчас в теме
(19) К положению :

"11. Никогда не встраивать конкретного человека в систему (в том числе и себя), система должна работать ичходя из "штатки" а не личностей"

В разное время относился по разному : как к очень умному и как к очень глупому.
Из-за спорности, думаю , добавлять его 11 правилом не стоит.
21. lihomanov 83 08.06.09 09:46 Сейчас в теме
Могу сказать следующее:
1. нельзя установить конкретные сроки, даже самый крутой программер не может сказать конкретные время или дату сдачи объекта, так как в любой задачи есть подводные камни!!!
22. Креатив 66 08.06.09 09:47 Сейчас в теме
По пункту 7. Отдыхать всё-таки рекомендуется каждый час.
23. biv75 08.06.09 09:52 Сейчас в теме
(22) иногда бывает так прёт что не можешь оторваться, а иногда руки не подымаются, тут ещё и вдохновение нужно учитывать ))
а вообще да, надо отдыхать, кофейку попить.. чайку
24. ДимокШ 7 08.06.09 10:07 Сейчас в теме
Отдыхать обязательно, и обязательно НЕ за компом, те кто крурят делают это "подсознательно"... на инстинктах так сказать :))
25. smirnov.a 621 08.06.09 12:37 Сейчас в теме
11. После постановки ТЗ получить 100% предоплату (аванс)
Vladimir_D; DRY; +2 – Ответить
26. DRY 08.06.09 15:19 Сейчас в теме
Все грамотно! Следую этим правилам всегда, но не подозревая о онных)) Спасибо, разложил все по полочкам!
27. Abadonna 3979 08.06.09 15:45 Сейчас в теме
>Правила, которые облегчают жизнь программисту
Надо было добавить: для фрилансеров и халтурщиков (в хорошем смысле этого слова). Для фикси - не актуально
28. lihomanov 83 08.06.09 19:52 Сейчас в теме
Я считаю эти правила подадут любому!!!, даже бухгалтеру и т.д., кто расписывает свои работы тот всегда на коне!
29. wirg 11.06.09 13:37 Сейчас в теме
Конечно актуально, но мы все такие ленивые, что выполняется всего 2-3 пункта.
Для отправки сообщения требуется регистрация/авторизация