VerseQ − клавиатурный тренажёр

Скриншот клавиатурного тренажера VerseQ

В VerseQ нет отдельных упражнений — нужно просто вводить текст который показывает программа. Сложность текста автоматически адаптируется на основе темпа ввода и ошибок. Отдельные модули предназначены для тренировки ввода конструкций из языков программирования.

Платная, стоит 199 рублей.

Карьерная страшилка

На сайте City Business School находится несколько образовательных курсов на тему менеджмента, карьеры, эффективности и успеха. Отличительная особенность этих курсов которая сразу бросается в глаза — неприкрытая, доходящая до абсурда, пропаганда буржуазного образа мышления.

Типичный пример в курсе Карьерная страшилка. Комикс из третьей главы описывает случай с велосипедистами.

В начале идёт пояснение

На примере этого комикса поймите, насколько критичны и важны навыки внешней пользы и ваш внутренний мир.

Cитуация в комиксе следующая. Ваш друг упал с велосипеда и находится без сознания. Это произошло в парке, рядом нет людей, кроме одного человека (вероятно, доктор, судя по тексту в конце). Доктор подходит, начинает осматривать вашего друга, и одновременно с этим нести чушь. В конце написан риторический, с точки зрения авторов, вопрос

А вот теперь скажите, имеет ли значение внутренний мир доктора, если в данной конкретной ситуации вам от него нужна лишь компетенция медика?

Видимо, с точки зрения авторов, такой пример демонстрирует что при взаимодействии людей, особенно в критичных или рабочих ситуациях, на первом месте конкретные компетенции, а не личные качества.

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

Но доктор в комиксе вообще подошёл к человеку. Зачем он это сделал? Даже имея нужную квалификацию для оказания медицинской помощи он мог без проблем пройти мимо. Выбор между "пройти мимо" и "остановиться и помочь" и определяется внутренним миром и личными качествами человека.

Таким образом, на последний вопрос под комиксом можно ответить только: да, внутренний мир доктора имеет значение также как и его компетенция медика.


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

vocabulary.com — изучение новых английских слов

Описание слова true из vocabulary.com

vocabulary.com — сайт для пополнения словарного запаса английского языка. Особенности:

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

Сайт можно использовать как словарь.

Фундаментальные принципы объектно ориентированного проектирования (Часть 3): Полиморфизм

Вольный перевод статьи Fundamental Object Oriented Design principles (Part 3): Polymorphism.

Рассмотрим Полиморфизм предоставляемый объектно ориентированными языками программирования.

Это третья часть серии об объектно ориентированном проектировании. Для того чтобы понять почему изучение шаблонов проектирования важно, мы должны начать с рассмотрения того что такое хороший объектно ориентированный дизайн приложения. Объектно ориентированные языки предоставляют уникальные возможности которые содействуют хорошему дизайну приложения.

Рассматриваемые принципы проектирования применены для не объектно ориентированных языков, но с большими сложностями.

Что такое Полиморфизм?

Когда мы ссылаемся на объект мы хотим чтобы его поведение определялось типом объекта, а не типом ссылки которую мы используем. Обращение может идти даже через абстрактный тип (например, class abstract в Delphi), всё равно должны вызываться методы типа конкретного экземпляра объекта на который указывает ссылка. Это суть полиморфизма. Как вы видели в разделе про абстракцию мы можем взаимодействовать с объектами через переменную с типом класса-предка, хотя объект, на который ссылается переменная, на самом деле является экземпляром класса-потомка.

Наиболее общее понимание полиморфизма в том что метод может быть виртуальным. Это означает что класс-потомок может переопределить метод и заменить реализацию предка на свою собственную.

Читать далее Фундаментальные принципы объектно ориентированного проектирования (Часть 3): Полиморфизм

PL/SQL Developer. 6. Переключение баз данных

В PL/SQL Developer позволяет одновременно работать с несколькими базами данных. БД к которой Developer подключается после запуска программы становится активной. Название активной БД написано в заголовке программы.

Заголовок окна PL/SQL Developer

При работе с объектами, или например при создании SQL окна, окно привязывается к активной БД. К какой БД привязано окно видно в статус-баре окна.

Читать далее PL/SQL Developer. 6. Переключение баз данных

Горячие клавиши Telegram

Таблица взята из документации. У меня, в версии для Windows, сработали не все клавиши из списка.

КатегорияКомандаСочетание клавиш
ЧатыНавигация в чате↑ 
↓ 
PageUp 
PageDown
Навигация по
предложенным
стикерам*
↑ 
← 
→ 
Навигация по
предложенным
смайлам**
← 
Перейти к чату
ниже
Ctrl + Tab 
Ctrl + PageDown 
Alt + ↓
Перейти к чату
выше
Ctrl + Shift + Tab 
Ctrl + PageUp 
Alt + ↑
* Выйти
* Вернуться назад
* Отменить текущее
действие
Esc
Отправить файлCtrl + O
СообщенияОтветить (Reply)
на сообщение
Ctrl + ↑ 
Ctrl + ↓
Отменить ответ
(Reply)
Ctrl + ↓
Редактировать
последнее
отправленное
сообщение
Удалить
выделенное
сообщение
Delete
Edit Media ?Ctrl + E
Send GIF Directly ?Ctrl + Mouse Click
ПоискПоиск в выбранном чатеCtrl + F
Выход из поискаEsc
Панель со
списком чатов
Навигация↑ 
Выбрать чатEnter
Удалить чатBackspace
Delete
Отправить
сообщение***
Ctrl + Enter
Прыжок к* Вниз чата
* Прокрутка списка
чатов вверх
Alt + Enter
Saved Messages
(избранное)
Ctrl + 0
Закрепленные чатыCtrl + 1 
Ctrl + 2 
Ctrl + 3 
Ctrl + 4 
Ctrl + 5
Окно
программы
Свернуть в трейCtrl + W 
Alt + F4
Выйти из TelegramCtrl + Q
Заблокировать
Telegram
(у меня не работает)
Ctrl + L
Свернуть TelegramCtrl + M
Выделенный
текст
ЖирныйCtrl + B
КурсивCtrl + I
Создать ссылкуCtrl + K
ПодчеркнутыйCtrl + U
Моноширинный
шрифт
Ctrl + Shift + M
Простой текст
(снимает другие
эффекты)
Ctrl + Shift + N
ЗачёркнутыйCtrl + Shift + X
МышьОтветитьДвойной клик
по сообщению
Выделить
сообщение
Перетащить вне
сообщения
Информация
о сообщении
Наведите на
метку времени
Количество ответов
в опросе
Наведите на
проценты
Переслать
сообщение в чат
Перетащите
сообщение
в чат в списке
Exit Archived Chats (не знаю
как туда зайти)
Back

Комментарии

* Панель с предложенными стикерами появляется при вводе смайлов.

** Панель с предложенными смайлами появляется при вводе некоторых последовательностей символов.

*** Непонятно чем это отличается от просто выбора чата.

Аудит данных в Oracle на основе пакетных переменных и триггеров

В пакеты Oracle можно добавлять переменные. Эти переменные имеют свои значения для каждой сессии. Такое свойство позволяет организовать аудит — лог записей о том кто и когда менял данные в таблицах. Общий алгоритм такой:

  • Создаётся пакет с переменными.
  • После соединения программа записывает в эти переменные данные о пользователе: идентификатор пользователя, открытый модуль и всё что может понадобится для аудита.
  • На таблицы помещаются триггеры которые используют переменные из пакета аудита и записывают информацию о модификации данных в отдельную таблицу.

Почти все описанные изменения производятся в БД. В клиенте добавляется только код регистрации переменных после коннекта. За счёт этого, такой подход может использоваться даже в наборе старых приложений в которых затруднительно найти и изменить все обращения к таблице в клиентах.

Читать далее Аудит данных в Oracle на основе пакетных переменных и триггеров

PL/SQL developer. 5. Горячие клавиши

Настройка горячих клавиш PL/SQL developer производится в меню Tools->Preference->Key Configuration.

Форма настройки горячих клавиш PL/SQL Developer

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

Удобно когда заданы горячие клавиши для нового SQL окна (File / New / SQL Window).

Фундаментальные принципы объектно ориентированного проектирования (Часть 2): Инкапсуляция

Вольный перевод статьи Fundamental Object Oriented Design principles (Part 2): Encapsulation.

Рассмотрим принцип Инкапсуляции используемый объектно ориентированными языкми программирования.

Это вторая часть серии об объектно ориентированном проектировании. Чтобы полностью понять почему изучение шаблонов проектирования важно, мы должны начать с рассмотрения того что такое хороший объектно ориентированный дизайн приложения.

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

Эта статья предполагает что вы знакомы как минимум с одним ОО языком программирования. C++, Delphi, C# и Java являются примерами объектно ориентированных языков. В отличии от них JavaScript основан на объектах, в нём используется прототипирование вместо классов. Настоящий ОО язык программирования имеет классы, объекты и очень часто интерфейсы.

Что такое Инкапсуляция?

Объекты являются строительными блоками используемыми в ОО языках программирования. Объекты — структуры которые инкапсулируют данные и функции вместе, это простейший вид инкапсуляции.

Читать далее Фундаментальные принципы объектно ориентированного проектирования (Часть 2): Инкапсуляция

Мысли про статью Люди как нелинейные и наиболее важные компоненты в создании программного обеспечения

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

Первичным компонентом в проекте являются люди. От них в большей степень зависит успех или провал проекта, другие факторы (методология, артефакты, процесс) влияют в меньшей степени. Другими словами, любую методологию можно применить чтобы сделать проект успешным и также любая методология может привести к провалу проекта. Это следствия того что методология не основной фактор.

Продолжая эти размышления мы приходим к вопросу

Какими качествами обладают люди, которые занимаются разработкой программного обеспечения, и какое влияние они оказывают на проектирование методологии?

Коммуникация

Одни из основных параметров влияющих на проект — это степень коммуникации между людьми. Наиболее эффективными являются обсуждения лицом к лицу, перед доской или ПК. При исключении свойств коммуникации её эффективность падает.

График понижения эффективности коммуникации

Читать далее Мысли про статью Люди как нелинейные и наиболее важные компоненты в создании программного обеспечения