Как я готовился и сдавал экзамен CLD

Курсы, экзамены, сертификация
Ответить
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Как я готовился и сдавал экзамен CLD

Сообщение mzu2006 »

Как я готовился и сдавал экзамен CLD (Certified LabVIEW Developer)


То, что студент сдал экзамен означает только то, что он сумел сдать этот экзамен
Студенческая мудрость


После 10 лет обучения в Университете сдавать экзамены –дело простое. Так я думал и готовясь к экзамену CLD. Тем более, что CLAD (Certified Labview Associate Developer ) я сдал (90%%), затратив на подготовку один обеденный перерыв и дорогу домой на элетричке (40 минут). Отвёл и я на подготовку к CLD – два вечера. Благо LabVIEW использую часто и помногу, разрабатывал приложения уровня CLA (Certified LabVIEW Architect). Быстро посмотрев webсast, и не найдя в нём ничего для себя принципиально нового, я решил проконтроллировать себя. Я взял однин из примеров и решил сходу написать код и документировать его в соответствии с требованиями экзамена CLD.

Так, что там у нас? – Мойка машин! -замечательно. Заводим producer цикл с обработчиком событий, который пишет кластер в заранее созданную очередь сообщений. Эта очередь читается во втором цикле. Плюс ко всему второй цикл представляет из себя конечный автомат (Finite State Machine). Так придумываем набор состояний, определяем новый перечислямый тип данных. Определяем новый тип данных для кластера. Наносим всё это на диаграмму. Комментируем. Из кода выделяются subVI. Их тоже документируем. Следим, чтобы иконки были в одном и том же стиле. Пишем комментарии к каждому проводу длиннее 2 дюймов. Реализовав в таком же духе где-то процентов 80 кода, решил заварить сбе кофе. Мельком – взгляд на часы. 3 часа 45 минут с начала экзамена. Забываю о кофе, лихорадочно дописываю код, короткая отладка, устранение багов. Опять отладка. Всё работает. Время – 4 часа 43 минуты. В процессе – не отдыхал ни минуты.

Хорошо,­­‑ подумал я,‑ неделю где-то не брал в руки LabVIEW, кроме того, сел за свой лаптоп, когда обычно LabVIEW я занимаюсь за стационарной машинкой в удобном кресле, с большим экраном... Потратил минут 20, написал себе задание, похожее на мойку машин. Заварил чёрный, крепкий кофе. Опять включил таймер. Писал код в том же стиле, что и раньше. Какие-то части решения пришли в голову ещё при написании задания. Результат: 4 часа 20 минут. Работал в лихорадочном темпе. Потом смотрел, пропустил кое-какие места по документации, пара вещей была сделана не совсем рационально. На часах 6 утра, через 30 минут вставать. Короткий power nap, чашка крепчайшего зелёного чая и на работу. До экзамена сутки. Необходимо осмыслить происходящее и брать у босса половину рабочего дня под подготовку. Принято решение: в решении использовать только простой конечный автомат, как в шаблоне у NI. Время выполнения определять через глобальню переменную в стиле LV2. Чтобы програма не занимала 100% процессора – задержка на 2 миллисекунды. И всё – максимально просто.

Половина рабочего дня в полусне. Босс у меня хороший, вошёл положение, и к 3-м часам я предоставлен сам себе. Короткий power nap, чашка обжигающего густого кофе по- турецки с долькой лимона. Сели, собрались поехали. Ещё раз просмотреть web cast, перечитать критерии оценки, просмотреть наставления по разработке (development guidelines). Решаем задачу о светофоре, ещё 2 придуманных мной задачи. Почти не отвлекаюсь на стиль, комментарии и документацию. Вроде всё укладывается в 2:30 – 3:30 на задачу без документации. Захватываю последний поезд домой, короткий сон в поезде. Машину веду на автомате. Приезжаю домой. Глаза закрываются. Когда закрываются на несколько минут, то сниться начинают хитросплетения проводов, иконок и индикаторов. И ухмыляющееся лицо китайского коллеги со словами: «экзамен-то ты не сдал»

Вырабатываю стратегию сдачи. Во-первых, копируем переднюю панель VI из задания, до прочтения самого задания. Дальше в тексте на неё везде ссылки, экономится время. Во-вторых, всю документацию, кроме самой необходимой, на потом: проще писать всё разом. Редактирование иконок SubVI по одному шаблону тоже. Свою мышку беру с собой – кнопки CTRL и SHIFT на дополнительные кнопки мыши, как на работе. При первом прочтении текста – составляется список состояний конечного автомата и дополнительных требований. При втором-уточняются переходы между состояиями. Третий – контрольный. Внутрь VI – копируется шаблон конечного автомата. И поехали набивать состояния. Потом отладка, сперва SubVI, потом основной VI. И последний проход по тексту задания в поисках несоответствий. И, наконец, комментарии, документация, иконки SubVI итд итп. Ложусь спать на короткое время, снится LabVIEW, в котором я всё ищу и никак не могу найти SubVI создания очереди.

Под экзамен я заранее зарезервировал аудиторию в университете. Мой проктор – М* Б*, местный менеджер NI по продажам. Нормальный мужик. По дороге на работу освежаю в голове наставления по разработке. Звонит М*: Майкл я запаздываю часа на полтора. Полтора часа сна в подарок. Это роскошь.

Заранее зарезервированную комнату занять не удалось: рядом красили, я не люблю запах краски. Использовал запасной вариант: комнату для собраний астрофизической группы. Поставил на стол перед собой свой лаптоп, мышку, термос с кофе, флягу с холодной водой, пару энергетических батончиков. Я дал отмашку, М* включил таймер, распечатал конверт с заданием и я приступил к его реализации. Вот как я использовал время на экзамене: первые 23 минуты копирование передней панели, за ещё 28 минут готово моё представление о задаче на листочке. Создаётся конченый автомат, «набивается» иконками. Прошло 2 часа. Немного призадумался: забыл некоторые аспекты вывода в файл. Прошло 2 часа 38 минут. Написание кода закончено. Немного перекусываю. Отладка. Коррекция кода. 3 часа 10 минут. Программа работает как заявлено. Срочно начинаю лепить документацию, и комментарии к коду. Кое-какие комментарии уже есть в коде, но знаю, что этого мало. 3 часа 50 минут. Всё закончено. Последние штришки: там проводок подтянуть, тут описание алгоритма добавить. 3 часа 59 минут. Я говорю М*, что я готов. Уфф. Дистанция пройдена. Результаты через месяц …

Теперь сухой остаток:

1. Для чего была придумана сертификация разработчиков? Чтобы NI могли получить дополнительный источник дохода от компаний, желающих стать членом NI Alliance. В компании должно быть определённое число разработчиков CLAD/CLD. Точных цифр, я, правда, не знаю.

2. Для чего это нужно компаниям? Для того, чтобы рекламироваться на сайте NI и строить с NI особые партнёрские отношения.

3. Для чего это нужно тебе лично? Для получения работы в одной из компаний из NI Alliance. Для документального подтверждения владения LabVIEW. Для вписания своего имени на сайте NI. Для самоутверждения, наконец.

4. Так за тебя платила компания? Нет я платил сам.

5. Ты слушал курсы от NI? Нет. Я предпочитаю учиться сам. В универе на многие лекции я не ходил – считал потерей времени. Не пожалел ни разу. Кроме того, дорого.

6. Программы разработанные на сертификационном экзамене, они, правда, имеют опосредованное отношение к тому как устроены реальные управляющие программы? Чистая правда.

7. Так что, у тебя полностью негативное отношение к сертификации? Нет. Для того, чтобы сдать экзамен мне пришлось подтянуть кое-какие «хвосты», что всегда полезно. Также приятно сравнить себя с другими. Интересно будет получить “разбор полётов” от NI.

8. Использовать простой конечный автомат – это такое убожество. Можно ли использовать более сложные схемы? Наверное можно. Но мне не хватило времени на реализацию. Я не одинок. Вот на lava.org тоже советуют использовать простой конечный автомат и не заморачиваться.

9. Какой главный совет ты можешь дать собирающемуся сдавать? Планируй своё время ...
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Как я готовился и сдавал экзамен CLD

Сообщение Eugen Graf »

Ого, большое тебе спасибо. Всё перечитал, очень понравилась твоя статья. :super:
Так как мне скоро тоже предстоит через это пройти буду задавать тебе вопросы по теме, если можно.
Значит ты использовал в своём решении простой конечный автомат, т.е. без очереди состояний?

А ещё если можешь, то скинь ссылки на документы и вебкасты для подготовки пожалуйста. :clap:
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Как я готовился и сдавал экзамен CLD

Сообщение mzu2006 »

Согласно соглашению с NI, я не могу разглашать, что я делал на экзамене. Всё что я изложил - это свою тактику сдачи, придуманную до экзамена.
Минимальное требование: наличие конечного автомата - перечислено в документах на CLD, так что тут я ничего нового не разгласил.

Ссылочка, собственно вот:
http://sine.ni.com/nips/cds/view/p/lang/en/nid/10647

Оттуда ведут ссылки на webcast, 3 примера и положение о сертификации CLD.

Да, в решении залачи о мойке машин я использовал конечный автомат без очереди.

IMHO, пример с security system немного не такой как другие ...
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Как я готовился и сдавал экзамен CLD

Сообщение Eugen Graf »

Спасибо за ответ и за линк.
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Как я готовился и сдавал экзамен CLD

Сообщение mzu2006 »

В догонку:
Один из способов проверить "качество" VI для экзамена CLD - это запустить VI Analyzer Toolkit. Он выдаст замечания по стилю,
документации итд итп. Правда NIшники клянутся, что его не используют его при оценке экзамена.
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Как я готовился и сдавал экзамен CLD

Сообщение Eugen Graf »

:super: :wink:
Аватара пользователя
Korotenko

Activity
developer
developer
Сообщения: 286
Зарегистрирован: 25 июл 2008, 10:43
Награды: 1
Версия LabVIEW: 2009
Откуда: Россия, Владивосток
Контактная информация:

Re: Как я готовился и сдавал экзамен CLD

Сообщение Korotenko »

а сколько раз можно пересдавать? если с первого раза не получится? за экзамен бабки надо вносит?
I work in LabVIEW 2009 !
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Как я готовился и сдавал экзамен CLD

Сообщение Eugen Graf »

На сколько я знаю можно перездавать сколько хочешь, но каждый раз нужно платить.
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Как я готовился и сдавал экзамен CLD

Сообщение mzu2006 »

Пересдавать можно 2 раза на каждом уровне. Потом: пауза 6 месяцев

eg, а ты уже CLD?
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Как я готовился и сдавал экзамен CLD

Сообщение Eugen Graf »

mzu2006, неа, решил что это мне не нужно. Тем более нужно пересдавать каждые два года. Вот стану самостоятельным программёром, тогда хорошенько подумаю. А пока моему шефу нужен результат, а не сертификат, я не спешу. Хотя при поиске новой работы вещь нужная...
Ответить

Вернуться в «Курсы и сертификация»