Alexander Russkiy @Kolonist
Разработчик
Information
- Rating
- Does not participate
- Location
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Date of birth
- Registered
- Activity
Specialization
Backend Developer
Middle
C#
Multiple thread
Object-oriented design
Software development
SQL
ASP.Net
PostgreSQL
Linux
MongoDB
Вот именно это я и сделал.
И про популярность Вы тоже, ИМХО, преувеличили. У меня уже давно приложение для Твиттера готово, но оно почти никому не нужно. А я еще удивлялся, почему до меня такое никто не сделал. Видимо, просто не та аудитория…
Данные можете не доверять — для синхронизации статуса и отображения твитов на странице пароль не нужен.
Это значит, что на каждую 1000 пользователей, приходится 100 пользователей, готовых иногда участвовать в опросах и изредка оставлять какие-нибудь комментарии, и лишь 10 пользователей, которые будут активно комментировать, создавать темы, писать статьи.
Принуждать пассивную массу к проявлению активности бессмысленно и даже вредно — они просто уйдут с сайта и никогда туда не вернутся. Да и нужна ли вам куча некреативных, оставленных для галочки комментариев...?
Современный Паскаль вполне себе нормальный язык, поддерживающий ООП, интерфейсы, динамические строки и массивы, шаблоны (тип Generic). Однако, в универах преподавателям, действительно, зачастую лень посмотреть, что со времен Turbo Pascal для DOS или Borland Pascal 7.0 для Windows что-то изменилось. Преподаватели часто даже не подозревают, что есть кроссплатформенный, современный, пригодный для решения реальных задач, FreePascal. Максимум к чему приходят преподаватели — это Delphi 7, да и то, на старших курсах, да и то, не к изучению языка, а к рисованию форм в визуальном редакторе с созданием обработчиков в стиле Turbo Pascal'я.
Вспоминая себя, в Финляндии я изучал Java. Это, конечно, был курс для тех, кто уже умел программировать, но не суть. Преподаватель не преподавал одно и то же из года в год, он, во-первых, сам был практикующим программистом Нокии, а, во-вторых, он к каждому занятию готовился как к первому — рылся в Инете, изучал все новости, просматривал блоги на предмет чего-нибудь нового и интересного. Он своевременно обновлял версии компилятора, ставил различные IDE, учил пользоваться автодокументированием. Вполне нормальным было прямо во время занятий скачать с интернета какой-нибудь пример и сразу дать его студентам, которые, заодно, и учились искать ошибки в чужом коде (не всегда же примеры из интернета работают, как ожидается).
И задачи у нас были не типичные аля решение квадратного уравнения, а какие-то более интересные. Мы писали TCP- и UDP-серверные приложения и клиенты, работали с Bluetooth'ом и GPS-навигаторами, учились динамическому созданию элементов интерфейса, и т.д., и т.п.
P.S. Я так жалел, что после всего лишь одного семестра мне нужно опять возвращаться в свой родной ВУЗ, где на пятом курсе (!) опять все тот же Turbo Pascal для DOS и PHP на уровне echo «var1 = $var1»…
Более того, устанавливать api.params.* через PHP — совершенно бессмысленно. Все эти параметры устанавливаются скриптом автоматически! Так что, если все далать еправильно, то Ваш скрипт должен быть таким:
У меня нет IE, так что проверить мне сложнее. Но вообще, как бы, да. Квадратные скобки не являются частью стандарта ECMAscript, и не обязаны поддерживаться всеми браузерами (каюсь, не знал). А метод charAt() должен поддерживаться всем. Так или иначе, надо проверять.
Поначалу, честно говоря, был озадачен. Полез в доки, естественно — оказалось, точно:
Единственное, чем писать api_secret.substring(i,i+1), наверное, проще будет писать api_secret.charAt(i)
Я просто не интересовался, возможно, там уже что-то подобное есть. Все же, Flash-приложения доступны там уже давным давно.
Про всех говорить не стану, но лично мне не нравится то, что в линуксе еще с ранних версий Flash-плагина существует баг, не позволяющий вводить в текстовые поля русский текст. Вернее даже, не то, что мне это не нравится, а из-за этого я вообще не могу использовать ни одну флешку, в которой надо вводить русский текст.
О, да. По началу, это меня выбило из колеи. Обнаружил чисто случайно, когда экспериментировал с jQuery.
Однако, в этом нет никакой необходимости. Секретный ключ, на самом деле, никакой не секретный, а подпись ни от чего не защищает. Единственное, что можно сделать, украв чужой ключ — это притвориться другим приложением. Но что это даст потенциальному злоумышленнику?
Все финансовые операции проводятся через механизм защищенного взаимодействия, в котором участвует совершенно другой ключ, не фигурирующий на стороне клиента. Кроме того, приложение выполняется в контексте определенного пользователя, так что навредить другому пользователю, злоумышленник не сможет — только себе. Приложению злоумышленник тоже никак не навредит, потому что от имени администратора он все равно не сможет никакие API-функции выполнить.
В общем, красть секретный ключ и подделывать подпись совершенно бесполезно. И ничего страшного, даже если этот ключ будет в тексте в открытом виде. Вообще, из Flash-приложений этот ключ тоже извлекается, при желании.