text:
/* eslint-disable @typescript-eslint/no-explicit-any */
import { OpenApi } from '../types/openapi';
import { Reference, Tag, ExternalDocs } from 'swagger-schema-official';

export interface SwaggerGenerator {
  includeRoute?: (route: SwaggerRouteInfo) => boolean;
  disabled?: boolean;
  swaggerJsonPath: string;
  swagger: Omit<OpenApi.OpenApi, 'paths'>;
  updateBlueprintActionTemplates?: (template: BlueprintActionTemplates) => BlueprintActionTemplates;
  defaults?: Defaults;
  postProcess?: (specification: OpenApi.OpenApi) => void;
  excludeDeprecatedPutBlueprintRoutes?: boolean;
}

/**
 * Sails action types.
 *
 * @see https://sailsjs.com/documentation/concepts/routes/custom-routes
 */
export type ActionType = 'controller' | 'standalone' | 'actions2' | 'function';

/**
 * Sails blueprint action types.
 *
 * @see https://sailsjs.com/documentation/concepts/blueprints/blueprint-actions
 */
export type BluePrintAction = 'findone' | 'find' | 'create' | 'update' | 'destroy' | 'populate' | 'add' | 'remove' | 'replace'

export enum Modifiers {
    ADD_POPULATE_QUERY_PARAM = 'addPopulateQueryParam',
    ADD_SELECT_QUERY_PARAM = 'addSelectQueryParam',
    ADD_OMIT_QUERY_PARAM = 'addOmitQueryParam',
    ADD_MODEL_BODY_PARAM = 'addModelBodyParam',
    ADD_MODEL_BODY_PARAM_UPDATE = 'addModelBodyParamUpdate',
    ADD_RESULT_OF_ARRAY_OF_MODELS = 'addResultOfArrayOfModels',
    ADD_ASSOCIATION_PATH_PARAM = 'addAssociationPathParam',
    ADD_ASSOCIATION_FK_PATH_PARAM = 'addAssociationFKPathParam',
    ADD_ASSOCIATION_RESULT_OF_ARRAY = 'addAssociationResultOfArray',
    ADD_RESULT_OF_MODEL = 'addResultOfModel',
    ADD_RESULT_NOT_FOUND = 'addResultNotFound',
    ADD_RESULT_VALIDATION_ERROR = 'addResultValidationError',
    ADD_FKS_BODY_PARAM = 'addFksBodyParam',
    ADD_SHORTCUT_BLUEPRINT_ROUTE_NOTE = 'addShortCutBlueprintRouteNote',
}

type Modifier = Modifiers | ((template: BluePrintActionTemplate, route: SwaggerRouteInfo, path: OpenApi.Operation, tags: Tag[], components: OpenApi.Components) => void)

export interface Defaults {
    responses: { [statusCode: string]: { description: string } };
}

/**
 * JSON used to desribe/document individual Swagger/OpenAPI Operation, with
 * additional annotation to enable excluding the Sails action from the generated Swagger.
 */
export interface SwaggerActionAttribute extends Omit<OpenApi.Operation, 'parameters'|'responses'> {
  parameters?: Array<OpenApi.Parameter>; // allow to be optional (for incremental change within hook)
  responses?: Record<string, OpenApi.Response>; // allow to be optional (for incremental change within hook)
  exclude?: boolean;
}

/**
 * JSON used describe/document Sails Model files, describing the model's **schema**
 * and a list of Swagger/OpenAPI `tags` to be applied to **all** blueprint actions for
 * the model.
 */
export interface SwaggerModelSchemaAttribute extends OpenApi.UpdatedSchema {
  tags?: string[];
  exclude?: boolean;
}

/**
 * JSON used to describe/document Sails Controller file, describing global `tags` and
 * `components` to be added, 'controller' documentation to be applied to **all**
 * actions in the file and per-action documentation.
 */
export interface SwaggerControllerAttribute {
    tags?: Array<Tag>;
    components?: OpenApi.Components;
    actions?: NameKeyMap<SwaggerActionAttribute>;
}

/**
 * JSON used to desribe/document Sails Model definition file, describing global `tags` and
 * `components` to be added, `model` documentation to be applied to **all**
 * blueprint actions for the model and per-action documentation.
 */
export interface SwaggerModelAttribute extends SwaggerControllerAttribute {
  modelSchema?: SwaggerModelSchemaAttribute;
}

/**
 * Extend Sail attribute definition to include `meta.swagger`, including `exclude` for
 * individual attributes.
 */
export interface SwaggerSailsModelAttributeDefinition extends Omit<Sails.AttributeDefinition, 'meta'> {
  meta?: {
    swagger?: OpenApi.UpdatedSchema & {
      exclude?: boolean;
    };
    [name: string]: any;
  };
}

export interface SwaggerSailsModel extends Omit<Sails.Model, 'attributes'> {
    attributes: Record<string, SwaggerSailsModelAttributeDefinition>;
    swagger: SwaggerModelAttribute;
}

export interface SwaggerSailsActions2Input extends Sails.Actions2Input {
  meta?: {
    swagger?: (OpenApi.Parameter | OpenApi.MediaType) & {
      in?: 'query' | 'header' | 'path' | 'cookie' | 'body';
      exclude?: boolean;
    };
    [name: string]: any;
  };
}

export interface SwaggerSailsActions2Exit extends Sails.Actions2Exit {
  meta?: {
    swagger?: OpenApi.Response & {
      exclude?: boolean;
    };
    [name: string]: any;
  };
}

export interface SwaggerSailsActions2Machine extends Omit<Sails.Actions2Machine, 'inputs' | 'exits'> {
  inputs?: NameKeyMap<SwaggerSailsActions2Input>;
  exits?: NameKeyMap<SwaggerSailsActions2Exit>;
}

/**
 * All Sails controller files and actions (as loaded from disk).
 */
export interface SwaggerSailsControllers {

  /// Controller files keyed on controller file identity
  controllerFiles: NameKeyMap<IncludeAll.File & {
    actionType: ActionType;
    defaultTagName: string;
    swagger: SwaggerControllerAttribute;
  }>;

  /// All controller actions keyed on action identity
  actions: NameKeyMap<(Sails.Action | SwaggerSailsActions2Machine) & {
    actionType: ActionType;
    defaultTagName: string;
    swagger?: SwaggerActionAttribute;
  }>;

}

interface BluePrintActionTemplate {
    summary: string;
    description: string;
    externalDocs: ExternalDocs;
    parameters: Array<'primaryKeyPathParameter' | Reference | OpenApi.Parameter>;
    resultDescription: string;
    notFoundDescription?: string;
    modifiers?: Array<Modifier>;
}

export type BlueprintActionTemplates = {
    [action in BluePrintAction]: BluePrintActionTemplate;
};

type ResponseType = 'success' | 'badRequest' | 'forbidden' | 'notFound' | 'error'

export type Action2Response = {
    [type in ResponseType]: { statusCode: string; description: string }
}

export type HTTPMethodVerb = 'all' | 'get' | 'post' | 'put' | 'patch' | 'delete'

export enum MiddlewareType {
    BLUEPRINT = 'BLUEPRINT', //< Sails built-in blueprint middleware
    ACTION = 'ACTION', //< custom action (may include specific per-model blueprint action overrides or custom blueprint actions)
}

/**
 * Metadata relating to Sails action or blueprint action routes.
 */
export interface SwaggerRouteInfo {
  middlewareType: MiddlewareType; //< one of action|blueprint

  verb: HTTPMethodVerb; //< one of all|get|post|put|patch|delete
  path: string; //< full Sails URL as per sails.getUrlFor() including prefix
  variables: string[]; //< list of ALL variables extracted from path e.g. `/pet/:id` --> `id`
  optionalVariables: string[]; //< list of optional variables from path e.g. `/pet/:id?` // XXX TODO make Variable type

  action: string; //< either blueprint action (e.g. 'user/find') or action identity (e.g. 'subdir/reporting/run')
  actionType: ActionType; //< one of controller|standalone|actions2|function
  actions2Machine?: SwaggerSailsActions2Machine; //< for actionType === 'actions2', details of the action2 machine

  model?: SwaggerSailsModel; //< reference to Sails Model (blueprints or custom model action only)
  associationAliases?: string[]; //< association attribute names (relevant blueprint routes only)
  blueprintAction?: string; //< blueprint action (or custom model action) without model identity reference e.g. 'find' (only where model defined)
  isShortcutBlueprintRoute?: boolean; //< true if the route matches a shortcut blueprint route

  defaultTagName?: string; //< default tag name for route, if any, based on Sails Model or Controller

  swagger?: SwaggerActionAttribute; //< per-route Swagger (OpenApi Operation)
}

export interface NameKeyMap<T> {
    [name: string]: T;
}

export type AnnotatedFunction = {
  (): Function;
  swagger?: SwaggerActionAttribute;
}

redpajama_set_name: RedPajamaGithub


Alsahwa Net- Checkpoints of what is called the " security belt forces" prevented on Friday dozens of northern Yemeni from entering the port city of Aden under the pretext that they are from the north.
The correspondent of Alsahwa Net affirmed that some northern citizens were trapped in some checkpoints and that they were subjected to insults by the security belt forces.
He said that some of the trapped persons were sick persons who needed to be treated in hospitals of Aden, and that they were shocked when they were mistreated.


We are thankful for our Anglican heritage and its traditions. At this service, the minister wears robes, we enjoy traditional hymns and regularly celebrate Holy Communion. We share together in morning tea after the service.
We love the joy that kids bring to families. Our 10am service is family-friendly, and has a contemporary feel with modern music. Kids participate with their families for the first 20 minutes, followed by our kids programs for children up to year 6. A crèche is also provided. We join together for morning tea after the service.
This service is conducted in Arabic & English for members of the Sudanese and South Sudanese community. Church with an African flavour!
This is a relaxed but traditional-style service, on the third Wednesday of the month. We sing hymns and celebrate Holy Communion once a quarter. We share together in morning tea after the service. We welcome people from all denominations and backgrounds to join us.
Click the here for 2019 dates.


text:
Computers & Technology magazines
PC magazines
PC Pro DVD Magazine Information
Next Issue:Issue 04, due 13 February 2020
Related Topics: PC magazines
PC Pro DVD magazine subscription
PC Pro magazine is one of the leading monthly magazines in PC section, designed for techno savvy people, who just want to remain updated with the latest technology in the IT and computer section of the world.
Buy a single issue of PC Pro DVD
£7.86 Buy Buy the current issue of PC Pro DVD
£7.86 Buy Buy the next issue of PC Pro DVD
Issue Number 04, due 13 February 2020*
Buy a Subscription to PC Pro DVD
About PC Pro DVD Magazine Subscription
It caters to all kind of needs of those serious IT buffs and provides the actual inside-out of the section. The magazine provides the platform to all those related closely to Information and technology field, as well as computer field, to find out the new innovations in the field, share and exchange of ideas and contribute to the world changing technologies.
The magazine keeps the people remain updated with latest products and new technologies in the field, through their cover stories, reviews, blogs and articles and thus, helping its readers to make a correct and effective decisions and to avoid purchasing mistakes, while they go out in the market for purchasing the accessories. Besides bestowing upon with analysis of products, it also offers free software along with its edition. For beginners too, who want to dabble in this field and hone and foster their knowledge, PC Pro magazine provides the first choice.
It also quenches the thirst of knowledge of any inquisitive person who wants an independent, detailed and illustrative analysis on the existing market products, as well as the new emerging technologies in the computer field, that is it related to hardware or software.
David Paterson - 23 March 2011
Review of PC Pro magazine
Magazine: PC Pro Useful, informative, full of technical detail with allows informed decision making. Interesting articles on relevant technology.

redpajama_set_name: RedPajamaCommonCrawl


text:
require "rubocops/extend/formula"

module RuboCop
  module Cop
    module FormulaAudit
      # This cop checks for various miscellaneous Homebrew coding styles.
      #
      # @api private
      class Lines < FormulaCop
        def audit_formula(_node, _class_node, _parent_class_node, _body_node)
          [:automake, :ant, :autoconf, :emacs, :expat, :libtool, :mysql, :perl,
           :postgresql, :python, :python3, :rbenv, :ruby].each do |dependency|
            next unless depends_on?(dependency)

            problem ":#{dependency} is deprecated. Usage should be \"#{dependency}\"."
          end

          { apr: "apr-util", fortran: "gcc", gpg: "gnupg", hg: "mercurial",
            mpi: "open-mpi", python2: "python" }.each do |requirement, dependency|
            next unless depends_on?(requirement)

            problem ":#{requirement} is deprecated. Usage should be \"#{dependency}\"."
          end

          problem ":tex is deprecated." if depends_on?(:tex)
        end
      end

      # This cop makes sure that a space is used for class inheritance.
      #
      # @api private
      class ClassInheritance < FormulaCop
        def audit_formula(_node, class_node, parent_class_node, _body_node)
          begin_pos = start_column(parent_class_node)
          end_pos = end_column(class_node)
          return unless begin_pos-end_pos != 3

          problem "Use a space in class inheritance: " \
                  "class #{@formula_name.capitalize} < #{class_name(parent_class_node)}"
        end
      end

      # This cop makes sure that template comments are removed.
      #
      # @api private
      class Comments < FormulaCop
        def audit_formula(_node, _class_node, _parent_class_node, _body_node)
          audit_comments do |comment|
            [
              "# PLEASE REMOVE",
              "# Documentation:",
              "# if this fails, try separate make/make install steps",
              "# The URL of the archive",
              "## Naming --",
              "# if your formula fails when building in parallel",
              "# Remove unrecognized options if warned by configure",
              '# system "cmake',
            ].each do |template_comment|
              next unless comment.include?(template_comment)

              problem "Please remove default template comments"
              break
            end
          end

          audit_comments do |comment|
            # Commented-out depends_on
            next unless comment =~ /#\s*depends_on\s+(.+)\s*$/

            problem "Commented-out dependency #{Regexp.last_match(1)}"
          end

          return if formula_tap != "homebrew-core"

          # Citation and tag comments from third-party taps
          audit_comments do |comment|
            next if comment !~ /#\s*(cite(?=\s*\w+:)|doi(?=\s*['"])|tag(?=\s*['"]))/

            problem "Formulae in homebrew/core should not use `#{Regexp.last_match(1)}` comments"
          end
        end
      end

      # This cop makes sure that idiomatic `assert_*` statements are used.
      #
      # @api private
      class AssertStatements < FormulaCop
        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          find_every_method_call_by_name(body_node, :assert).each do |method|
            if method_called_ever?(method, :include?) && !method_called_ever?(method, :!)
              problem "Use `assert_match` instead of `assert ...include?`"
            end

            if method_called_ever?(method, :exist?) && !method_called_ever?(method, :!)
              problem "Use `assert_predicate <path_to_file>, :exist?` instead of `#{method.source}`"
            end

            if method_called_ever?(method, :exist?) && method_called_ever?(method, :!)
              problem "Use `refute_predicate <path_to_file>, :exist?` instead of `#{method.source}`"
            end

            if method_called_ever?(method, :executable?) && !method_called_ever?(method, :!)
              problem "Use `assert_predicate <path_to_file>, :executable?` instead of `#{method.source}`"
            end
          end
        end
      end

      # This cop makes sure that `option`s are used idiomatically.
      #
      # @api private
      class OptionDeclarations < FormulaCop
        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          problem "Use new-style option definitions" if find_method_def(body_node, :options)

          if formula_tap == "homebrew-core"
            # Use of build.with? implies options, which are forbidden in homebrew/core
            find_instance_method_call(body_node, :build, :without?) do
              problem "Formulae in homebrew/core should not use `build.without?`."
            end
            find_instance_method_call(body_node, :build, :with?) do
              problem "Formulae in homebrew/core should not use `build.with?`."
            end

            return
          end

          depends_on_build_with(body_node) do |build_with_node|
            offending_node(build_with_node)
            problem "Use `:optional` or `:recommended` instead of `if #{build_with_node.source}`"
          end

          find_instance_method_call(body_node, :build, :without?) do |method|
            next unless unless_modifier?(method.parent)

            correct = method.source.gsub("out?", "?")
            problem "Use if #{correct} instead of unless #{method.source}"
          end

          find_instance_method_call(body_node, :build, :with?) do |method|
            next unless unless_modifier?(method.parent)

            correct = method.source.gsub("?", "out?")
            problem "Use if #{correct} instead of unless #{method.source}"
          end

          find_instance_method_call(body_node, :build, :with?) do |method|
            next unless expression_negated?(method)

            problem "Don't negate 'build.with?': use 'build.without?'"
          end

          find_instance_method_call(body_node, :build, :without?) do |method|
            next unless expression_negated?(method)

            problem "Don't negate 'build.without?': use 'build.with?'"
          end

          find_instance_method_call(body_node, :build, :without?) do |method|
            arg = parameters(method).first
            next unless (match = regex_match_group(arg, /^-?-?without-(.*)/))

            problem "Don't duplicate 'without': " \
                    "Use `build.without? \"#{match[1]}\"` to check for \"--without-#{match[1]}\""
          end

          find_instance_method_call(body_node, :build, :with?) do |method|
            arg = parameters(method).first
            next unless (match = regex_match_group(arg, /^-?-?with-(.*)/))

            problem "Don't duplicate 'with': Use `build.with? \"#{match[1]}\"` to check for \"--with-#{match[1]}\""
          end

          find_instance_method_call(body_node, :build, :include?) do
            problem "`build.include?` is deprecated"
          end
        end

        def unless_modifier?(node)
          return false unless node.if_type?

          node.modifier_form? && node.unless?
        end

        # Finds `depends_on "foo" if build.with?("bar")` or `depends_on "foo" if build.without?("bar")`
        def_node_search :depends_on_build_with, <<~EOS
          (if $(send (send nil? :build) {:with? :without?} str)
            (send nil? :depends_on str) nil?)
        EOS
      end

      # This cop makes sure that formulae depend on `open-mpi` instead of `mpich`.
      #
      # @api private
      class MpiCheck < FormulaCop
        extend AutoCorrector

        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          # Enforce use of OpenMPI for MPI dependency in core
          return unless formula_tap == "homebrew-core"

          find_method_with_args(body_node, :depends_on, "mpich") do
            problem "Formulae in homebrew/core should use 'depends_on \"open-mpi\"' " \
                    "instead of '#{@offensive_node.source}'." do |corrector|
              corrector.replace(@offensive_node.source_range, "depends_on \"open-mpi\"")
            end
          end
        end
      end

      # This cop makes sure that the safe versions of `popen_*` calls are used.
      #
      # @api private
      class SafePopenCommands < FormulaCop
        extend AutoCorrector

        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          test = find_block(body_node, :test)

          [:popen_read, :popen_write].each do |unsafe_command|
            test_methods = []

            unless test.nil?
              find_instance_method_call(test, "Utils", unsafe_command) do |method|
                test_methods << method.source_range
              end
            end

            find_instance_method_call(body_node, "Utils", unsafe_command) do |method|
              unless test_methods.include?(method.source_range)
                problem "Use `Utils.safe_#{unsafe_command}` instead of `Utils.#{unsafe_command}`" do |corrector|
                  corrector.replace(@offensive_node.loc.selector, "safe_#{@offensive_node.method_name}")
                end
              end
            end
          end
        end
      end

      # This cop makes sure that environment variables are passed correctly to `popen_*` calls.
      #
      # @api private
      class ShellVariables < FormulaCop
        extend AutoCorrector

        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          popen_commands = [
            :popen,
            :popen_read,
            :safe_popen_read,
            :popen_write,
            :safe_popen_write,
          ]

          popen_commands.each do |command|
            find_instance_method_call(body_node, "Utils", command) do |method|
              next unless (match = regex_match_group(parameters(method).first, /^([^"' ]+)=([^"' ]+)(?: (.*))?$/))

              good_args = "Utils.#{command}({ \"#{match[1]}\" => \"#{match[2]}\" }, \"#{match[3]}\")"

              problem "Use `#{good_args}` instead of `#{method.source}`" do |corrector|
                corrector.replace(@offensive_node.source_range,
                                  "{ \"#{match[1]}\" => \"#{match[2]}\" }, \"#{match[3]}\"")
              end
            end
          end
        end
      end

      # This cop makes sure that `license` has the correct format.
      #
      # @api private
      class LicenseArrays < FormulaCop
        extend AutoCorrector

        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          license_node = find_node_method_by_name(body_node, :license)
          return unless license_node

          license = parameters(license_node).first
          return unless license.array_type?

          problem "Use `license any_of: #{license.source}` instead of `license #{license.source}`" do |corrector|
            corrector.replace(license_node.source_range, "license any_of: #{parameters(license_node).first.source}")
          end
        end
      end

      # This cop makes sure that nested `license` declarations are split onto multiple lines.
      #
      # @api private
      class Licenses < FormulaCop
        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          license_node = find_node_method_by_name(body_node, :license)
          return unless license_node
          return if license_node.source.include?("\n")

          parameters(license_node).first.each_descendant(:hash).each do |license_hash|
            next if license_exception? license_hash

            problem "Split nested license declarations onto multiple lines"
          end
        end

        def_node_matcher :license_exception?, <<~EOS
          (hash (pair (sym :with) str))
        EOS
      end

      # This cop makes sure that Python versions are consistent.
      #
      # @api private
      class PythonVersions < FormulaCop
        extend AutoCorrector

        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          python_formula_node = find_every_method_call_by_name(body_node, :depends_on).find do |dep|
            string_content(parameters(dep).first).start_with? "python@"
          end

          return if python_formula_node.blank?

          python_version = string_content(parameters(python_formula_node).first).split("@").last

          find_strings(body_node).each do |str|
            content = string_content(str)

            next unless (match = content.match(/^python(@)?(\d\.\d+)$/))
            next if python_version == match[2]

            fix = if match[1]
              "python@#{python_version}"
            else
              "python#{python_version}"
            end

            offending_node(str)
            problem "References to `#{content}` should "\
                    "match the specified python dependency (`#{fix}`)" do |corrector|
              corrector.replace(str.source_range, "\"#{fix}\"")
            end
          end
        end
      end

      # This cop makes sure that OS conditionals are consistent.
      #
      # @api private
      class OSConditionals < FormulaCop
        extend AutoCorrector

        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          no_on_os_method_names = [:install, :post_install].freeze
          no_on_os_block_names = [:test].freeze
          [[:on_macos, :mac?], [:on_linux, :linux?]].each do |on_method_name, if_method_name|
            if_method_and_class = "if OS.#{if_method_name}"
            no_on_os_method_names.each do |formula_method_name|
              method_node = find_method_def(body_node, formula_method_name)
              next unless method_node
              next unless method_called_ever?(method_node, on_method_name)

              problem "Don't use '#{on_method_name}' in 'def #{formula_method_name}', " \
                      "use '#{if_method_and_class}' instead." do |corrector|
                block_node = offending_node.parent
                next if block_node.type != :block

                # TODO: could fix corrector to handle this but punting for now.
                next if block_node.single_line?

                source_range = offending_node.source_range.join(offending_node.parent.loc.begin)
                corrector.replace(source_range, if_method_and_class)
              end
            end

            no_on_os_block_names.each do |formula_block_name|
              block_node = find_block(body_node, formula_block_name)
              next unless block_node
              next unless method_called_in_block?(block_node, on_method_name)

              problem "Don't use '#{on_method_name}' in '#{formula_block_name} do', " \
                      "use '#{if_method_and_class}' instead." do |corrector|
                block_node = offending_node.parent
                next if block_node.type != :block

                # TODO: could fix corrector to handle this but punting for now.
                next if block_node.single_line?

                source_range = offending_node.source_range.join(offending_node.parent.loc.begin)
                corrector.replace(source_range, if_method_and_class)
              end
            end

            # Don't restrict OS.mac? or OS.linux? usage in taps; they don't care
            # as much as we do about e.g. formulae.brew.sh generation, often use
            # platform-specific URLs and we don't want to add DSLs to support
            # that case.
            next if formula_tap != "homebrew-core"

            find_instance_method_call(body_node, "OS", if_method_name) do |method|
              valid = T.let(false, T::Boolean)
              method.each_ancestor do |ancestor|
                valid_method_names = case ancestor.type
                when :def
                  no_on_os_method_names
                when :block
                  no_on_os_block_names
                else
                  next
                end
                next unless valid_method_names.include?(ancestor.method_name)

                valid = true
                break
              end
              next if valid

              offending_node(method)
              problem "Don't use '#{if_method_and_class}', use '#{on_method_name} do' instead." do |corrector|
                if_node = method.parent
                next if if_node.type != :if

                # TODO: could fix corrector to handle this but punting for now.
                next if if_node.unless?

                corrector.replace(if_node.source_range, "#{on_method_name} do\n#{if_node.body.source}\nend")
              end
            end
          end
        end
      end

      # This cop checks for other miscellaneous style violations.
      #
      # @api private
      class Miscellaneous < FormulaCop
        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          # FileUtils is included in Formula
          # encfs modifies a file with this name, so check for some leading characters
          find_instance_method_call(body_node, "FileUtils", nil) do |method_node|
            problem "Don't need 'FileUtils.' before #{method_node.method_name}"
          end

          # Check for long inreplace block vars
          find_all_blocks(body_node, :inreplace) do |node|
            block_arg = node.arguments.children.first
            next unless block_arg.source.size > 1

            problem "\"inreplace <filenames> do |s|\" is preferred over \"|#{block_arg.source}|\"."
          end

          [:rebuild, :version_scheme].each do |method_name|
            find_method_with_args(body_node, method_name, 0) do
              problem "'#{method_name} 0' should be removed"
            end
          end

          find_instance_call(body_node, "ARGV") do |_method_node|
            problem "Use build instead of ARGV to check options"
          end

          find_instance_method_call(body_node, :man, :+) do |method|
            next unless (match = regex_match_group(parameters(method).first, /^man[1-8]$/))

            problem "\"#{method.source}\" should be \"#{match[0]}\""
          end

          # Avoid hard-coding compilers
          find_every_method_call_by_name(body_node, :system).each do |method|
            param = parameters(method).first
            if (match = regex_match_group(param, %r{^(/usr/bin/)?(gcc|llvm-gcc|clang)(\s|$)}))
              problem "Use \"\#{ENV.cc}\" instead of hard-coding \"#{match[2]}\""
            elsif (match = regex_match_group(param, %r{^(/usr/bin/)?((g|llvm-g|clang)\+\+)(\s|$)}))
              problem "Use \"\#{ENV.cxx}\" instead of hard-coding \"#{match[2]}\""
            end
          end

          find_instance_method_call(body_node, "ENV", :[]=) do |method|
            param = parameters(method)[1]
            if (match = regex_match_group(param, %r{^(/usr/bin/)?(gcc|llvm-gcc|clang)(\s|$)}))
              problem "Use \"\#{ENV.cc}\" instead of hard-coding \"#{match[2]}\""
            elsif (match = regex_match_group(param, %r{^(/usr/bin/)?((g|llvm-g|clang)\+\+)(\s|$)}))
              problem "Use \"\#{ENV.cxx}\" instead of hard-coding \"#{match[2]}\""
            end
          end

          # Prefer formula path shortcuts in strings
          formula_path_strings(body_node, :share) do |p|
            next unless (match = regex_match_group(p, %r{^(/(man))/?}))

            problem "\"\#{share}#{match[1]}\" should be \"\#{#{match[2]}}\""
          end

          formula_path_strings(body_node, :prefix) do |p|
            if (match = regex_match_group(p, %r{^(/share/(info|man))$}))
              problem "\"\#\{prefix}#{match[1]}\" should be \"\#{#{match[2]}}\""
            end
            if (match = regex_match_group(p, %r{^((/share/man/)(man[1-8]))}))
              problem "\"\#\{prefix}#{match[1]}\" should be \"\#{#{match[3]}}\""
            end
            if (match = regex_match_group(p, %r{^(/(bin|include|libexec|lib|sbin|share|Frameworks))}i))
              problem "\"\#\{prefix}#{match[1]}\" should be \"\#{#{match[2].downcase}}\""
            end
          end

          find_every_method_call_by_name(body_node, :depends_on).each do |method|
            key, value = destructure_hash(parameters(method).first)
            next if key.nil? || value.nil?
            next unless (match = regex_match_group(value, /^(lua|perl|python|ruby)(\d*)/))

            problem "#{match[1]} modules should be vendored rather than use deprecated `#{method.source}`"
          end

          find_every_method_call_by_name(body_node, :system).each do |method|
            next unless (match = regex_match_group(parameters(method).first, /^(env|export)(\s+)?/))

            problem "Use ENV instead of invoking '#{match[1]}' to modify the environment"
          end

          find_every_method_call_by_name(body_node, :depends_on).each do |method|
            param = parameters(method).first
            dep, option_child_nodes = hash_dep(param)
            next if dep.nil? || option_child_nodes.empty?

            option_child_nodes.each do |option|
              find_strings(option).each do |dependency|
                next unless (match = regex_match_group(dependency, /(with(out)?-\w+|c\+\+11)/))

                problem "Dependency #{string_content(dep)} should not use option #{match[0]}"
              end
            end
          end

          find_instance_method_call(body_node, :version, :==) do |method|
            next unless parameters_passed?(method, "HEAD")

            problem "Use 'build.head?' instead of inspecting 'version'"
          end

          find_instance_method_call(body_node, "ARGV", :include?) do |method|
            next unless parameters_passed?(method, "--HEAD")

            problem "Use \"if build.head?\" instead"
          end

          find_const(body_node, "MACOS_VERSION") do
            problem "Use MacOS.version instead of MACOS_VERSION"
          end

          find_const(body_node, "MACOS_FULL_VERSION") do
            problem "Use MacOS.full_version instead of MACOS_FULL_VERSION"
          end

          conditional_dependencies(body_node) do |node, method, param, dep_node|
            dep = string_content(dep_node)
            if node.if?
              if (method == :include? && regex_match_group(param, /^with-#{dep}$/)) ||
                 (method == :with? && regex_match_group(param, /^#{dep}$/))
                offending_node(dep_node.parent)
                problem "Replace #{node.source} with #{dep_node.parent.source} => :optional"
              end
            elsif node.unless?
              if (method == :include? && regex_match_group(param, /^without-#{dep}$/)) ||
                 (method == :without? && regex_match_group(param, /^#{dep}$/))
                offending_node(dep_node.parent)
                problem "Replace #{node.source} with #{dep_node.parent.source} => :recommended"
              end
            end
          end

          find_method_with_args(body_node, :fails_with, :llvm) do
            problem "'fails_with :llvm' is now a no-op so should be removed"
          end

          find_method_with_args(body_node, :needs, :openmp) do
            problem "'needs :openmp' should be replaced with 'depends_on \"gcc\"'"
          end

          find_method_with_args(body_node, :system, /^(otool|install_name_tool|lipo)/) do
            problem "Use ruby-macho instead of calling #{@offensive_node.source}"
          end

          find_every_method_call_by_name(body_node, :system).each do |method_node|
            # Skip Kibana: npm cache edge (see formula for more details)
            next if @formula_name.match?(/^kibana(@\d[\d.]*)?$/)

            first_param, second_param = parameters(method_node)
            next if !node_equals?(first_param, "npm") ||
                    !node_equals?(second_param, "install")

            offending_node(method_node)
            problem "Use Language::Node for npm install args" unless languageNodeModule?(method_node)
          end

          problem "Use new-style test definitions (test do)" if find_method_def(body_node, :test)

          find_method_with_args(body_node, :skip_clean, :all) do
            problem "`skip_clean :all` is deprecated; brew no longer strips symbols. " \
                    "Pass explicit paths to prevent Homebrew from removing empty folders."
          end

          if find_method_def(processed_source.ast)
            problem "Define method #{method_name(@offensive_node)} in the class body, not at the top-level"
          end

          find_instance_method_call(body_node, :build, :universal?) do
            next if @formula_name == "wine"

            problem "macOS has been 64-bit only since 10.6 so build.universal? is deprecated."
          end

          find_instance_method_call(body_node, "ENV", :universal_binary) do
            next if @formula_name == "wine"

            problem "macOS has been 64-bit only since 10.6 so ENV.universal_binary is deprecated."
          end

          find_instance_method_call(body_node, "ENV", :runtime_cpu_detection) do
            next if tap_style_exception? :runtime_cpu_detection_allowlist

            problem "Formulae should be verified as having support for runtime hardware detection before " \
                    "using ENV.runtime_cpu_detection."
          end

          find_every_method_call_by_name(body_node, :depends_on).each do |method|
            next unless method_called?(method, :new)

            problem "`depends_on` can take requirement classes instead of instances"
          end

          find_instance_method_call(body_node, "ENV", :[]) do |method|
            next unless modifier?(method.parent)

            param = parameters(method).first
            next unless node_equals?(param, "CI")

            problem 'Don\'t use ENV["CI"] for Homebrew CI checks.'
          end

          find_instance_method_call(body_node, "Dir", :[]) do |method|
            next unless parameters(method).size == 1

            path = parameters(method).first
            next unless path.str_type?
            next unless (match = regex_match_group(path, /^[^*{},]+$/))

            problem "Dir([\"#{string_content(path)}\"]) is unnecessary; just use \"#{match[0]}\""
          end

          fileutils_methods = Regexp.new(
            FileUtils.singleton_methods(false)
                     .map { |m| "(?-mix:^#{Regexp.escape(m)}$)" }
                     .join("|"),
          )
          find_every_method_call_by_name(body_node, :system).each do |method|
            param = parameters(method).first
            next unless (match = regex_match_group(param, fileutils_methods))

            problem "Use the `#{match}` Ruby method instead of `#{method.source}`"
          end
        end

        def modifier?(node)
          return false unless node.if_type?

          node.modifier_form?
        end

        def_node_search :conditional_dependencies, <<~EOS
          {$(if (send (send nil? :build) ${:include? :with? :without?} $(str _))
              (send nil? :depends_on $({str sym} _)) nil?)

           $(if (send (send nil? :build) ${:include? :with? :without?} $(str _)) nil?
              (send nil? :depends_on $({str sym} _)))}
        EOS

        def_node_matcher :hash_dep, <<~EOS
          (hash (pair $(str _) $...))
        EOS

        def_node_matcher :destructure_hash, <<~EOS
          (hash (pair $(str _) $(sym _)))
        EOS

        def_node_search :formula_path_strings, <<~EOS
          {(dstr (begin (send nil? %1)) $(str _ ))
           (dstr _ (begin (send nil? %1)) $(str _ ))}
        EOS

        # Node Pattern search for Language::Node
        def_node_search :languageNodeModule?, <<~EOS
          (const (const nil? :Language) :Node)
        EOS
      end
    end

    module FormulaAuditStrict
      # This cop makes sure that no build-time checks are performed.
      #
      # @api private
      class MakeCheck < FormulaCop
        def audit_formula(_node, _class_node, _parent_class_node, body_node)
          return if formula_tap != "homebrew-core"

          # Avoid build-time checks in homebrew/core
          find_every_method_call_by_name(body_node, :system).each do |method|
            next if @formula_name.start_with?("lib")
            next if tap_style_exception? :make_check_allowlist

            params = parameters(method)
            next unless node_equals?(params[0], "make")

            params[1..].each do |arg|
              next unless regex_match_group(arg, /^(checks?|tests?)$/)

              offending_node(method)
              problem "Formulae in homebrew/core (except e.g. cryptography, libraries) " \
                      "should not run build-time checks"
            end
          end
        end
      end

      # This cop ensures that new formulae depending on removed Requirements are not used
      class Requirements < FormulaCop
        def audit_formula(_node, _class_node, _parent_class_node, _body_node)
          problem "Formulae should depend on a versioned `openjdk` instead of :java" if depends_on? :java
          problem "Formulae should depend on specific X libraries instead of :x11" if depends_on? :x11
          problem "Formulae should not depend on :osxfuse" if depends_on? :osxfuse
          problem "Formulae should not depend on :tuntap" if depends_on? :tuntap
        end
      end
    end
  end
end


Seafarers and university students are being better served by their chaplains because of grants from Niagara Diocese.
The Mission to Seafarers of Southern Ontario received a grant to support their chaplaincy work. They serve seafarers in Hamilton, the third largest port in Canada, and The Bridge in Hamilton, whose Ananias House Chapel attends to the spiritual needs of socially marginalized adults.
Universities affiliated with the diocese—McMaster, Guelph, and Brock—received funds through the ongoing legacy of the Survive and Thrive Outreach Endowment.
University chaplaincies generally provide personal support, places for prayer, worship and a variety of programs.
Grants are awarded for a two-year period with a maximum of $8,500 annually. Created in 2014, $30,000 has been allocated to support chaplaincy ministries.


Welcome to the getting started tutorial of AudioNodes!
The articles in this guide will teach you the basics, and also introduce most features of AudioNodes in the process. We recommend to read them in order, as most articles will require you to understand concepts introduced previously.
Thank you for giving AudioNodes a chance, we hope you'll like it. If you have any questions or suggestions, please don't hesitate to post on the community discussion board. Please also remember, AudioNodes is still a work in progress, and some features might not work exactly as they should.


text:
Biden Announces 'historic' Deal — But There's No Action Yet
Leave a Comment / politics / By James Watson / October 29, 2021 October 29, 2021 / 5 minutes of reading
President Joe Biden as well as Democrats in Congress have found a way to make the policies from his big package. But he still needs to get votes from people for his smaller bill.
Biden was excited to get a deal before he left for summits. He talked privately with Democrats in Congress and publicly at the White House. The White House wanted a package that would be able to pass the Senate, which is 50-50. It had social services and climate change programs that were worth $1.75 trillion dollars.
Democrats are getting closer to a deal. They still have relatively little works to do, though, and they also have meetings ahead of them.
Biden said, "let's get this done."
"This will change the lives of many people. It will make them happier. The package would show that American democracy is not dead." Together with a $1 trillion infrastructure bill, Biden said that this would be a domestic achievement. He said it would be like Franklin Roosevelt's and Lyndon Johnson's achievements.
Biden told the lawmakers at the Capitol that he needs their votes. He asked them to vote for him.
But the final votes will not be called for a while. The revised package has been changed, and some of the top priorities have been lost. This makes many lawmakers frustrated because President Trump's ambitions are less important than the reality of Congress, which is divided.
The plan to give people paid family leave, or help lower the prices of drugs, is now gone. Some lawmakers and advocates are very angry about this. The president still has many other things to do. One of them is free prekindergarten for all children, expanded health care programs, and tackling climate change.
If you have a child and you need to take care of them, there is $100 billion for the immigration and border processing system. The COVID-19 rescue helped to put this in place. A Democratic senator who did not want to vote for the bill said, "I am waiting to get it done."
However, another senator said he was not sure about it. The person's name is Joe Manchin from West Virginia. He said, "This is all in the hands of the House right now." The two Democrats have worked hard to make the party's big vision smaller. They are important to making the deal happen.
Republicans are against this, and it is hard for Biden to get things done. He needs Democrats, and they only have a narrow majority in the House and Senate. After negotiations, Biden's bill is still among the most sweeping in a generation.
As he was going to the meetings, Biden made it clear how important it was to show progress. He said, "We are at a turning point." All of the other countries are wondering if America can function. Biden asked for a lively vote. Richard Neal said he would do his best to make that happen.
Also, Read 'He Has to Take It a Step Further': Biden Carefully Navigates 'striketober'
Twice during a meeting, Democratic lawmakers stood up and yelled: "Vote, vote, vote!" Rep. Gerald Connolly from Virginia said that. President Biden had a new plan. That plan would be paid for by making some people pay more taxes. It would also give back money to people who earn less than $400,000 a year.
If you buy this package, you will make more money. We will also take some of the money that Donald Trump's team gave to people who don't pay taxes and use it for these packages. If someone doesn't want this package, Joe Biden promises to put all the money back into the government so that they can't spend it on things like paying their debts.
The framework for the law has been changed, so it is now 1,600 pages long. But it has not yet been agreed to by lawmakers and aides.
Representative Pramila Jayapal, the progressive leader, said that her caucus endorsed the framework. Progressive lawmakers worked to delay further action. They want to see what is in the text because they don't want anybody to be confused or misunderstand anything.
Nancy Pelosi, the speaker of the House, said that Joe Biden asked her to vote on an infrastructure bill. The Senate already voted for it. But there is a problem with the broader bill. There are progressives who were not happy about this because they thought that Biden didn't seem to be in a hurry to vote on the infrastructure bill.
The Democrats haven't voted on the roads-and-bridges bill. They are waiting for Democrats to agree on a bigger package.
The congresswoman, Rashida Tlaib, said "No" about letting the bill that fixes up our roads and bridges pass.
Representative Cori Bush, D-Mo., shared her story of working for low wages and how she couldn't afford to take care of her children. She wants to make positive other people who don't have the same struggles.
Some people want to ride on the bus, and we can't do that because we need two bills. And if we don't have those, then it will be hard for us to ride. I feel a bit bamboozled because I thought something different was going to happen today.
Also, Read Orthopedic Surgeon Convicted in Tax Fraud Scheme
Instead, Congress approved an extension to Sunday's deadline for funds that were at risk of expiring. Two Democrat senators now hold a lot of power. They can decide if Biden will be able to deliver on our major campaign promises.
Sinema is pushing the Democratic party to not undo the Republican's 2017 tax cuts. And Manchin pushed back on a plan for clean energy, cutting paid family leave and imposing work requirements for parents who receive child care support.
Progressives achieved one key priority. They wanted Bernie Sanders' idea for people on Medicare to get hearing aids. Progressives also wanted him to include dental, and vision cares too. Other insurance plans give subsidies to people who can't afford the cost of health care in states that don't have Obamacare.
This new package will set up some political battles in the future. For example, the child care tax credit expires at the same time as next year's midterm elections. Meanwhile, most of the health care funding will expire in 2025. This is a good strategy for politicians to get attention ahead of their presidential campaign.
The War Chest that Trump Built: $102 Million
politics / August 2, 2021 August 4, 2021
The Infrastructure Bill – How to Protect Your Company Now
Anthony Wong, the singer from Hong Kong, has been charged with corruption.
Crime, politics / August 2, 2021 August 4, 2021
Facebook Says It Has Banned All Content Related To Or Supporting Taliban
politics / August 17, 2021 August 17, 2021


text:
Steven Brand est un acteur écossais, né le  à Dundee.

Filmographie

Cinéma
 1994 : Beyond Bedlam de Vadim Jean
 2002 : Le Roi Scorpion de Chuck Russell : Memnon
 2007 : Treasure Raiders de Brent Huff : Michael Nazzaro
 2007 : Say it in Russian de Jeff Celentano : Andrew Lamont
 2008 : Stone & Ed de Adam Meyerovitz : Mr Black
 2008 : 15-40 de Christian B. Bagger : Erik Bjarnson
 2008 : XII de Michael A. Nickles : Agent Naughton
 2008 : Attraction (The Human Contract) de Jada Pinkett Smith : Boyd
 2011 : Hellraiser: Revelations de Victor Garcia : Dr. Ross Craven

Télévision
 1990 : The Darling Buds of May. Saison 3, épisodes 1, 2, 5 et 6.
 1999 : Petites histoires entre amants (Love in the 21st Century) (série télévisée)
 2001 : Le Journal intime d'un homme marié (The Mind of the Married Man) (série télévisée)
 2003 : Le Journal d'Ellen Rimbauer (The Diary of Ellen Rimbauer) (TV)
 2003 : Roman noir (série) (Mystery Woman) (Téléfilm)
 2004 : Les Experts
 2005 : NCIS : Enquêtes spéciales (série télévisée)
 2009 : Les Experts : Miami (série télévisée)
 2009 : 90210 Beverly Hills : Nouvelle Génération (série télévisée)
 2010 : NCIS : Los Angeles (série télévisée)
 2011 : Un bungalow pour six (Téléfilm)
  2014-2016 : Teen Wolf : (Saisons 4 et 5) Dr Valack
 2016 : Échange mortel : Conner (TV)
 2016 : No Tomorrow

Liens externes

Acteur écossais
Naissance à Dundee
Naissance en juin 1969

redpajama_set_name: RedPajamaWikipedia


text:
metaphor, violence, and bullying
When I started this blog, I had no reason to think that I would keep making posts that have been, at their core, about the power of words, bullying, and emotional violence towards ourselves and towards others. But a quick survey of my first posts sure do seem like I've got my teeth into something and don't quite want to let go.
As someone who's been a target of nastiness on and off the Internet because I'm terrible at keeping my head down, this preoccupation is hardly surprising. But the truth is that I've been talking about these issues because of my own propensities for cruelty, not just, as I've already written about, towards myself, but also towards others.
It is, frankly, hard for me, because of my own insecurities, to be happy for others when they succeed in fields of endeavor that I also pursue. It's far, far far too easy for me to think that should have been me and then dwell on why I think someone doesn't deserve success or why that success isn't all that. It's a nasty vicious habit, even when indulged in solely in the privacy of my own skull, and one I'm committed to stopping in myself and in others. What is, after all, the cost of more joy?
We seem to be, and in fact I can only now hope, at a moment in our society wherein we recognize and address the power of words. Teen suicides in response to anti-gay bullying, a phenomenon that's been going on for years, are finally getting media attention. Conversations like It Gets Better have led to broader discussions of bullying behavior, as well as the tenor of Internet discourse on both news sites and social networking venues. There is, in my own reading of this coverage and discussion, a sense of understanding that has seemed absent in the past that words have consequences.
Today is one of those days where words have had consequences, horrific ones. A gunman shot 19 people in Arizona, killing 6, including a 9-year-old girl and a federal judge. A congresswoman is in critical condition after sustaining a bullet wound to the head. At this moment little is known about the shooter, although his online writings have surfaced. Those writings do not reflect mainstream opinion of any major party and are also hard to make grammatical and logical sense of. However, law enforcement officials have disclosed that they feel the shooter did target the congresswoman explicitly.
That, even as an act of a lone individual, makes today's tragedy, among other things, an act of political violence. And that act of political violence has occurred in the midst of rhetoric that has been extraordinarily heated.
Now, to be fair, heated political rhetoric isn't necessarily anything new. And the use of metaphor, especially war metaphor, for political combat is also nothing new. And I hesitate, always, when I find myself making any argument that speaks out against metaphor. I'm a writer; I love metaphor; metaphor is an awesome tool. So is, to be frank, the power of rhetorical extremity — it's the difference between "sometimes I think my mother never loved me" and "my mother never loved me."
But words have consequences. And when political violence has occurred (and let's be clear, by the way, that political violence occurs every single day in the US, it occurs, among other occasions, every time someone is assaulted for their race, religion, sexual orientation or gender identity), we must pause to consider the consequences of our rhetorical flourishes.
Sure, rational people of all political persuasions can probably agree that Sarah Palin's crosshairs graphic wasn't meant to actually advocate shooting people. We're probably also all relatively certain that Sharon Angle wasn't advocating an actual armed insurrection when she discussed the possibility of a "second amendment remedies."
But violent rhetoric does have consequences. It ups the stakes. The metaphors that enrapture supporters for their linguistic art or demographic cleverness and are meant to encourage proof of loyalty through campaign contributions and peaceful activism also make room for other, misguided, proofs of loyalty at the fringe. Yes, without violent political rhetoric, political violence will still happen. But with it, each of us who engages in it, and stays silence in the face of it, bears some fraction of culpability for the political violence that emerges from the climate we have fostered.
Words have consequences, and so each of us walks this world with the extraordinary power to hurt ourselves, our loved-ones, our peers, strangers on the Internet, and our broader society. But, of course, and we hope more importantly, we also have in our words the extraordinary power to advocate for civil discourse, the democratic process, love, and possibility.
So don't advocate political violence. Speak out both when people you do and don't support engage in rhetoric that you feel thrusts us into a climate that allows even those at the fringe to view acts of violence as legitimate expressions of loyalty or dissent. And accept that a panoply of opinions defines not just our society, but also any sub-grouping of which you may also be a member. (To be extra clear, this isn't about restricting speech or the idea that some words or expression should be banned, this is about think about what comes out of your damn mouth before you say it and when you see crap that you think is toxic speak the hell out about it.)
And on a smaller, more private scale that has nothing to do with politics but certainly everything to do with how we live now? Try allowing yourself more joy for the successes of others. Your mileage may vary, but for me, it's proving to be a path to being gentler, not just with other people, but also with myself. And that's lovely; no matter how wounded I have been, I never, ever want to be the worst bully I know.
Author Racheline MaltesePosted on January 8, 2011 March 8, 2012 Categories personal, politics
5 thoughts on "metaphor, violence, and bullying"
heron61 says:
"We're probably also all relatively certain that Sharon Angle wasn't advocating an actual armed insurrection when she discussed the possibility of a "second amendment solution.""
I actually don't see that at all – she's honestly scary enough that I think she meant *exactly* what she said, and she's not the only public figure on the right to say such things. Sure, I think Palin crosshairs nonsense was just using violent rhetoric for impact, that the sort of thing she does a lot, but several major right-wing figures (IIRC, including Palin) have made statements that went beyond mere violent rhetoric to actually advocating violence (in a fairly vague fashion, because most of them are not stupid enough to do otherwise).
newwaytowrite says:
I have made in recent years diligent attempts to remove myself from gossip. When someone says, " I shouldn't tell you this." I respond with, "Then don't." Or, "I don't want to know." It has stop feelings of regret. And often the person wanting to share gossip or private information not meant for my ears are taken aback by my responses.
I look at this post as a reminder to me that the pain of others or the success of others neither make me stronger nor a failure.
I see a lot of it as The Daily Show's Team Evil or Team Stupid dilemma.
Pingback: Words have power and meaning « The random musings of a 1973 Original
dabhug says:
Excellent, excellent article. J and I had conversations with these same points yesterday.
Previous Previous post: the things I know about begging
Next Next post: PSAs
RT @nacarty: If she's gonna do all the work she may as well be president. 1 hour ago
RT @logospilgrim: Be immodest. 1 hour ago


19/11/2014 in blog, Christianity, Freedom of Speech, Political, Post-modernism, Religion, Theology.
17/11/2014 in Political, Political Correctness, Religion.
07/08/2014 in blog, Christianity, Creation & Evolution, Creation/Evolution.
20/12/2013 in Artificial Intelligent, blog, Creation & Evolution, Gnosticism, New World Order, Transhumanism.


Crown Worldwide Group is a unified organisation, and the companies that make up the group share a common quality—the experience and insight to know how to accomplish anything, from the complex to the routine.
Our company of people around the world help you to manage a globally mobile workforce, to take care of worldwide relocations, to ensure the safe transit of fine art works, or to protect the integrity of your corporate information.
Maximising value from corporate memory through the storage, active management, smart and timely distribution of information assets across the enterprise.
Adding value to supply chains in sectors as specialised as oil and gas through to hotels and high-end retailers. Services range from project management through to specialised handling, forwarding, installation and third party logistics.


text:
Q: So online video files can have previews as well? So I found a video in a site that had a paywall, but did have a preview before it paused. I won't show the for personal reasons.
However, I opened the video address in a new tab. And things got worse and more interesting. The video was your typical online .mp4 video you can open up on Google. But it was also a preview.
It had the full video, but only allowed you to watch a small portion of it. And when it stopped and I pressed play, the playback when back to the beginning. And to make matters weirder, when I downloaded the video it only downloaded a small part of it.
So is there a way to edit a video or link that has that, or is it more complex, because I'm not programming genius or anything like that.
I did try going on inspect and tackling it through finding the mp4 on the Elements and network, just to find the same link.
Here's part of the link that I feel is important: ?temp_url_expires=1669424929&temp_url_id=086f4628-ce77-48b9-89f7-e24f3b3f3848&countable=true&filename=resolution_360p&inline=true&content_type=video/mp4&concurrency=32&rate_limit=0&response_limit=5595000&ip_access_policy=everyone&tags=file_type:video_360p,action:limited_view,project:partner,user_file_id:78fadc91d74d7,user_id:&temp_url_issuer=5445f78a91de707b297e67ed&temp_url_sig=7642ffa346f89a78fbef781d5c5e5e6ed7625a323c680192032f3c95611046f4b236e0c0bdc83a757e343837d2e6573cb5d47dd2c272242a320eb1ff3e401335&client_ip=

redpajama_set_name: RedPajamaStackExchange


text:
Microsoft and Marimba Propose Open Software Description Format; Leading Companies Endorse XML-Based Specification
REDMOND, Wash., Aug. 14, 1997 — Microsoft Corp. and Marimba Inc. today jointly proposed the first open, industry data format that will help to automate software distribution over the Internet and reduce the total cost of PC ownership for corporations. Leading Internet companies CyberMedia, InstallShield Software Corp., LANovation, Lotus Development Corp. and Netscape Communications Corp. immediately endorsed the specification.
The Open Software Description (OSD) specification provides a data format or vocabulary to describe software components, their versions, their underlying structure and their relationships to other components. OSD is based on the eXtensible Mark-up Language (XML), which is an emerging new standard in process at the W3C that will become the universal language for describing data on the Internet, complementing HTML. The OSD specification is available at http://msdn.microsoft.com/workshop/management/osd/osdfaq.asp
"XML is already driving the next generation of Web applications," said David Cole, vice president of the Internet client and collaboration division at Microsoft. "OSD, along with channel definition format (CDF), is another great example of XML in action. As another step in our Zero Administration initiative for Windows® to lower the cost of computing, Microsoft® Internet Explorer will support OSD, unleashing the Internet's potential to easily deliver and upgrade applications."
OSD Enhances Automatic Software Delivery and Updates
Distributing and installing software today using floppies and CD-ROMs can be costly and difficult. OSD helps address this problem with push-based technologies, which enable software to be updated automatically. Installations based on the OSD format will make the overall experience easier for the end user. In addition, corporate administrators can update software automatically across an intranet, which will help lower the total cost of PC ownership in corporate environments.
"Marimba is pleased to work with Microsoft in proposing an industry standard that provides a common way of describing software packages and their dependencies," said Kim Polese, president and CEO of Marimba. "A consistent vocabulary for describing interdependencies between software components is key to ensuring interoperability and is complementary with Castanet
, which provides the full distribution and management of applications across networks."
OSD can describe software written in any language, including C/C++, the Visual Basic® programming system and Java
, as well as component models including the Component Object Model (COM) and JavaBeans. It also describes software on different platforms, such as the Microsoft Windows operating system, the Macintosh OS and UNIX-based systems. OSD can also describe software dependencies – the relationships between components and applications, sometimes from different vendors, which are required to run properly.
"The OSD specification is a tremendous benefit to organizations seeking to provide a standards-based solution for online software distribution," said Jeff Papows, president, Lotus Development Corp. "Lotus continues to work closely with partners like Marimba to provide a range of solutions that leverage our Domino.Broadcast technology, and we view their work with Microsoft on OSD as a strong step forward."
A New Data Format Based on XML
The objective of the OSD data format is to provide an interoperability standard for software description. OSD, like the CDF specification, is built on XML. CDF provides the vocabulary for packaging Web pages; OSD provides the vocabulary for packaging software. Because OSD is based on XML, OSD may be readily supported by multiple software vendors, providing interoperability in software distribution systems.
About Marimba
Founded in 1996, Marimba Inc., headquartered in Palo Alto, Calif., is a privately held software company whose mission is to reduce the complexity and cost of doing business by enabling companies to manage, distribute and update network applications and services across devices, platforms and networks – automatically, efficiently and securely. Marimba's Castanet family of products enables the distribution, management and updating of network applications within enterprises and across the Internet.
Microsoft, Windows and Visual Basic are either registered trademarks or trademarks of Microsoft Corp. in the United States and/or other countries.
Java is a trademark of Sun Microsystems Inc.
Marimba and Castanet are trademarks of Marimba Inc.


These bags of fill is just the ticket to fill our squeeze bags. The Plastic pellets don't absorb moisture and are light weight. The fill will not attract critters like rice or popcorn will. The fill is packaged in 16OZ bags.


Delight was kindly offered to us this spring by Richie and Marilou Webb. We are so excited to have this doe. She has a powerhouse of a pedigree and the general appearance and udder to back it up.
Delight is a very correct doe with an uphill stature and strong feet and legs. She is a first freshening two year old, so we can't wait to freshen her again this coming year to see how she matures. She has a lovely udder that is high and wide with a nice medial and great capacity.
Delight continues to milk and show well. She only has one more leg for her permanent championship.
She has finally settled in to our little heard and is such a strong doe with such a nice mammary system. We are so in love with her daughter Desire, and can't wait to get another. We hope to AI Delight to Toi Soldier this fall, but we will have to see how she tolerates the idea.
Delight had a very rough start this summer with a bad case of pregnancy toxemia and then developed a case of mastitis after freshening. We treated her and dried her off and have let her have the summer off. She looks to be in very good shape this fall, and is bred to Gundsynd for mid February kids.


These Subscriber TERMS OF SERVICE ("Terms of Service" ) constitute a binding contract between you ("Subscriber" or "Customer" or "you") and Acadoodle ("Company"), regarding the terms under which the Company will provide Subscriber with access to the Services.
BY CLICKING ON THE BUTTON MARKED "PAY NOW", SUBSCRIBER SIGNIFIES ITS AGREEMENT TO ABIDE BY THESE TERMS OF SERVICE ("Acceptance"). Subscriber agrees that its assent, given electronically, will have the same legal effect as if it had been personally signed by Subscriber. To the extent permitted by law, these Terms of Service are intended to supersede any provisions of applicable law, which might otherwise limit their enforceability or effect, because they were entered into electronically. Please print a copy of these Terms of Service for future reference.
oSubscriber agrees on behalf of itself and its Authorized End Users, where applicable, to treat password, usernames, and other security information ("Authentication Information" ), as confidential and to not provide any other person with access to the Subscription Website or portions of it using Subscriber's (or the Authorized End User's) Authentication Information. Subscriber will notify the Company immediately of any unauthorized access to, or use of, Authentication Information. The Company has the right to disable any Subscriber or Authorized End User access to the Services at any time, in its sole discretion [for any or no reason, including] if, in the Company's opinion, Subscriber and/or Authorized End User has violated any provision of these Terms of Service or appear likely to do so.
"Website"http://www.acadoodle.com (or such other web address notified by the Company to Subscribers at any time), and includes the entirety of both the Subscription Website and the Public Website.
ix.It will not use the Services in any manner, or in connection with any content, data, hardware, software or other materials that infringes upon or violates any patent, copyright, trade secret, trademark, or other intellectual property right of any third party, or that constitutes a defamation, libel, invasion of privacy, or violation of any right of publicity or other third party right, or that is threatening, harassing or malicious.
Subscription Fee. Subscriber agrees to pay the appropriate fee corresponding to the particular Services that it wishes to access for the applicable Subscription Term ("Subscription Fee" ). The Company reserves the right to change the Subscription Fee with respect to a Renewal Term with prior written notification. Unless otherwise expressly stated, all fees are non-cancellable and non-refundable.
i.General Subscription. Subscriber may subscribe to the Services for the applicable term of the specific Subscription commencing on the Effective Date ("Initial Term" ). Thereafter, the Subscription will renew automatically on the corresponding anniversary date ("Renewal Date") of the Effective Date (each"Renewal Term", and collectively with the Initial Term, the "Subscription Term"), until Subscriber notifies Company of its intention not to renew prior to the end of the then-current term.
ii.No Fee Trial Subscription. Subscriber may cancel a No Fee Trial at any time before it expires by following the relevant instructions. Continuance of the Subscription beyond the expiration of the No Fee Trial will incur the relevant fee.
Individual Subscription Termination (applicable only to residents of a member country within the European Union). If you are an Individual Subscriber who is a resident of a European Union member country, then in addition to any other rights under these Terms of Service, you may cancel any Subscription for any reason during the fourteen (14) day period from the Effective Date by sending written notice to the Company. If you do so, and with respect to any paying Subscription, Company may, but is not obligated to, charge you a proportionate amount of the Subscription Fee for the part of the Subscription that you have used.
Legal notices may be sent to our main office address. Notices to Subscriber may be sent either to the email address supplied in Subscriber's account or to the address supplied by Subscriber as part of its registration data. In addition, Company may broadcast notices or messages through the Website to inform of changes to the Website or other matters of importance, and such broadcasts shall constitute notice to Subscriber to the extent permitted by applicable law. Any notices or communication under these Terms of Service will be deemed delivered to the party receiving such communication (a) on the delivery date if delivered personally to the party; (b) two business days after deposit with a commercial overnight carrier, with written verification of receipt; (c) five business days after the mailing date, if sent by mail, return receipt requested; (d) on the delivery date if transmitted by email; or within three (3) days after Company posts a notice on the Website.
Company will not be liable or responsible for any failure to perform, or delay in performance of, any of its obligations that is caused by events outside its reasonable control ("Force Majeure Event" ). A Force Majeure Event includes any act, event, non-happening, omission or accident beyond Company's reasonable control including, but not limited to, restrictions of law, regulations, orders, or other governmental directives, labor disputes, acts of God, third party mechanical or other equipment breakdowns, terrorist attacks, fire, explosions, fibre optic cable cuts, interruption or failure of telecommunications or digital transmission links, Internet failures or delays, storms or other similar events.
20) CHILDREN'S ONLINE PRIVACY PROTECTION ACT (COPPA).
Software, functionality, and/or features (collectively, "Service Functionality" ), that may be available on or through Website from time-to-time, is subject to United States Export Controls. No Service Functionality from the Website may be downloaded or exported (a) into (or to a resident of) Cuba, Iraq, Libya, North Korea, Iran, Syria, or any other country which the United States has embargoed goods; or (b) anyone on the United States Treasury Department's list of Specially Designated Nationals or the United States Commerce Department's Table of Deny Orders. By downloading or using any Service Functionality, Subscriber represents and warrants that it (and its Authorized End Users, where applicable) are not located in, under the control of, or a national or resident of any such country or on any such list. Although the Website may be accessible worldwide, Company makes no representation that materials on the Website are appropriate or available for use in locations outside the United States, and accessing them from territories where their contents are illegal, is prohibited. Those who choose to access the Website from other locations do so at their own initiative and are responsible for compliance with local laws. Any offer for any product, service, and/or information made in connection with the Services is void where prohibited.


text:
Q: how to build a max heap on a given array and given indices of the array? i have the following question:
given an array of integers A, and given t not-overlapped sections [L1,R1],[L2,R2]...[Lt,Rt]
such that every section is start-index(Li) and end-index(Ri) at the array (A),
find a data structure that returns the top k-elements from these sections (the indices are at the sections and the elements are at the array A) at O(t + klogk) complexity.
lot of thanks to the helpers,
Avihai.

A: The problem's phrasing is a bit ambiguous: what counts as part of the operations to be done in complexity O(t+klogk)?
I see 3 options in answering this. For the first two, which I think are wrong ways to interpret the original question, I present answers. For the third and last option I have no solution. Still I thought it necessary to make the question clear and add my answers to the first two. Additionally, adding this long discussion of the matter in a comment would be confusing if not impossible.
Here are the options I see for answering the question I started with:
Option 1 - data structure build (using the sections) NOT included
From the current phrasing of the original question it sounds like the problem asks for a data structure that can be built beforehand, using the array A and the sections [L1,R1],[L2,R2],...,[Lt,Rt] and the only operations considered for the complexity requirement would be the operations done on the data structure to extract the k highest values.
That doesn't make a lot of sense as it's unclear why would the t be put in the complexity in this case? From this answer, which you linked to in your comment to Juan's answer, you can see that by building beforehand a heap using only the relevant elements you can get O(klogk) for getting the k highest value elements from the data structure (once it exists).
Option 2 - ALL the operations included
If we read it as if the problem asks for the data structure to be built as part of the operations considered for the complexity requirement (we only get the array and the list of indices [L1,R1,L2,R2,...,Lt,Rt] and have to work with that) then the complexity requirement is not possible to achieve. If you want to build a data structure you will at least need to go over all the elements that need to be inserted into the data structure, and if you don't want to build a data structure and you intend to use the array as it is then you will have to go over all the elements between which you require to find the max. Either way in case you get t=1 and L1=1, R1=n where n is the number of elements in the array A you will have to go over all the elements in A (you have no assumptions regarding A's elements' order). That means you need at least O(n) and the requirement is O(t+klogk). To make it even clearer that these are totally unrelated quantities - you can consider the case for k=1, meaning finding only the highest element, while A can be of arbitrary length (let's say 10,000).
Option 3 - data structure build only with array exempt
Which brings me to my guess of the original meaning behind the question: build a data structure from the given array A beforehand (the building of which will not be included in the complexity requirement) so that when later on you are given sections' indices [L1,R1],[L2,R2],...[Lt,Rt] and an integer k the data structure you built before will allow you to get the k highest elements among the sections defined by the newly given indices (L1,R1,L2,R2,...,Lt,Rt) in the original array A in complexity O(t+klogk).
Unfortunately I did not come up with a solution to this problem yet - or with a proof that such a solution does not exist, but at least now the problem makes sense.
I would love to know which of the options was the original intention of the question, and if I come up with a solution to option 3 I shall edit this answer accordingly.

A: I'd build an indirection table T, that maps [0..t] to the indices mapped by the sections.
Then I'd run the heapify algorithm using this indirection table. Every time the algorithm accesses an A[i], it would be replaced by a A[T[i]].
Both indirection table construction and heapify are O(t). Getting the top k elements would cost O(t log n).
EDIT:
Wikipedia explains in its article how to build heap in O(t).
Basically it's a sequence of bubble-down operations:
for i from floor(A.size()/2) to 0:
    bubble_down(A, i)

There is a proof in the article why this is O(t).


(Seaside, Oregon) – Two distinctly yummy happenings of food and fun take place on the north Oregon coast in October, as a series of mushroom-finding walks kicks off and a tour of coastal homes incorporates the culinary arts.
The Wild Mushroom Hikes start at Fort Stevens State Park at the top of the Oregon coast, in Warrenton. Two happen in October: on October 5 and then the 12th, while two more happen in November.
On October 11, look for the Sunset Beach Home & Chef Tour, just north of Seaside.
Through Oregon State Parks, Fort Stevens State Park offers free foraging lessons for mushroom hunting. Learn to spot edibles such as Oyster mushrooms, King Boletes and Lobster mushrooms as well as how to recognize the dangerous varieties.
Park rangers, who have been trained in mushroom identification will lead the one mile round-trip tour. They recommend dressing for the weather and bringing a pocket knife for collection.
These start at 1 p.m., and you will meet at Battery Russel in the park. The others happen on November 10 and November 30. They are free. (503) 861-3170. www.oregonstateparks.org.
For the seventh year in a row, the Assistance League of the Columbia Pacific puts on the Home and Chef Tour in Sunset Beach, from 11 a.m. to 4 p.m. Six beautiful homes will be toured and food will be served from the Astoria Golf & Country Club, Beach Burrito, Maggie's, Twisted Fish, Gearhart Grocery and Tora Sushi.
Tickets are $25 and may be purchased now through the event day at Holly McHone Jewelers or Columbia Bank in Astoria, Warrenton or Seaside. Tickets will only be available at the tour homes on the day of the event.
Proceeds from this event benefit the 2014/15 Operation School Bell program that will provide clothing to over 600 Clatsop County children. (503) 738-2672. www.assistanceleaguecp.org.
More on the Warrenton and Sunset Beach area below and at the Warrenton, Astoria Virtual Tour, Map.


text:
Festive Film Festivals
Writer: Naseem Randhawa
(From L to R: Madam Agnes Dovert, (Director of Alliance Francaise Kuala Lumpur), Mr. Stephane Dovert (Counsellor for Science and Culture at the French Embassy), Mr. Jean Wasser (Vice President of Alliance Francaise Kuala Lumpur) , Ms. Koh Mei Lee (CEO of GSC) , Mr. Tan Keng Chok (Representative for The Mayor of Kuala Lumpur), H.E. Madam Martine Dorance (Ambassador of France to Malaysia), Y.A.M. Tengku Zatashah binti Sultan Idris Shah (Royal Patron and President of Alliance Francaise Kuala Lumpur), Mr. CK Tan (Representative of Martell Malaysia).
While blockbuster fanfares like "Marvel's The Avengers" and "Transformers" see no obstacles in their path to strut to our screens, passionate moviegoers who relish in artistic effort rather the latest pop culture craze, owe it to cinemas who have long partnered with international embassies to bring movies from foreign lands that would otherwise not reach our shores.
Marking their foray into avant-garde cinema since the launch of their International Screens at GSC Mid Valley in 1999, the effort distinguishes specifically the wealth of showcasing art-house, award winning foreign language films for local audiences.
13 years later, and the film exhibitor have expanded its screenings to not only GSC Mid Valley and then eventually to GSC Gurney Plaza, Penang, but also to GSC 1 Utama in June 2005 and then to GSC Pavilion KL in November 2007.
Now via hosting the 11th edition of the French Art and Film Festival (FAFF), which also marks its organiser's Alliance Franchise de Kuala Lumpur's 50th anniversary, GSC yet again showcases a special delicacy for delectable art-house movies.
Mr Stephane Deneve (International Conductor), Madam Agnes Dovert and Mr Eric Le Sage (Leading pianist).
Marking the event with a resounding bang this week, was the grand opening ceremony at GSC Pavilion which saw dignified attendees from the local as well as international French community, CEO of GSC Ms. Koh Mei Lee, along with esteemed guests who were patiently awaiting the festival's return to embrace the French culture once again.
On the importance of hosting the film festival, Ambassador of France to Malaysia H.E. Madam Martine Dorance said, "Culture is never overlooked in the vast development of Kuala Lumpur, so for this special edition which celebrates the Golden Jubilee of Alliance Franchise de Kuala Lumpur which is hand to hand with GSC's Silver Jubilee celebration this year, what better way is there then to bring a cultured festival to multicultural audiences than some of the great French movies on display?"
Seven French movies are set to be screened at GSC Mid Valley, 1Utama and Pavilion KL from May 24 to June 3; and at GSC's Gurney Plaza, Penang from June 7 to 13.
Mr. Stephane Dovert and H.E. Vincent Piket (Ambassador and head of the European Union delegation to Malaysia)
Among the highlights is the critically acclaimed Oscar winning silent film "The Artist" starring Jean Dujardin, making way for one time screenings only at GSC Pavilion KL on Friday, 25 May (9pm) and GSC Gurney Plaza Sunday, 10 June (1pm), which according to a cinema insider, are completely sold out due to having been snapped up like hot cakes since its ticket sales commenced.
GSC's CEO, Ms. Koh Mei Lee who was also present at the French affair, shared her excitement on what the festival had to offer, especially for "The Artist".
"Enthusiastic fans have been calling weeks in advance regarding the festival and whether free passes would be given. I for one am personally looking forward to "The Artist" and I have already gotten my tickets for it."
On the other end of "The Artist", is a rare advent of "The Intouchables", a well-received movie about a paralysed rich man and his relationship with his ex-con caretaker Driss, also with limited screenings at GSC Mid Valley, Saturday 26 May and at GSC 1 Utama on Sunday, 3 June.
The limited screenings are attributed to the high demand of the films overseas, overriding the number of available prints which will only be accommodated to one hall only, for each of the screenings aforementioned.
Interesting to note nevertheless, that this would not be the first time a silent film has been showcased at GSC. Last year's European Union Film Festival presented classic black and white Charles Dickens films; "Oliver Twist" (1922) and "Great Expectations" (1946) for the first time in Malaysia on the big screen.
Miss Kyoko Kugai and Mr Shoichi Toyoda from Japan Foundation.
The Past & The Upcoming...
Over the years GSC has also played host to a number of other festivals to balance the fusion apart from the French arts, and they were the; Japan Film Festival, Hong Kong Film Festival, Argentina Film Festival, European Union Film Festival, Latin America Film Festival and the Kuala Lumpur Palestinian Film Festival, for which the latter was graced by former Malaysian Prime Minister Tun Dr. Mahathir bin Mohamad.
Among the memorable highlights, was the Japan Film Festival last year which was hosted by Shigeru Nakamura, Ambassador of Japan in Malaysia and Toyoda Shoichi, director of the Japan Foundation Kuala Lumpur which also saw to Cinema Online as the official online partner for the event.
GSC Pavilion KL was all glitz and glamour for the world premiere of Japanese drama "Second Chance" which enabled Malaysians to be the first in the world to watch the story which is set partially in Malaysia, before the movie was due for release in Japan. Gracing the event was the director himself Hiroshi Kurosaki, who flew in from Japan along with his two leads Hiroki Hasegawa and Kyôka Suzuki. Joining them was also fresh Malaysian actress Nurul Elfira Loy, who was part of the movie cast that met up with eager fans.
Stars at the Japan Film Festival last year, (L-R) Actors, Nurul Elfira Loy, Hiroki Hasegawa and Kyôka Suzuki and director Hiroshi Kurosaki of "Second
"A Simple Life's" Deanie Ip and Cinnamon get acquainted when the actress was down for the 4th Hong Kong Film Festival in March.
More recently though, was the fourth Hong Kong Film Festival in March which brought in the multiple award winning film "A Simple Life" to coincide with the annual Hong Kong International Film Festival held overseas. To the delight of fans, the lead actress from the movie; Deanie Ip and its director Ann Hui, were also flown out to grace the opening ceremony. Even the male lead, the dashing Andy Lau almost made it for the event, but was said to have got caught up in Taipei instead, which had since left fans excited in anticipating which stars would be brought down next year.
Apart from bringing in a selection of movies based on the respective festivals, GSC also serves up an ala-carte offering of movies ranging from the critically acclaimed documentary "Freakonomics", Oscar 2012 nominated film "A Better Life", dramas "Toast", "Salmon Fishing In The Yemen", "Wonderful World", documentary "Sing Your Song" and "The Lady", which saw helmer Michelle Yeoh herself at the launch of her movie in Malaysia .
Now, the next festival on the list is one that is close to home; the Kota Kinabalu International Film Festival (KKIFF), supported by the Society of Performing Arts Kota Kinabalu Sabah (SPARKS) and the Sabah Economic Development and Investment Authority (SEDIA) and supported by the Alliance Francaise, the Japan Foundation and the Goethe-Institute, brings KKIFF back for the fourth year running, to bring not only a slew of international movies, but also movies by our very own filmmakers from East Malaysia.
KKIFF was launched just last week and will take place from 8 to 14 June this year.
Held from the 8 to 14 June this year at GSC Suria, the esteemed event would showcase films from Japan, France and Germany, including the award winning "Welcome" by French director Philippe Lioret. "Father of My Children"; Mia Hansen-Løve's French drama that will also be played during the French Art and Film Festival (FAFF) in Klang Valley and Penang.
Additionally, a dash of uniqueness is offered in the form of the short-film competition, Link5, which is open to local amateur and independent filmmakers to exhibit their work in order to win cash prizes.
To keep the momentous momentum going with festivals and movies, GSC will also be bringing the Japan Film Festival back this September as well as the European Union Film Festival in November this year, while promising to offer more in store for those who prefer a dash of uniqueness apart from the common movie line up.
Follow us in our six part special GSC 25th Anniversary feature over the following months as Cinema Online takes you behind the scenes of what makes a successful cinema leader.
Cinema Online, 25 May 2012
Golden at 25 & counting
Nation's biggest cinema exhibitor GSC celebrates 25 years, but before the milestone, where did the miles truly begin with?
Bonjour FAFF 2012!
The highly-anticipated French Film Festival will be arriving on GSC screens with "The Artist" beginning in mid-May to mid-June
M'sia to hold own International Film Festival
FINAS has announced that it will be hosting the country's first International Film Festival this November
Presenting KKIFF 2012
East Malaysians joins in the film festival season by holding the Kota Kinabalu International Film Festival once again this June
Japanese Film Fest is back!
Kenji Uchida's "Key Of Life" will be screened prior to its Japanese release along with 11 other films this Sep!
JFF 2012 Movie List
The Japanese Film Fest is back and this time it has 12 movies! Which ones to watch you ask? Check out this complete list!
7 Japanese films M'sians love to see
The Japanese Film Fest is just around the corner, but here are other Japanese films that Malaysians would love to watch!
JFF 2012 unlocked with "Key of Life"
The much anticipated Japanese Film Festival 2012 has finally hit the waves of Malaysia yesterday
Enjoying European art of film
When choices are abundant, we help you narrow down which are the best at the upcoming European Union Film Festival 2013
FAFF pays ode to Juliette Binoche
French Art and Film Festival 2013 is back in Malaysia with 15 films and a tribute to Juliette Binoche
"Penanggal" dominates FFM26
"Penanggal" earns the most nominations for this year's Malaysian Film Festival with "Sembunyi" following closely behind
FFM 26 to be held in Seremban
The date and location for the 26th Malaysia Film Festival is finally confirmed after being previously postponed
EUFF brings in 21 movies
This year's European Union Film Festival will be showing 21 of the best movies from all around Europe starting this 30 Oct
FFM26: Ellie Suriaty is Most Promising Director
"Penanggal" director wins coveted award at the Officiating Ceremony of the 26th Malaysia Film Festival
Ellie Suriaty: "Penanggal" is not a ghost film
The award-winning director says her 2013 film starring Ummi Nazeera is not a ghost film, but is actually spiritual
5 Movies to catch at EUFF'14
This year's European Union Film Festival offers 21 great movies, here is our pick for the top 5 must watch EUFF'14 movies
French Film Festival 2015 kicks off in Klang Valley
The French Art & Film Festival opens with the screening of "La belle et la bête" during its opening ceremony
European movies coming to our cinemas
The European Union Film Festival returns for its 16th edition in Malaysia this year end, bringing a total of 23 movies
Latin American Film Festival returns to cinemas
16th edition of the festival returns to the big screen with 12 movies playing November 2017 onwards.


text:
Carmen's Books and Movies Reviews
Snapshots - #3
TV shows...
Penny Dreadful (♦♦♦♦♦): Several months ago, I discovered the Showtime series Penny Dreadful, featuring archetypal horror characters such as Victor Frankenstein, Dorian Gray, Van Helsing, Dr. Jekyll, a werewolf, witches, and vampires. Season 1 was about devil possession and the harboring of dark secrets. Season 2 was based on witchcraft and its power to do evil. Season 3, the one currently available, deals with vampires. All evil forces aim to win the soul of Miss Vanessa Ives—a young woman conflicted about her past and her belief in God. Will Vanessa surrender this time to the charms of no other than Dracula? Or will her friends be able to save her?
I started binge-watching the first two seasons of Penny Dreadful towards last year's end, and couldn't stop until I digested it whole. As you may have realized, it is very dark, gothic, but also mouth watering addictive. It isn't exactly scary, though there is a lot of gore sometimes, with just the right dose of evil to make you shudder and ask for more. If you like suspense with a good dose of the supernatural, like I do, then this show is for you.
Silicon Valley (♦♦♦♦): In Season 2, the guys deal with a lawsuit that ends up in arbitration. And Richard outgrows his good guy persona and starts making cutthroat business decisions to save his company.
In Season 3, Richard has been fired as the CEO of his own company, and as CTO, he is consulted on possible products to market, but Richard is convinced that the current CEO of Pied Piper doesn't know what is best for the company.
There was a point early on in Season 2 in which I started to wonder if the edginess of Season 1 had been lost. I needed not have worried; Season 2 and 3 of Silicon Valley are as hysterical and edgy as the freshman season. And just as crazy.
And now the movies...
The Great Gatsby (2013) (♦♦♦♦): This remake of the 1974 classic star Leonardo DiCaprio, Tobey Maguire, and Carey Mulligan, as Jay Gatsby, Nick Carraway, and Daisy Buchanan, respectively.
If I thought that the 1974 movie was a little subdued in acting and mood, this one is very emotionally charged. All the performances are top notch, particularly DiCaprio's and Joel Edgerton's as Tom Buchanan. This 2013 remake was revamped with skimpy costumes and cabaret inspired choreography at Gatsby's parties, music courtesy of the latest and among the greatest stars in today's musical scene, such as Kanye West, Jay Z, Beyoncé, Alicia Keys… Glitter, excess, jazz, and shady characters, it's all there.
This movie version follows the book very closely, even the dialogues, thus I felt sad in the end. Very good watch!
Big Eyes (♦♦♦♦): Margaret, a divorcée painter with a child to support in the 1950s America, marries another painter—or is he?—to have an uncontested steady income to avoid losing custody of her small daughter. Soon enough, Margaret and Walter are painting side by side. Walter is business savvy, a fast talker, and one thing leads to another and next time we know, Walter has taken credit for the paintings of children with big, soulful eyes, his wife paints.
Big Eyes is directed by Tim Burton. As Burton's movies go, this one is atypical. Not the usual quirky, oddball characters; these characters are more earthy, and real. It helps that it is a true story of sorts, and helped all the more by the wonderful performances of Amy Adams and Christoph Waltz in the leading roles—the latter so funny as the con painter that I found myself laughing out loud at several times during the movie.
Begin Again (♦♦♦½): I had a good time watching Keira Knightley as a song writer/singer who gets an opportunity to record an album in the streets of New York City, after her famous boyfriend cheats on her.
Keira Knightley is not much of a singer really, and none of the melodies are catchy enough to transcend the movie, but it didn't seem to matter much for enjoyed the story and the evolution of the characters through it.
Inside Llewyn Davis (♦♦♦): Llewyn Davis is a folk singer with ambition to make it in the music world but without a good, catchy repertoire to get him there. His album, Inside Llewyn Davis, is sitting in boxes for lack of sales. Surely everything would be different if his duo partner hadn't taken his life, would it? Homeless and crashing on his friends' couches for a few nights, he gets gigs that barely cover his living expenses.
Like Begin Again, Inside Llewyn Davis is a musical movie, except that unlike Keira Knightley, Oscar Isaac can carry a tune. Too bad for his expressionless eyes—I know they were meant to convey hopelessness, but they didn't help this movie any—and the odd songs were rather depressive. The only good thing going on for this movie was Oscar Isaac in a career-making role. I rather preferred his performance in A Most Violent Year.
2013 movies 2014 movies movies reviews snapshots
Judy Krueger June 21, 2016 at 2:36 PM
What a scrumptious collection of movies. I have seen them all and liked them all.
Thanks, Judy. This lot was a good one.
Dorothy Borders June 21, 2016 at 4:05 PM
I've heard a lot of good things about Penny Dreadful but haven't seen it. Maybe I'll put it on my binge watch list.
I think I enjoyed Inside Llewyn Davis more than you did. It evoked a certain feeling of nostalgia in me.
I hope you like Penny Dreadful if you decide to watch it. I think the series just ended with season 3.
I think my reaction to Llewyn Davis may be due to the other movies that I watched before, which were much better in my opinion.
Lynn June 21, 2016 at 4:14 PM
I really want to watch Penny Dreadful - I must just pick up the series and binge watch them all!
Lynn :D
Carmen June 22, 2016 at 10:05 AM
I think you would love it since you like dark fantasy fare. It is very well made and the acting is superb, particularly Eva Green (Casino Royale, The Golden Compass) in the leading role.
jessicabookworm June 22, 2016 at 10:03 AM
I enjoyed The Great Gatsby and I loved the 1st and 2nd series of Penny Dreadful; I have the 3rd series still to watch.
The 3rd season of PD is just as good as the first two; alas, I think it's the last.
thecuecard July 4, 2016 at 7:49 PM
Yes. I liked Begin Again quite a bit. and also Gatsby. A good batch of movies indeed.
Carmen July 4, 2016 at 7:57 PM
Thanks, Susan.
Please leave your comments and/or suggestions.