воскресенье, 6 декабря 2009 г.

Первые результаты предмета Võrgurakendused I / 2009 год

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

Начнём пожалуй с того что должен преподователь студентам в отношении данного предмета. Предмет носит явно прикладной характер, поэтому в рамках ограничений установленных университетом (например другие предметы) задачей является научить строить вебсайты на среднем уровне - используя HTML, CSS, PHP, JavaScript (AJAX), XML/XSL. Для этого знания концентрируются, делятся на практические занятия пройдя которые студент должен понимать как данные технологии используются. Дополнительно теоретические знания - например как зарегистрировать на себя имя сайта в том или ином домeйне.

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

Естественно есть две выше описанные категории, но есть и
1. Те кто ходят на занятия но попрежнему не понимают что происходит. Типичная их проблема неумение алгоритмизировать. На мой взгляд многим из них стоило бы
пересмотреть род деятельности, но это не всегда мне судить. Поэтому могу дать всего лишь совет работать активно над этим недостатком / поищите например кого-нибудь кто из дружбу или ещё за какое вознаграждение поможет вам преодолеть этот недостаток.
Вашей задачей здесь является умение разбить всё на шаги. Как в шахматах. Ход за ходом мы двигаемся к цели при этом достигая глобальной цели набором движений здесь и сейчас. Ну или попытайтесь потренировать свою сообразительность используя RoboZZLE

2. Те кто зарабатывает построением веб сайтов. Типичной проблемой здесь является то, что человек уверен, что он бог в данной технологии, и ему неинтересно ничего нового для расширения свох знаний. Типично они знают либо только PHP либо только JavaScript.

3. Те которым ничего не интересно, на занятия они не ходят и просто пытаются получить диплом с максимально минимальными усилиями. Эта категория студентов либо знает только HTML либо не знает и его. Возможно данные студенты талантливы в чём то ином - психологии, бизнесе, талантливы своими родителями или ещё какими то качествами. Я не знаю ответа на вопрос - что могло мы меня мотивировать поставить им положительнуя оценку.
Учитывая их отсутствие на занятиях, т.е. даже желания учится, учитывание их желания и усидчивости тоже никак не помогает.


4. Те кто что-то знают и могли бы знать больше но им лень, Сделали на тройку потратив 4 часа, оставив определённые пункты не сделанными - т.е. не потратив ещё 2-х часов. Они меня в основном просто удивляют если только они не из следующих под-категорий.

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

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

пятница, 20 ноября 2009 г.

Средняя ожидаемая продолжительность жизни

понедельник, 16 ноября 2009 г.

Количество Интернет пользователей в % по странам

суббота, 29 августа 2009 г.

К началу нового учебного года


подзаголовок - ТТУ : "Инвалиды - добропожаловать в университет или посторонним вход воспрещён".

четверг, 30 апреля 2009 г.

Уровень безработицы (Евросоюз)



Eurostat

четверг, 26 марта 2009 г.

Фраза (достойная заголовка)

"Отстой полный, но оторваться практически невозможно" (с) Александр Малюков

понедельник, 9 марта 2009 г.

WCF: Как переслать ADODB.Recordset


К сожалению пересылка ADODB.Recordset используя WCF не столь тривиальна, как пересылка многих других объектов .Net. Дело в том, что ADODB.Recordset не сериализуем (serializable). Следующий код призван решить данную проблему.

1. Без сериализации используя xml, т.е. не увеличивая поток данных внутри WCF message.

2. Без использования DataTable - если ваш код в последствии использует ADODB.Recordset (например вы передаёте данный объект какому-то старому коду наследованном со времён когда .Net ещё не было) - так как конвертация DataTable в ADODB.Recordset достаточно затратная с точки зрения производительности и времени операция.

Ниже приводимый пример написан на VB.Net. Тоже самое легко написать, например, на C# следую основной канве представленной в примере.


'Предположим rs это ADODB.Recordset уже существующий в вашем коде.

Dim ret() As Byte
Dim aStr As Object = CreateObject("ADODB.Stream")

rs.Save(aStr, 0) ' 0 эквивалентно ADODB.PersistFormatEnum.adPersistADTG)
Return aStr.Read(aStr.Size)

Dim binFormat = New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter()

Dim oStream As New System.IO.MemoryStream()
binFormat.Serialize(oStream, rs)
oStream.Flush()
oStream.Position = 0

ret = oStream.ToArray() ' Теперь вы можете передать ret используя WCF


На стороне клиента для конвертирования обратно в ADODB.Recordset можно использовать следующий код. Представим, что QueryBypassAsByte - это функция которая передаёт наш byte array используя WCF вызов


Dim res() As Byte = proxy.QueryBypassAsByte()
Dim oStr As New ADODB.Stream()

'' прочитать в ADODB.Stream...
oStr.Open(System.Reflection.Missing.Value, ADODB.ConnectModeEnum.adModeUnknown, ADODB.StreamOpenOptionsEnum.adOpenStreamUnspecified, "", "")
oStr.Type = ADODB.StreamTypeEnum.adTypeBinary
oStr.Write(res)
oStr.Position = 0

Dim resRecordset As New ADODB.Recordset()
resRecordset.Open(oStr, System.Reflection.Missing.Value, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockReadOnly, -1)


Теперь объект resRecordset содержит ADODB.Recordset и вы можете использовать его по своему усмотрению в вашем коде.