Как я готовился и сдавал экзамен CLD
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Как я готовился и сдавал экзамен CLD
Как я готовился и сдавал экзамен 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. Какой главный совет ты можешь дать собирающемуся сдавать? Планируй своё время ...
То, что студент сдал экзамен означает только то, что он сумел сдать этот экзамен
Студенческая мудрость
После 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. Какой главный совет ты можешь дать собирающемуся сдавать? Планируй своё время ...
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Как я готовился и сдавал экзамен CLD
Ого, большое тебе спасибо. Всё перечитал, очень понравилась твоя статья.
Так как мне скоро тоже предстоит через это пройти буду задавать тебе вопросы по теме, если можно.
Значит ты использовал в своём решении простой конечный автомат, т.е. без очереди состояний?
А ещё если можешь, то скинь ссылки на документы и вебкасты для подготовки пожалуйста.
Так как мне скоро тоже предстоит через это пройти буду задавать тебе вопросы по теме, если можно.
Значит ты использовал в своём решении простой конечный автомат, т.е. без очереди состояний?
А ещё если можешь, то скинь ссылки на документы и вебкасты для подготовки пожалуйста.
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Как я готовился и сдавал экзамен CLD
Согласно соглашению с NI, я не могу разглашать, что я делал на экзамене. Всё что я изложил - это свою тактику сдачи, придуманную до экзамена.
Минимальное требование: наличие конечного автомата - перечислено в документах на CLD, так что тут я ничего нового не разгласил.
Ссылочка, собственно вот:
http://sine.ni.com/nips/cds/view/p/lang/en/nid/10647
Оттуда ведут ссылки на webcast, 3 примера и положение о сертификации CLD.
Да, в решении залачи о мойке машин я использовал конечный автомат без очереди.
IMHO, пример с security system немного не такой как другие ...
Минимальное требование: наличие конечного автомата - перечислено в документах на CLD, так что тут я ничего нового не разгласил.
Ссылочка, собственно вот:
http://sine.ni.com/nips/cds/view/p/lang/en/nid/10647
Оттуда ведут ссылки на webcast, 3 примера и положение о сертификации CLD.
Да, в решении залачи о мойке машин я использовал конечный автомат без очереди.
IMHO, пример с security system немного не такой как другие ...
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Как я готовился и сдавал экзамен CLD
В догонку:
Один из способов проверить "качество" VI для экзамена CLD - это запустить VI Analyzer Toolkit. Он выдаст замечания по стилю,
документации итд итп. Правда NIшники клянутся, что его не используют его при оценке экзамена.
Один из способов проверить "качество" VI для экзамена CLD - это запустить VI Analyzer Toolkit. Он выдаст замечания по стилю,
документации итд итп. Правда NIшники клянутся, что его не используют его при оценке экзамена.
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
-
Korotenko
- developer
- Сообщения: 286
- Зарегистрирован: 25 июл 2008, 10:43
- Награды: 1
- Версия LabVIEW: 2009
- Откуда: Россия, Владивосток
- Контактная информация:
Re: Как я готовился и сдавал экзамен CLD
а сколько раз можно пересдавать? если с первого раза не получится? за экзамен бабки надо вносит?
I work in LabVIEW 2009 !
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Как я готовился и сдавал экзамен CLD
На сколько я знаю можно перездавать сколько хочешь, но каждый раз нужно платить.
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Как я готовился и сдавал экзамен CLD
Пересдавать можно 2 раза на каждом уровне. Потом: пауза 6 месяцев
eg, а ты уже CLD?
eg, а ты уже CLD?
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Как я готовился и сдавал экзамен CLD
mzu2006, неа, решил что это мне не нужно. Тем более нужно пересдавать каждые два года. Вот стану самостоятельным программёром, тогда хорошенько подумаю. А пока моему шефу нужен результат, а не сертификат, я не спешу. Хотя при поиске новой работы вещь нужная...