13.26. Release 0.219
General Changes
- Fix a correctness bug for queries with a
LIMIT
on top of a FULL OUTER JOIN
.
- Fix a correctness bug in how word boundaries are handled for regular expression functions when using the Joni regex engine.
- Fix query failures caused by Parquet predicate pushdown for
SMALLINT
and TINYINT
types.
- Fix query failures when view columns were fully qualified with catalog and/or schema.
- Fix query failures when creating and reading an unpartitioned Hive table within the same transaction.
- Fix an issue that would disable a performance optimization if two tables with mismatching
but compatible bucket counts are joined and one of the tables has a
$bucket
filter.
- Fix an issue that may cause procedure calls to fail if no queries were run after the server started up.
- Fix an issue where the properties supported by the
ANALYZE
statement for a given connector would remain in the system.metadata.analyze_properties
table
even after the connector was removed.
- Add
ST_Length()
for SphericalGeography
type..
- Add
view_owner
column to the information_schema.views
system table.
- Add a
JSON
version of the query plan to QueryCompletedEvent
.
- Add support for creating warnings during parsing.
- Add a warning for using the
current_role
reserved word as an identifier.
- Add support for using the empty string as a delimiter for the
split()
function.
When an empty string is used as the delimiter, the string will be split into individual characters.
Raptor Changes
- Add
raptor.minimum-node-count
configuration property. If the number of nodes in a cluster is less than the configured value,
data recovery and reassignment will not run.
- Add
raptor.startup-grace-period
configuration property to specify the delay for the initial bucket balancer run after the coordinator startup.
Hive Connector Changes
- Add
hive.ignore-table-bucketing
configuration property and ignore_table_bucketing
session property.
When set to true, these properties enable reading from partitions whose bucketing scheme does not match the table bucketing scheme.
Verifier Changes
- Fix an issue where the determinism check for
INSERT
queries were not run when there was a result mismatch.
- Fix an issue where the checksum query was treated as the main query, and the main query was treated as part of the setup queries
for
INSERT
query verification.
- Fix query timeout enforcement by replacing local timer with the
query_max_execution_time
session property.
- Improve result comparison for floating point columns by using relative errors.
Replace configuration property
expected-double-precision
with relative-error-margin
.
- Improve result comparison for orderable array columns by applying
array_sort()
before checksum()
.
- Improve result comparison for
SELECT
queries by rewriting SELECT
queries as CREATE TABLE AS
and using checksum queries to verify the results.
This eliminates the row count limit for SELECT
queries.
- Reuse initial control query results for the determinism check. This reduces the maximum number of control query runs and eliminates the test query reruns.
- Add support for retrying transient query failures using configuration properties
presto.max-attempts
, presto.min-backoff-delay
,
presto.max-backoff-delay
, presto.backoff-scale-factor
. Similar configurations prefixed with cluster-connection
instead of presto
are introduced for retrying transient network failures when communicating with the coordinator. Intermediate failures are recorded and emitted in the output.
- Add support for automatically resolving certain kinds of failures including exceeding the global memory limit and exceeding time limit.
- Add configuration properties
metadata-timeout
and checksum-timeout
to set the timeouts for metadata queries
(i.e., describe queries that read table schema) and checksum queries.
- Add
source-query.table-name
configuration property to specify the name of the MySQL table from which the verifier queries will loaded.
- Add configuration property
human-readable.log-file
to allow human-readable verification results to be logged into the specified file instead of stdout
.
- Rename configuration properties
query-database
to source-query.database
, suites
to source-query.suites
,
max_queries
to source-query.max-queries-per-suite
, event-client
to event-clients
, event-log-file
to json.log-file
,
run-id
to test-id
, thread-count
to max-concurrency
, control-gateway
to control.jdbc_url
, test-gateway
to test.jdbc_url
,
shadow-writes.control-table-prefix
to control.table-prefix
, and shadow-writes.test-table-prefix
to test.table-prefix
.
- Remove configuration properties
control.query-types
, test.query-types
, source
, max-row-count
, always-report
,
skip-correctness-regex
, check-correctness
, skip-cpu-check-regex
, check-cpu
, explain-only
, verbose-results-comparison
,
quiet
, control-teardown-retries
, test-teardown-retries
, and shadow-writes
.
SPI Changes
- Expose
RowExpression
to SPI, to allow passing resolved expressions to connectors.


Sawss
An advanced CSS framework
Semantic AWare Style Sheet
Sawss is an intuitive front-end framework for HTML5 development.
Download
GitHub
Features
Built as a lightweight and modular HTML5 layout methodology.
Sawss is an extension of CSS3, adding contextual rules, variables, mixins, selector inheritance & more.
Semantic
Makes it easy for you to scaffold HTML5
Layout
Avoids presentational CSS classes in the markup
Dynamic
Provides layout for both portrait & landscape
Design
The beauty of CSS design. Sawss is pure, minimal and transparent.
Open Source
All are welcome to contribute. Bring your ideas on how we can help design the code.
MIT License
Sawss is free to use, copy, merge, publish and distribute without any limitations. This content is released under the MIT License.
Active Development
Sawss is a project by I only see spots.


--- layout: default title: Equality & Ideal Futures In Technology permalink: /events/2017/equality-ideal-futures-in-technology/ --- {% assign currentEvent = page.title %}


SVGKit
Introduction
All you need to work with SVGs at the basic, browser-independent level. Create a new SVG at runtime. Load SVG data from a URL. Conveniently handle quirks of three ways SVG can be included in browsers: object, embed, and inline. Handle different browsers and different SVG engines. Has convenience functions for DOM manipulation ala MochiKit. It manages the internal SVG DOM objects: HTMLElement, SVGDocument, SVGElement
Once you have an SVGKit object, adding content is simple. Inspired by MochiKit DOM, there is an all-caps function for every
tag defined in the SVG spec.
svg.append(CIRCLE( {'cx':50, 'cy':50, 'r':20, 'fill':'purple', 'fill-opacity':.3) );
It's annoying to have external javascript files in an SVG, especially a big library like MochiKit and SVGKit, but for anything more than a simple demo, it's worth it. You can also pick which functions you want to include and paste them into your SVG.
Live Demos
- svg live demo - Table of tests that you can modify and re-run client side.
- type tests - Tests browser support for different ways of including and getting at SVG
- SVGKit Interpreter - Play with an SVG interactively one line of code at a time.
Overview of Code
There is a single object SVGKit. You instantiate one for each SVG you want access too. You can use its constructor to grab an existing SVG, load an SVG from a file, or create a blank SVG to draw into. The goal of the code is to grab the svg element and be able to manipulate it independent of the browser/plugin and the technique used to include the SVG on the page. In many browsers this is just not possible for some or all methods.
Browse Code in SVN Repository
JavaScript access to SVG (not SVGKit specific, but a reference for everybody)
There are several different ways for JavaScript to access SVG content. The there are three major DOM elements you need to worry about, each of which has a corresponding member in a SVGKit object.svgDocument
(typeSVGDocument
) referrs to the document the<svg>
element is contained in. It has document-type methods likecreateElement
,getElementById
, andgetElementsByTagName
. If the SVG is inline in the XHTML or the JavaScript code lives in the SVG file, this will just bedocument
, otherwise you have to get it from the HTML element that the SVG is sitting in.svgElement
(typeSVGSVGElement
) referrs to the<svg>
element. It has the width and height of the entire SVG and contains all graphical elements inchildNodes
. It has element-type methods along with more graphical methods likesuspendRedraw
, andcreateSVGTransform
.htmlElement
(typeHTMLElement
) is the container that contains the SVG in an HTML document. This refers to an HTML element like<object>
,<embed>
,<iframe>
, or<svg>
. If the SVG is inline in the XHTML, this will just be the same assvgElement
. An<object>
and<embed>
element also has a width and height which may be different that theSVGElement
's, in which case you'll probably get a scroll bar.
Here's a summary of the most common ways to get access to the all important SVGSVGElement in JavaScript. Different browsers impliment different methods to varying degrees:
htmlElement |
svgDocument |
svgElement |
|
<svg> (inline) |
the svg tag |
document or svgElement.ownerDocument |
same as htmlElement |
<embed> |
the embed tag | htmlElement.getSVGDocument() |
svgDocument.rootElement or svgDocument.documentElement |
<object> |
the object tag | htmlElement.contentDocument |
svgDocument.rootElement or svgDocument.documentElement |
<iframe> |
the iframe tag | can never access | can never access |
| inside svg | not applicable | document |
svgDocument.rootElement |
Constructors
SVGKit()
-- For JavaScript included inside an SVGSVGKit(node)
-- Already have an HTML element that contains an SVG like<object>
,<embed>
,<iframe>
, or<svg>
SVGKit(id)
-- Have the id for an HTML element (if your id ends in ".svg", pass in the node instead because strings ending in .svg will be treated as filenames.)SVGKit(filename, id, type, width, height)
-- Create a new HTML element contains the SVG infilename
(must end in ".svg")SVGKit(width, height, id, type)
-- Create a new SVG from scratch withwidth
,height
, andid
. type is'inline'
'embed'
or'object'
For <embed>
or <object>
-- The SVG won't necessarily be ready when the constructor
returns because the document loads in the background. All real graphical manipulation has to passed to svg.whenReady(callback)
, which will register an onload
callback to allow it to load in the
background.) If you are creating a new SVG, what really happens
is an <embed>
or <object>
tag is created referencing an svg file with no
graphical content. This means you have to manage a URI
to empty.svg. Another issue with<embed>
or <object>
is that if
they get hidden (for example the div they're contained in becomes
invisible) the browser will just forget about the SVG DOM and all of your hard
work. I'm thinking about registering an onhide
event which saves the
xml and then restores it on load.
For inline <svg>
-- Creating a new SVG is as simple as creating a DOM
element. Loading an SVG from a file is difficult because an xml
loader must be used and the SVG extracted and properly recognized as
SVG content so you have access to the graphical DOM methods and your
content shows up. If you load an inline SVG from a file, you're going
to have to register your graphical manipulation with svg.whenReady(callback)
as above.
Overview of Functionality
- Content Manipulation: createSVGDOM, append, createUniqueID, getDefs, suspendRedraw, deleteContent, etc.
- Transformations: rotate, translate, scale. These can be applied to any element and do some rudimentary optimization. (If you translate the same element twice, combine them into a single translation.) I could suck all transformations into a single transformation matrix (like Inkscape), and while the would be efficient to render, it would be ugly to read.
- Output: toXML and emitXML.
To Do
- JSDoc Documentation
- Burst Canvas Animation
- http://code.google.com/p/cakejs/
- Parse comma or space seperated list of numbers (like those given in attributes of SVGs.)
- Parse the path attribute


Gecode::ViewSelRnd< View > Class Template Reference
[Generic view selection for brancher based on view and value selection]
Select a view randomly. More...
#include <view-sel.hpp>
Protected Types | |
| typedef ViewSel< View >::Var | Var |
| The corresponding variable type. | |
Protected Attributes | |
| Rnd | r |
| The random number generator used. | |
Initialization | |
|
| |
| ViewSelRnd (Space &home, const VarBranch< Var > &vb) | |
| Constructor for creation. | |
| ViewSelRnd (Space &home, ViewSelRnd< View > &vs) | |
| Constructor for copying during cloning. | |
View selection and tie breaking | |
|
| |
| virtual int | select (Space &home, ViewArray< View > &x, int s) |
| Select a view from x starting from s and return its position. | |
| virtual int | select (Space &home, ViewArray< View > &x, int s, BrancherFilter< View > &f) |
| Select a view from x starting from s and return its position. | |
| virtual void | ties (Space &home, ViewArray< View > &x, int s, int *ties, int &n) |
| Select ties from x starting from s. | |
| virtual void | ties (Space &home, ViewArray< View > &x, int s, int *ties, int &n, BrancherFilter< View > &f) |
| Select ties from x starting from s. | |
| virtual void | brk (Space &home, ViewArray< View > &x, int *ties, int &n) |
| Break ties in x and update to new ties. | |
| virtual int | select (Space &home, ViewArray< View > &x, int *ties, int n) |
| Select a view from x considering view with positions in ties. | |
Resource management and cloning | |
|
| |
| virtual ViewSel< View > * | copy (Space &home) |
| Create copy during cloning. |
Detailed Description
template<class View>
class Gecode::ViewSelRnd< View >
Select a view randomly.
Definition at line 149 of file view-sel.hpp.
Member Typedef Documentation
The corresponding variable type.
Reimplemented from Gecode::ViewSel< View >.
Definition at line 151 of file view-sel.hpp.
Constructor & Destructor Documentation
| Gecode::ViewSelRnd< View >::ViewSelRnd | ( | Space & | home, | |
| const VarBranch< Var > & | vb | |||
| ) | [inline] |
Constructor for creation.
Definition at line 480 of file view-sel.hpp.
| Gecode::ViewSelRnd< View >::ViewSelRnd | ( | Space & | home, | |
| ViewSelRnd< View > & | vs | |||
| ) | [inline] |
Constructor for copying during cloning.
Definition at line 484 of file view-sel.hpp.
Member Function Documentation
| int Gecode::ViewSelRnd< View >::select | ( | Space & | home, | |
| ViewArray< View > & | x, | |||
| int | s | |||
| ) | [inline, virtual] |
Select a view from x starting from s and return its position.
Implements Gecode::ViewSel< View >.
Definition at line 488 of file view-sel.hpp.
| int Gecode::ViewSelRnd< View >::select | ( | Space & | home, | |
| ViewArray< View > & | x, | |||
| int | s, | |||
| BrancherFilter< View > & | f | |||
| ) | [inline, virtual] |
Select a view from x starting from s and return its position.
Implements Gecode::ViewSel< View >.
Definition at line 501 of file view-sel.hpp.
| void Gecode::ViewSelRnd< View >::ties | ( | Space & | home, | |
| ViewArray< View > & | x, | |||
| int | s, | |||
| int * | ties, | |||
| int & | n | |||
| ) | [inline, virtual] |
Select ties from x starting from s.
Implements Gecode::ViewSel< View >.
Definition at line 515 of file view-sel.hpp.
| void Gecode::ViewSelRnd< View >::ties | ( | Space & | home, | |
| ViewArray< View > & | x, | |||
| int | s, | |||
| int * | ties, | |||
| int & | n, | |||
| BrancherFilter< View > & | f | |||
| ) | [inline, virtual] |
Select ties from x starting from s.
Implements Gecode::ViewSel< View >.
Definition at line 521 of file view-sel.hpp.
| void Gecode::ViewSelRnd< View >::brk | ( | Space & | home, | |
| ViewArray< View > & | x, | |||
| int * | ties, | |||
| int & | n | |||
| ) | [inline, virtual] |
Break ties in x and update to new ties.
Implements Gecode::ViewSel< View >.
Definition at line 528 of file view-sel.hpp.
| int Gecode::ViewSelRnd< View >::select | ( | Space & | home, | |
| ViewArray< View > & | x, | |||
| int * | ties, | |||
| int | n | |||
| ) | [inline, virtual] |
Select a view from x considering view with positions in ties.
Implements Gecode::ViewSel< View >.
Definition at line 534 of file view-sel.hpp.
| ViewSel< View > * Gecode::ViewSelRnd< View >::copy | ( | Space & | home | ) | [inline, virtual] |
Create copy during cloning.
Implements Gecode::ViewSel< View >.
Definition at line 539 of file view-sel.hpp.
Member Data Documentation
Rnd Gecode::ViewSelRnd< View >::r [protected] |
The random number generator used.
Definition at line 153 of file view-sel.hpp.
The documentation for this class was generated from the following file:
- gecode/kernel/branch/view-sel.hpp


The Account Settings page contains a field for an API token. If no API token exists, click the Refresh
link to generate a new token. Once a token is created, authenticating API requests involves supplying the provided token via the Authorization
HTTP header. Below is an example using curl
:
curl -H "Authorization: Token TOKEN" \ -X GET "{{help.protocol}}://{{help.host}}/api/boundary-results/"


module Rake::TaskManager
The TaskManager module is a mixin for managing tasks.
Attributes
Track the last comment made in the Rakefile.
Public Instance Methods
Find a matching task for task_name
.
# File lib/rake/task_manager.rb, line 54 def [](task_name, scopes=nil) task_name = task_name.to_s self.lookup(task_name, scopes) or enhance_with_matching_rule(task_name) or synthesize_file_task(task_name) or fail generate_message_for_undefined_task(task_name) end
Clear all tasks in this application.
# File lib/rake/task_manager.rb, line 174 def clear @tasks.clear @rules.clear end
Return the list of scope names currently active in the task manager.
# File lib/rake/task_manager.rb, line 214 def current_scope @scope end
If a rule can be found that matches the task name, enhance the task with the prerequisites and actions from the rule. Set the source attribute of the task appropriately for the rule. Return the enhanced task or nil of no rule was found.
# File lib/rake/task_manager.rb, line 144 def enhance_with_matching_rule(task_name, level=0) fail Rake::RuleRecursionOverflowError, "Rule Recursion Too Deep" if level >= 16 @rules.each do |pattern, args, extensions, block| if pattern && pattern.match(task_name) task = attempt_rule(task_name, pattern, args, extensions, block, level) return task if task end end nil rescue Rake::RuleRecursionOverflowError => ex ex.add_target(task_name) fail ex end
# File lib/rake/task_manager.rb, line 67 def generate_did_you_mean_suggestions(task_name) return "" unless defined?(::DidYouMean::SpellChecker) suggestions = ::DidYouMean::SpellChecker.new(dictionary: @tasks.keys).correct(task_name.to_s) if ::DidYouMean.respond_to?(:formatter)# did_you_mean v1.2.0 or later ::DidYouMean.formatter.message_for(suggestions) elsif defined?(::DidYouMean::Formatter) # before did_you_mean v1.2.0 ::DidYouMean::Formatter.new(suggestions).to_s else "" end end
# File lib/rake/task_manager.rb, line 62 def generate_message_for_undefined_task(task_name) message = "Don't know how to build task '#{task_name}' (See the list of available tasks with `rake --tasks`)" message + generate_did_you_mean_suggestions(task_name) end
Evaluate the block in a nested namespace named name
. Create
an anonymous namespace if name
is nil.
# File lib/rake/task_manager.rb, line 220 def in_namespace(name) name ||= generate_name @scope = Scope.new(name, @scope) ns = NameSpace.new(self, @scope) yield(ns) ns ensure @scope = @scope.tail end
Lookup a task. Return an existing task if found, otherwise create a task of the current type.
# File lib/rake/task_manager.rb, line 49 def intern(task_class, task_name) @tasks[task_name.to_s] ||= task_class.new(task_name, self) end
Lookup a task, using scope and the scope hints in the task name. This method performs straight lookups without trying to synthesize file tasks or rules. Special scope names (e.g. '^') are recognized. If no scope argument is supplied, use the current scope. Return nil if the task cannot be found.
# File lib/rake/task_manager.rb, line 184 def lookup(task_name, initial_scope=nil) initial_scope ||= @scope task_name = task_name.to_s if task_name =~ /^rake:/ scopes = Scope.make task_name = task_name.sub(/^rake:/, "") elsif task_name =~ /^(\^+)/ scopes = initial_scope.trim($1.size) task_name = task_name.sub(/^(\^+)/, "") else scopes = initial_scope end lookup_in_scope(task_name, scopes) end
Resolve the arguments for a task/rule. Returns a triplet of [task_name, arg_name_list, prerequisites].
# File lib/rake/task_manager.rb, line 87 def resolve_args(args) if args.last.is_a?(Hash) deps = args.pop resolve_args_with_dependencies(args, deps) else resolve_args_without_dependencies(args) end end
List of all defined tasks in this application.
# File lib/rake/task_manager.rb, line 160 def tasks @tasks.values.sort_by { |t| t.name } end
List of all the tasks defined in the given scope (and its sub-scopes).
# File lib/rake/task_manager.rb, line 166 def tasks_in_scope(scope) prefix = scope.path tasks.select { |t| /^#{prefix}:/ =~ t.name } end
Private Instance Methods
Add a location to the locations field of the given task.
# File lib/rake/task_manager.rb, line 233 def add_location(task) loc = find_location task.locations << loc if loc task end
Attempt to create a rule given the list of prerequisites.
# File lib/rake/task_manager.rb, line 263 def attempt_rule(task_name, task_pattern, args, extensions, block, level) sources = make_sources(task_name, task_pattern, extensions) prereqs = sources.map { |source| trace_rule level, "Attempting Rule #{task_name} => #{source}" if File.exist?(source) || Rake::Task.task_defined?(source) trace_rule level, "(#{task_name} => #{source} ... EXIST)" source elsif parent = enhance_with_matching_rule(source, level + 1) trace_rule level, "(#{task_name} => #{source} ... ENHANCE)" parent.name else trace_rule level, "(#{task_name} => #{source} ... FAIL)" return nil end } task = FileTask.define_task(task_name, { args => prereqs }, &block) task.sources = prereqs task end
Find the location that called into the dsl layer.
# File lib/rake/task_manager.rb, line 240 def find_location locations = caller i = 0 while locations[i] return locations[i + 1] if locations[i] =~ /rake\/dsl_definition.rb/ i += 1 end nil end
Generate an anonymous namespace name.
# File lib/rake/task_manager.rb, line 251 def generate_name @seed ||= 0 @seed += 1 "_anon_#{@seed}" end
Return the current description, clearing it in the process.
# File lib/rake/task_manager.rb, line 311 def get_description(task) desc = @last_description @last_description = nil desc end
Lookup the task name
# File lib/rake/task_manager.rb, line 200 def lookup_in_scope(name, scope) loop do tn = scope.path_with_task_name(name) task = @tasks[tn] return task if task break if scope.empty? scope = scope.tail end nil end
Make a list of sources from the list of file name extensions / translation procs.
# File lib/rake/task_manager.rb, line 285 def make_sources(task_name, task_pattern, extensions) result = extensions.map { |ext| case ext when /%/ task_name.pathmap(ext) when %r{/} ext when /^\./ source = task_name.sub(task_pattern, ext) source == ext ? task_name.ext(ext) : source when String ext when Proc, Method if ext.arity == 1 ext.call(task_name) else ext.call end else fail "Don't know how to handle rule dependent: #{ext.inspect}" end } result.flatten end
Resolve task arguments for a task or rule when there are no dependencies declared.
The patterns recognized by this argument resolving function are:
task :t task :t, [:a]
# File lib/rake/task_manager.rb, line 104 def resolve_args_without_dependencies(args) task_name = args.shift if args.size == 1 && args.first.respond_to?(:to_ary) arg_names = args.first.to_ary else arg_names = args end [task_name, arg_names, []] end


Silence Is NOT An Option The murder of George Floyd was the result of inhumane police brutality that is perpetuated by a culture of white supremacy.
.NeXt Generation (London, United Kingdom) .NeXT Gen is a group of open-minded technology professionals who are keen to discuss the latest innovations and developments in the community. We are planning workshops, talks, panels, and discussion
joshiemoore/snakeware A free Linux distro with a fully Python userspace. Contribute to joshiemoore/snakeware development by creating an account on GitHub.
Lawsuit over online book lending could bankrupt Internet Archive Publishers call online library “willful digital piracy on an industrial scale.”
Wiki - PinebookProSixMonthsIn There’s been a lot of excited reviews among the more nerdly segments of society about the Pinebook Pro, a 14-inch, $200 Linux laptop using an ARM CPU and generally open-source hardware. Rumors are it’s extremely solid for a piece of hardware that’s far be...
U.S. police have attacked journalists more than 110 times since May 28 "Although in some incidents it is possible the journalists were hit or affected accidentally, in the majority of the cases we have recorded the journalists are clearly identifiable as press, and it is clear that they are being deliberately targeted."
Avalonia UI Framework Avalonia uses a XAML dialect that should feel immediately familiar to anyone coming from WPF, UWP and Xamarin Forms.
Why Our Intuition About Sea-Level Rise Is Wrong - Oceans on Nautilus Jerry Mitrovica has been overturning accepted wisdom for decades. A solid Earth geophysicist at Harvard, he studies the internal structure and processes of the Earth, which has implications for fields...
Customising the ASP.NET Core default UI without editing the PageModels In this post I show how you can replace the Razor views for the ASP.NET Core Identity default UI, without having to replace the code-behind PageModels.
Folklore.org: Round Rects Are Everywhere! Bill Atkinson worked mostly at home, but whenever he made significant progress he rushed in to Apple to show it off to anyone who would appreciate it. This time, he visited the Macintosh offices at Texaco Towers to show off his brand new oval routines, ...
Microsoft Defender SmartScreen is hurting independent developers – ImageView Let us say you are an independent developer and it is time to publish your app to the world. To make it easier, you build an installer and start distributing it. A courageous early adopter downloads and runs it, only to be greeted by this strongly worded ...
Official George Floyd Memorial Fund organized by Philonise Floyd On May 25, 2020, my life shattered as I learned of the tragic passing of my dear b… Philonise Floyd needs your support for Official George Floyd Memorial Fund
How We Solved the Worst Minigame in Zelda's History Twitch: https://www.twitch.tv/linkus7/ After Years of having to deal with Sploosh Kaboom, the Battleship Minigame in The Legend of Zelda: The Wind Waker, we have finally found a way to beat it consistently. This is the result of many people's efforts to ...
Simplifying Board Games A few years ago I wrote about how I'd been playing a simplified version of Carcassonne with Lily. We stopped for a while, but recently we've played simplified versions of Ticket to Ride, Race for the Galaxy, Guillotine, and Settlers of Catan. My general ...
Seven years later, I bought a new Macbook. For the first time, I don The 2013 Macbook Air is the best computer I have ever owned. My wish has always been that Apple did nothing more than update the CPU and the screen, touching nothing else. I was afraid the day of upgrading my laptop would come. But it came. My A
Getting Started With Cloudinary API (Live Stream) The Cloudinary API is an amazing tool for managing your media (images, video, etc.). In this stream, Tamas gives me an intro to uploading and displaying images to/from Cloudinary. With the Cloudinary API, you can upload, transform, and optimize images and...
Surprise Capital One court decision spells trouble for incident response Surprise Capital One court decision spells trouble for incident response
The danger of async/await and .Result in one picture – TooSlowException Sync over async in .NET is always bad and there is no better advice than just to avoid it. What does “Sync over async” mean exactly? It happens if you synchronously wait on an asynchronous operation result with the help of .Result, .Wait or similar. Why i...
Serializer recommendations for 5.0 by steveharter · Pull Request #113 · dotnet/designs Based on a prior internal review and feedback, putting various information together to discuss.
Martin Heinz - Personal Website & Blog Welcome to my personal website and blog, here you can find some information about me, contact, social media links as well as my blog posts
As Qualified Immunity Takes Center Stage, More Delay from SCOTUS I fear I may have become trapped in a time loop, in which every week I am doomed to write the same blog post about how the Supreme Court has delayed consideration of its qualified immunity docket. Back in April, I noted that the Court had scheduled thirte...
The Debian Administrator's Handbook A reference book presenting the Debian distribution, from initial installation to configuration of services.
electronicarts/CnC_Remastered_Collection Contribute to electronicarts/CnC_Remastered_Collection development by creating an account on GitHub.
Stop Taking Regular Notes; Use a Zettelkasten Instead Using a Zettelkasten helps you make connections between notes, improving learning and memory.
Tip 256 - Work with your Azure apps in Visual Studio Codespaces You can now use Visual Studio Codespaces to develop your applications with. This means that you can open a browser and start coding. Or you can use VS Code or Visual Studio (available soon) on your local machine and connect that to Visual Studio Codespace...
Fiddler Everywhere v0.10 is Here! Fiddler Everywhere is more beautiful, more useful and more powerful than ever.
Using Microsoft.FeatureManagement.AspNetCore to filter actions and HTML In our previous post, we introduced Microsoft.FeatureManagement as a way to manage feature flag functionality in your .NET applications. As mentioned in the post, this library is compatible with any .NET Standard application.
winget install learning | Windows Command Line Last week we announced a package manager preview for Windows. Our goal is to provide a great product to our customers and community where everyone can contribute and receive recognition. The last thing that we want to do is alienate anyone in the process.
Introducing the Microsoft.FeatureManagement library A couple of weeks ago, I needed to find a way to better manage new functionality for a feature that was not ready yet (it broke stuff). We didn’t know exactly when the feature would be shipped, but we also didn’t want to deal with branch and merging heada...
Getting Started with ASP.NET Core and MongoDB - Code Maze In this article, we’re going to cover how to set up an ASP.NET Core Web API with MongoDB as our database. To help us build a web API with a schema-less database, we’ll look at how to set up an ASP.NET Core application with MongoDB.
Absentee and Early Voting | USAGov Learn about absentee and early voting as alternatives to voting on Election Day. Find out the rules for your state.
Visual Studio Subscriptions administrator feature updates | Visual Studio Blog We’ve heard your feedback about wanting an improved Visual Studio subscriptions administration experience and are sharing details about a few big changes we hope you’ll like!
Monsters Weekly 167 - Generating an Absolute URL in Razor Pages When sharing a URL to a specific page in your Razor Page application via email, you need the ability to generate an absolute URL. In this week’s episode, Monster Dave shows us the easy way to do that.
Music Industry Calling for a 'Blackout' in Response to George Floyd's Death Music companies and artists began spreading a message on social media calling for “a day to disconnect from work and reconnect with out community" following the death of George Floyd.
Police brutality in Seattle First off, a brief programming note: now is not the right time to continue with the usual topic of this blog: a lighthearted exploration of algorithmic complexity and optimization. We’ll get …
Administrative Records Mask Racially Biased Policing by Dean Knox, Will Lowe, Jonathan Mummolo :: SSRN Researchers often lack the necessary data to credibly estimate racial discrimination in policing. In particular, police administrative records lack information
Balance fallacy - RationalWiki “”There's a kind of notion that everyone's opinion is equally valid. My arse! A bloke who's been a professor of dentistry for 40 years doesn't have a debate with some eejit who removes his teeth with string and a door!


{{people.summary}}
{{work.summary}}
You can list your side projects or open source libraries in this section.


graphene electrolyte wetting Fig. confined surface layer water contact mica SFA surfaces {border-style disks initial iridium opposing px;} #ffffff;} layers materials battery thickness Li-ion gold behaviour using used film ions mobility FECO electrolyte. mobile rigid silica smooth Phys. distance interface interfacial mica–gold mica–graphene nano-confined pore shown Figure Raman Supplementary different disk electrode formation material mica–mica px; {font-family area compared deposited electrochemical font-size graphene, indicates indicating presence pressure Thus, double; experiment, investigated lithium-ion macroscopic molecules results set-up shift sputtered work Chem. [], border-color border-width confinement contrast, diameter dry films flat higher interfaces. liquid mirror performed prepared present remains seen size small solid; stable {font-style {font-weight (see Israelachvili Lett. Li-ions Nat. RMS additional adsorbed allows applied aqueous area, area. bold carbonate change courier; critical data decrease deposition described design directly disks. distance, electrodes electrolytes em; experimental experiments force forces form graphene. increasing indicate initially injection interactions interfaces ionic is, layering light limited low lower materials. microscopy molecular molecularly monolayer nanoscale obtained order organic processes properties pt;} related resolution response sheets shows studies study surface. transport understanding volume wettability μm


Utils¶
-
piXedfit.utils.filtering.
add_filter
(filter_name, filter_wave, filter_transmission, filter_cwave)¶ A function for adding a new filter transmission function into piXedfit
- Parameters
filter_name – A given name (in string) for the filter curve
filter_wave – array of wavelength in the filter transmission function
filter_transmission – array of transmission corresponding with the filter_wave
filter_cwave – The central wavelength or effective wavelength of the filter
-
piXedfit.utils.filtering.
cwave_filters
(filters)¶ A function for retrieving central wavelengths of a set of filters
- Parameters
filters – A list of filters names
- Returns cwaves
A list of central wavelengths of the filters
-
piXedfit.utils.filtering.
filtering
(wave, spec, filters)¶ A function for integrating a spectrum through a filter transmission function
- Parameters
wave – array of wavelength of the input spectrum
spec – array of fluxes of the input spectrum
filters – List of filters name in array of string
- Returns fluxes
Array of photometric fluxes
-
piXedfit.utils.filtering.
get_filter_curve
(filter_name)¶ A function to get a transmission function of a filter available in piXedfit
- Parameters
filter_name – Name of the filter
- Returns wave
Array of wavelength
- Returns trans
Array of transmission values
-
piXedfit.utils.filtering.
list_filters
()¶ A function for listing the available filters transmission functions in piXedfit
- Returns filters
List of filters curves available
-
piXedfit.utils.filtering.
remove_filter
(filter_name)¶ A function to remove a new filter transmission function from piXedfit
- Parameters
filter_name – A given name (in string) for the filter curve


Patrick Stacey
Patrick uses the example of a case-study around a computer game design firm. Initially comments on the variety of established software development methodologies and their explicit or unspoken failings, around the centrality of planning. He goes on to examine the practice of software development as exercised by the case study firm in which improvisation could be said to be central, although this doesn't mean 'out of control' on Giddens definition (introduced page 17). He uses a theory of the human activity which separates aspects of Signification, Domination and Legitimation, in which Communication, Power and Sanction act through Interpretive Schemes, Resources and Rules respectively (three parallel aspects) - see diagram on Page 6. I really like the contrast between Flux and Sedimentation as it maps well to design theory, in which many alternatives are generated by some processes, and they are culled in others.
Structuration Theory, Flux and Sedimentation
"There are many formal approaches that have been proposed for controlling
software projects...the Waterfall Model (Royce, 1970) ...breaks the IS
development process down into discrete stages such as feasibility study,
systems investigation, and implementation (Avison and Fitzgerald, 1995).
There are a number of similar structured systems development methods such
as Structured Systems Analysis and Design Methodology (SSADM)
(Fitzgerald, 1996) and even some forms of agile development like XP
(Beck, 1999). The typical stages in the
development lifecycle occur in a linear sequential manner with a
provision for feedback loops between the stages (Boehm, 1988)."
"process models and other innovations such as high-level languages like object-oriented, have not improved the ability to control the software development process (Pressman, 1987); they were not ‘silver bullets’ (Brooks, 1995)."
"Therefore, there is the suggestion of letting-go in order to control
when developers are seen to be capable, that they can deal with the
complexity of the situation as it emerges (Bach, 1995). This is consonant
with the amethodical view of software development, which promotes
embracing complexity and ambiguity. Unlike metric-driven process
improvement, amethodical development emphasizes the different voices and
interests of the developers, as well as negotiation that lead to
compromise solutions (Truex et al, 2000:p.71)." [this is critical also to
the dynamic of co-design and the general discourse around Boundary
processes]
"normative methodical software development approaches are employed as a social defense so as to “avoid the risks of real engagement with each other and with the task at hand. They turn away from the exigencies of work and take refuge in a surreal world.” [credited to Wastell]
"Improvisation therefore carries the hallmarks of control in its potential to bring about order from chaos (e.g.Highsmith, 2002; Ciborra 1999).Yet it is largely regarded as something distinct from control and a concept that requires further research (Brown and Eisenhardt, 1995). This is not surprising as control usually infers planning, whereas improvisation does not usually involve this." [related to software requirements capture vs. co-design?]
"I then used structuration theory (Giddens 1984) as a theoretical lens (Orlikowski, 2000) to guide the analysis and interpret the data."
"if they did not need a feature then it was not put it in, unless there was time left over for such ‘bells and whistles’. Identifying what was a feature and what was a bell or a whistle was constantly being decided on-the-fly."
"Despite the constant communication between client and QGS in the form of reports and art samples there was still a lack of shared understanding. They seemed to be talking past each other, not clarifying meanings but making assumptions. It was only when a playable prototype was presented to the client that an awareness of acommunication breakdown emerged."
"I now draw on the three associated dimensions and related elements of Giddens’ Structuration theory as a lens by which to interpret the themes of communication, power, and legitimation. I relate to communication to efforts to understand project details such as requirements and design, power relates to improvisation, and legitimation relates to norms of software development."
"Legitimation could therefore lead to non-routine actions. Given the designs were construed as being ambiguous for instance, this provoked a stream of non-routine improvised activities in order to fill the ‘interpretive holes’ in the design in-use. The communication process therefore had the potential to significantly flex the game development practices. Indeed, play-testing was a practice that enabled the clarification of the meanings of the design in-use. Therefore, while play-testing constituted a non-routine and improvised activity, its repetition simultaneously contributed to the sedimentation of the design in-use and thereby also the process as a whole"
"The communication process involved intense and ingenious efforts to make sense of equivocal designs in-use. To exercise their power over or improvise around ambiguity, the actors engaged in an intense interplay between (re)interpretation and play-testing. Play-testing was the act by which the actors performed a game prototype, i.e. a manifestation or “build” of a design in-use. Sometimes this occurred as a distinct phase in the innovation process, or through the use of a design tool. The play-test performance contributed to efforts to make sense of designs in-use, stimulating interpretation and reflection"
"Through ongoing design improvisation, so a collective sense of designs in-use emerged, which contributed to design sedimentation and control. It may be imagined then that design improvisation was like a vortex or spiral that inched ever closer towards sedimentation,"
"The implication here is that where the requirements and design have a strong aesthetic component, improvisation may be a more salient process control strategy."
Royce, W. W. (1970). [concerning the 'Waterfall' model] "Managing Development of Large Scale Software Systems." IEEE WESCON, TRW: 1-9.
J. Huizinga (1944) Homo Ludens


Blog with API
Home
|
Users
Post's title
Username
Actual username
Email
User email
Body
Post's body
Comments
Edit post
Title
Body


I am a Graphics Designer based in The Netherlands. My passion is programming: converterting awesome design into optimal code.
Send me a message, if you like to see some of my work!


|
THE MAN WHO WASN'T THERE: Shyster Lawyers In Neo-Noir
by Michael Asimow
The Coen Brothers have done
it again! The Man Who Wasn't There delivers a loving parody
in stunning black-and-white of noir favorites like Double
Indemnity and The Postman Always Rings Twice. It is
superb. Hilarious. A knockout.
Billy Bob Thornton, at his
stone-faced best, plays Ed Crane, a small town barber of few
words but many cigarettes. The always exquisite Frances McDormand
is his wife Doris who, it seems, has been straying with her boss
Big Dave (James Gandolfini) over at Nirdlinger's Department Store.
Now if only Ed could find a way to raise $10,000 to invest in
the radical new idea of dry cleaning. . .
The
story then meanders pleasurably through antic subplots, not to
mention blackmail and various murders, suicides and other mayhem,
with the wrong people getting accused of all the wrong crimes.
Anyone who reveals the plot should be sent to the chair, so I'll
refrain from disclosing any more of it.
Instead, let's turn to my personal
favorite character in the film: the deliciously sleazeball lawyer
Freddie Reidenschneider, said to be the best criminal lawyer
in California, who winds up defending both Doris and Ed. Tony
Shalhoub is picture-perfect in the role of Freddie. Freddie is
such a world-class BS artist. He employs the Heisenberg uncertainty
principle to illustrate that we can never know whether a fact
is true since we will always change it by observing it. Indeed,
Ed reports, Freddie told the jury "to look not at the facts,
but at the meaning of the facts. Then he said the facts had no
meaning." Also, Freddie lives by the motto "I litigate.
I don't capitulate."
Knowing full well that his
clients can't afford his services, Freddie tanks up on immense
meals at the local eatery at their expense. He unabashedly instructs
his clients what lies to tell. And, of course, he dumps them
when the money runs out. He is replaced by the thunderously inept
public defender Lloyd Garroway who pleads his murder client "guilty
with explanation."
Freddie is in the grand tradition
of movie shysters, and we law and pop culture mavens could reel
off quite a few. Freddie reminded me particularly of the affable
gonif Willie Gingrich (Walter Matthau) in The Fortune Cookie
(1966) who enthusiastically cooks up a totally phony personal
injury case and terrifies the suave insurance lawyers on the
other side. Then there's the surpassingly inept Dennis Denuto
in The Castle (1997) who
relied on "the vibes" from Australia's famous Mabo
case.
But my absolute favorite movie
shyster is the immortal Billy Flynn (Adolpe Menjou), the criminal
defense lawyer in Roxie Hart
(1942). This film was the basis for the fabulous Kander and Ebb
musical Chicago. (Billy's the one in Chicago who describes his
courtroom technique in the lyrics "Show them a little razzle
dazzle, razzle dazzle 'em. . .) Billy defends only women who
have killed their husbands or boyfriends and, of course, Chicago
juries always acquit these lovely ladies. As in The Man Who
Wasn't There or The Fortune Cookie, Flynn sees his
job as concocting some wholly fictitious story for his murderous
client and then selling this nonsense to the newspapers and to
the jury.
Well, the lovable shyster Freddy
is only one of the numerous attractions of The Man Who Wasn't
There, a picture that fans of noir and of law movies simply
can't miss.
Posted December 10, 2001
|


98 The block takes as its input a one-input script, as shown in the product example. It calls that script with the continuation of the call-with-continuation block itself as its input. In this case, that continuation is reporting to whichever script called product. If the input list doesn’t include a zero, then nothing is ever done with that continuation, and this version works just like the original product. But if the input list is 1,2,3,0,4,5, then three recursive calls are made, the zero is seen, and product-helper runs the continuation, with an input of 0. The continuation immediately reports that 0 to the caller of product, without unwinding all the recursive calls and without the unnecessary multiplications. I could have written product a little more simply using a Reporter ring instead of a Command ring: but it’s customary to use a script to represent the input to call w/continuation because very often that input takes the form so that the continuation is saved permanently and can be called from anywhere in the project. That’s why the input slot in call w/continuation has a Command ring rather than a Reporter ring. First class continuations are an experimental feature in Snap ! and there are many known limitations in it. One is that the display of reporter continuations shows only the single block in which the call w/continuation is an input.


{% extends 'base.html' %} {% load i18n bootstrap_form %} {% block content %} {% if new_products or new_customers or new_locations %}
Please resolve the following issues before sending any pending orders:
{% if conceptorder_list and not new_products and not new_customers and not new_locations %} {% endif %}
| Date | Customer | Drink count | |
|---|---|---|---|
| {{ order.date|date:"d-m-Y" }} | {{ order.customer }} | {{ order.conceptorderdrink_set.all|length }} | View |


{% extends "base.html" %} {% block body %}
{{ _("RemindMe is a web application to send SMS reminders to yourselves.") }}
{{ _("It's free. With Free.") }}


| Package | Description |
|---|---|
| org.apache.commons.beanutils |
The Bean Introspection Utilities component of the Apache Commons
subproject offers low-level utility classes that assist in getting and setting
property values on Java classes that follow the naming design patterns outlined
in the JavaBeans Specification, as well as mechanisms for dynamically defining
and accessing bean properties.
|
| Modifier and Type | Class and Description |
|---|---|
class |
BasicDynaBean
Minimal implementation of the
DynaBean interface. |
class |
ConvertingWrapDynaBean
Implementation of
DynaBean that wraps a standard JavaBean
instance, so that DynaBean APIs can be used to access its properties,
though this implementation allows type conversion to occur when properties are set. |
class |
LazyDynaBean
DynaBean which automatically adds properties to the
DynaClass
and provides Lazy List and Lazy Map features. |
class |
LazyDynaMap
Provides a light weight
DynaBean facade to a Map
with lazy map/list processing. |
class |
ResultSetIterator
|
class |
WrapDynaBean
Implementation of
DynaBean that wraps a standard JavaBean
instance, so that DynaBean APIs can be used to access its properties. |
| Modifier and Type | Field and Description |
|---|---|
protected List<DynaBean> |
RowSetDynaClass.rows
The list of
DynaBean s representing the contents of
the original ResultSet on which this
RowSetDynaClass was based. |
| Modifier and Type | Method and Description |
|---|---|
protected DynaBean |
RowSetDynaClass.createDynaBean()
Create and return a new
DynaBean instance to be used for
representing a row in the underlying result set. |
DynaBean |
BaseDynaBeanMapDecorator.getDynaBean()
Provide access to the underlying
DynaBean
this Map decorates. |
DynaBean |
LazyDynaMap.newInstance()
Instantiate and return a new DynaBean instance, associated
with this DynaClass.
|
DynaBean |
BasicDynaClass.newInstance()
Instantiate and return a new DynaBean instance, associated
with this DynaClass.
|
DynaBean |
WrapDynaClass.newInstance()
Instantiates a new standard JavaBean instance associated with
this DynaClass and return it wrapped in a new WrapDynaBean
instance.
|
DynaBean |
DynaClass.newInstance()
Instantiate and return a new DynaBean instance, associated
with this DynaClass.
|
DynaBean |
ResultSetIterator.next()
Return the next element in the iteration.
|
DynaBean[] |
LazyDynaList.toDynaBeanArray()
Converts the List to an DynaBean Array.
|
| Modifier and Type | Method and Description |
|---|---|
List<DynaBean> |
RowSetDynaClass.getRows()
Return a
List containing the DynaBean s that
represent the contents of each Row from the
ResultSet that was the basis of this
RowSetDynaClass instance. |
Iterator<DynaBean> |
ResultSetDynaClass.iterator()
|
| Constructor and Description |
|---|
BaseDynaBeanMapDecorator(DynaBean dynaBean)
Constructs a read only Map for the specified
DynaBean . |
BaseDynaBeanMapDecorator(DynaBean dynaBean,
boolean readOnly)
Construct a Map for the specified
DynaBean . |
DynaBeanMapDecorator(DynaBean dynaBean)
Deprecated.
Constructs a read only Map for the specified
DynaBean . |
DynaBeanMapDecorator(DynaBean dynaBean,
boolean readOnly)
Deprecated.
Construct a Map for the specified
DynaBean . |
DynaBeanPropertyMapDecorator(DynaBean dynaBean)
Constructs a read only Map for the specified
DynaBean . |
DynaBeanPropertyMapDecorator(DynaBean dynaBean,
boolean readOnly)
Construct a Map for the specified
DynaBean . |
Copyright © 2000–2019 The Apache Software Foundation. All rights reserved.


Inherits JSONObject.
List of all members.
Public Member Functions |
|
| HLocation (JSONObject jsonObj) throws JSONException |
| HGeo | getPos () |
|
void | setPos (HGeo pos) |
| String | getZip () |
|
void | setZip (String zip) |
| String | getNum () |
|
void | setNum (String num) |
| String | getWayType () |
|
void | setWayType (String wayType) |
| String | getWay () |
|
void | setWay (String way) |
| String | getAddr () |
|
void | setAddr (String addr) |
| String | getFloor () |
|
void | setFloor (String floor) |
| String | getBuilding () |
|
void | setBuilding (String building) |
| String | getCity () |
|
void | setCity (String city) |
| String | getCountryCode () |
|
void | setCountryCode (String countryCode) |
Package Attributes |
|
final Logger | logger = LoggerFactory.getLogger(HLocation.class) |
Detailed Description
- Version:
- 0.6 This structure describe the location
Member Function Documentation
- Returns:
- the address complement of the location. NULL if undefined
- Returns:
- the building’s identifier of the location. NULL if undefined
- Returns:
- city of the location. NULL if undefined
- Returns:
- countryCode of the location. NULL if undefined
- Returns:
- the floor number of the location. NULL if undefined
- Returns:
- the way number of the location. NULL if undefined
- Returns:
- hGeo which specifies the exacte longitude and latitude of the location. Null if undefined.
- Returns:
- the name of the street/way of the location. NULL if undefined
- Returns:
- the type of the way of the location. NULL if undefined
- Returns:
- the zip code of the location. NULL if undefined
The documentation for this class was generated from the following file:
- hAPI-android/src/main/java/org/hubiquitus/hapi/hStructures/HLocation.java


SoundInstance Class
A SoundInstance is created when any calls to the Sound API method play or createInstance are made. The SoundInstance is returned by the active plugin for control by the user.
Example
var myInstance = createjs.Sound.play("myAssetPath/mySrcFile.mp3");
A number of additional parameters provide a quick way to determine how a sound is played. Please see the Sound API method play for a list of arguments.
Once a SoundInstance is created, a reference can be stored that can be used to control the audio directly through the SoundInstance. If the reference is not stored, the SoundInstance will play out its audio (and any loops), and is then de-referenced from the Sound class so that it can be cleaned up. If audio playback has completed, a simple call to the play instance method will rebuild the references the Sound class need to control it.
var myInstance = createjs.Sound.play("myAssetPath/mySrcFile.mp3", {loop:2});
myInstance.addEventListener("loop", handleLoop);
function handleLoop(event) {
myInstance.volume = myInstance.volume * 0.5;
}
Events are dispatched from the instance to notify when the sound has completed, looped, or when playback fails
var myInstance = createjs.Sound.play("myAssetPath/mySrcFile.mp3");
myInstance.addEventListener("complete", handleComplete);
myInstance.addEventListener("loop", handleLoop);
myInstance.addEventListener("failed", handleFailed);
Constructor
Item Index
Methods
- _beginPlaying
- _cleanUp
- _cleanUpAudioNode
- _createAndPlayAudioNode
- _dispatchEvent
- _handleSoundComplete
- _handleSoundReady
- _init
- _interrupt
- _sendEvent
- _updateVolume
- addEventListener
- dispatchEvent
- getDuration
- getMute
- getPan
- getPosition
- getVolume
- hasEventListener
- initialize
- off
- on
- pause
- play
- removeAllEventListeners
- removeEventListener
- resume
- setMute
- setPan
- setPosition
- setVolume
- stop
- toString
- willTrigger
Properties
- _captureListeners
- _delay
- _delayTimeoutId
- _duration
- _listeners
- _muted
- _offset
- _owner
- _paused
- _remainingLoops
- _soundCompleteTimeout
- _sourceNodeNext
- _startTime
- gainNode
- onComplete deprecated
- onLoop deprecated
- onPlayFailed deprecated
- onPlayInterrupted deprecated
- onPlaySucceeded deprecated
- pan
- panNode
- playState
- sourceNode
- src
- uniqueId
- volume
Events
Methods
_beginPlaying
-
offset
-
loop
-
volume
-
pan
Called by the Sound class when the audio is ready to play (delay has completed). Starts sound playing if the src is loaded, otherwise playback will fail.
Parameters:
-
offset
NumberHow far into the sound to begin playback, in milliseconds.
-
loop
NumberThe number of times to loop the audio. Use -1 for infinite loops.
-
volume
NumberThe volume of the sound, between 0 and 1.
-
pan
NumberThe pan of the sound between -1 (left) and 1 (right). Note that pan does not work for HTML Audio.
_cleanUp
()
protected
Clean up the instance. Remove references and clean up any additional properties such as timers.
_cleanUpAudioNode
-
audioNode
Turn off and disconnect an audioNode, then set reference to null to release it for garbage collection
Parameters:
-
audioNode
Object
Returns:
_createAndPlayAudioNode
-
startTime
-
offset
Creates an audio node using the current src and context, connects it to the gain node, and starts playback.
Parameters:
Returns:
_dispatchEvent
-
eventObj
-
eventPhase
_handleSoundComplete
-
event
Audio has finished playing. Manually loop it if required.
Parameters:
-
event
Object
_handleSoundReady
()
protected
Handles starting playback when the sound is ready for playing.
_init
-
src
-
owner
Initialize the SoundInstance. This is called from the constructor.
Parameters:
-
src
StringThe source of the audio.
-
owner
ClassThe plugin that created this instance.
_interrupt
()
protected
The sound has been interrupted.
_sendEvent
-
type
A helper method that dispatches all events for SoundInstance.
Parameters:
-
type
StringThe event type
_updateVolume
()
Boolean
protected
Internal function used to update the volume based on the instance volume, master volume, instance mute value, and master mute value.
Returns:
addEventListener
-
type
-
listener
-
[useCapture]
Adds the specified event listener. Note that adding multiple listeners to the same function will result in multiple callbacks getting fired.
Example
displayObject.addEventListener("click", handleClick);
function handleClick(event) {
// Click happened.
}
Parameters:
-
type
StringThe string type of the event.
-
listener
Function | ObjectAn object with a handleEvent method, or a function that will be called when the event is dispatched.
-
[useCapture]
Boolean optionalFor events that bubble, indicates whether to listen for the event in the capture or bubbling/target phase.
dispatchEvent
-
eventObj
-
[target]
Dispatches the specified event to all listeners.
Example
// Use a string event
this.dispatchEvent("complete");
// Use an Event instance
var event = new createjs.Event("progress");
this.dispatchEvent(event);
Parameters:
-
eventObj
Object | String | EventAn object with a "type" property, or a string type. While a generic object will work, it is recommended to use a CreateJS Event instance. If a string is used, dispatchEvent will construct an Event instance with the specified type.
-
[target]
Object optionalThe object to use as the target property of the event object. This will default to the dispatching object. This parameter is deprecated and will be removed.
Returns:
getDuration
()
Number
Get the duration of the instance, in milliseconds. Note in most cases, you need to play a sound using play or the Sound API play method before its duration can be reported accurately.
Example
var soundDur = myInstance.getDuration();
Returns:
getMute
()
Boolean
Get the mute value of the instance.
Example
var isMuted = myInstance.getMute();
Returns:
getPan
()
Number
NOTE that you can access pan directly as a property, and getPan remains to allow support for IE8 with FlashPlugin.
Get the left/right pan of the instance. Note in WebAudioPlugin this only gives us the "x" value of what is actually 3D audio.
Example
var myPan = myInstance.getPan();
Returns:
getPosition
()
Number
Get the position of the playhead of the instance in milliseconds.
Example
var currentOffset = myInstance.getPosition();
Returns:
getVolume
()
NOTE that you can access volume directly as a property, and getVolume remains to allow support for IE8 with FlashPlugin.
Get the volume of the instance. The actual output volume of a sound can be calculated using:
myInstance.getVolume() * createjs.Sound.getVolume();
Returns:
hasEventListener
-
type
Indicates whether there is at least one listener for the specified event type.
Parameters:
-
type
StringThe string type of the event.
Returns:
initialize
()
protected
Initialization method.
off
-
type
-
listener
-
[useCapture]
A shortcut to the removeEventListener method, with the same parameters and return value. This is a companion to the .on method.
on
-
type
-
listener
-
[scope]
-
[once=false]
-
[data]
-
[useCapture=false]
A shortcut method for using addEventListener that makes it easier to specify an execution scope, have a listener only run once, associate arbitrary data with the listener, and remove the listener.
This method works by creating an anonymous wrapper function and subscribing it with addEventListener. The created anonymous function is returned for use with .removeEventListener (or .off).
Example
var listener = myBtn.on("click", handleClick, null, false, {count:3});
function handleClick(evt, data) {
data.count -= 1;
console.log(this == myBtn); // true - scope defaults to the dispatcher
if (data.count == 0) {
alert("clicked 3 times!");
myBtn.off("click", listener);
// alternately: evt.remove();
}
}
Parameters:
-
type
StringThe string type of the event.
-
listener
Function | ObjectAn object with a handleEvent method, or a function that will be called when the event is dispatched.
-
[scope]
Object optionalThe scope to execute the listener in. Defaults to the dispatcher/currentTarget for function listeners, and to the listener itself for object listeners (ie. using handleEvent).
-
[once=false]
Boolean optionalIf true, the listener will remove itself after the first time it is triggered.
-
[data]
optionalArbitrary data that will be included as the second parameter when the listener is called.
-
[useCapture=false]
Boolean optionalFor events that bubble, indicates whether to listen for the event in the capture or bubbling/target phase.
Returns:
pause
()
Boolean
Pause the instance. Paused audio will stop at the current time, and can be resumed using resume.
Example
myInstance.pause();
Returns:
play
-
[interrupt="none"|options]
-
[delay=0]
-
[offset=0]
-
[loop=0]
-
[volume=1]
-
[pan=0]
Play an instance. This method is intended to be called on SoundInstances that already exist (created with the Sound API createInstance or play).
Example
var myInstance = createjs.Sound.createInstance(mySrc);
myInstance.play({offset:1, loop:2, pan:0.5}); // options as object properties
myInstance.play(createjs.Sound.INTERRUPT_ANY); // options as parameters
Parameters:
-
[interrupt="none"|options]
String | Object optionalHow to interrupt any currently playing instances of audio with the same source, if the maximum number of instances of the sound are already playing. Values are defined as
INTERRUPT_TYPE
constants on the Sound class, with the default defined by Sound defaultInterruptBehavior.
OR
This parameter can be an object that contains any or all optional properties by name, including: interrupt, delay, offset, loop, volume, and pan (see the above code sample). -
[delay=0]
Number optionalThe delay in milliseconds before the sound starts
-
[offset=0]
Number optionalHow far into the sound to begin playback, in milliseconds.
-
[loop=0]
Number optionalThe number of times to loop the audio. Use -1 for infinite loops.
-
[volume=1]
Number optionalThe volume of the sound, between 0 and 1.
-
[pan=0]
Number optionalThe pan of the sound between -1 (left) and 1 (right). Note that pan is not supported for HTML Audio.
removeAllEventListeners
-
[type]
Removes all listeners for the specified type, or all listeners of all types.
Example
// Remove all listeners
displayObject.removeAllEventListeners();
// Remove all click listeners
displayObject.removeAllEventListeners("click");
Parameters:
-
[type]
String optionalThe string type of the event. If omitted, all listeners for all types will be removed.
removeEventListener
-
type
-
listener
-
[useCapture]
Removes the specified event listener.
Important Note: that you must pass the exact function reference used when the event was added. If a proxy function, or function closure is used as the callback, the proxy/closure reference must be used - a new proxy or closure will not work.
Example
displayObject.removeEventListener("click", handleClick);
resume
()
Boolean
Resume an instance that has been paused using pause. Audio that has not been paused will not playback when this method is called.
Example
myInstance.pause();
// do some stuff
myInstance.resume();
Returns:
setMute
-
value
Mute and unmute the sound. Muted sounds will still play at 0 volume. Note that an unmuted sound may still be silent depending on Sound volume, instance volume, and Sound mute.
Example
myInstance.setMute(true);
Parameters:
-
value
BooleanIf the sound should be muted.
Returns:
setPan
-
value
NOTE that you can set pan directly as a property, and getPan remains to allow support for IE8 with FlashPlugin.
Set the left(-1)/right(+1) pan of the instance. Note that HTMLAudioPlugin does not support panning, and only simple left/right panning has been implemented for WebAudioPlugin. The default pan value is 0 (center).
Example
myInstance.setPan(-1); // to the left!
Parameters:
-
value
NumberThe pan value, between -1 (left) and 1 (right).
Returns:
setPosition
-
value
Set the position of the playhead in the instance. This can be set while a sound is playing, paused, or stopped.
Example
myInstance.setPosition(myInstance.getDuration()/2); // set audio to its halfway point.
Parameters:
-
value
NumberThe position to place the playhead, in milliseconds.
setVolume
-
value
NOTE that you can set volume directly as a property, and setVolume remains to allow support for IE8 with FlashPlugin. Set the volume of the instance. You can retrieve the volume using getVolume.
Example
myInstance.setVolume(0.5);
Note that the master volume set using the Sound API method setVolume will be applied to the instance volume.
Parameters:
-
value
ObjectThe volume to set, between 0 and 1.
Returns:
stop
()
Boolean
Stop playback of the instance. Stopped sounds will reset their position to 0, and calls to resume will fail. To start playback again, call play.
Example
myInstance.stop();
Returns:
willTrigger
-
type
Indicates whether there is at least one listener for the specified event type on this object or any of its ancestors (parent, parent's parent, etc). A return value of true indicates that if a bubbling event of the specified type is dispatched from this object, it will trigger at least one listener.
This is similar to hasEventListener, but it searches the entire event flow for a listener, not just this object.
Parameters:
-
type
StringThe string type of the event.
Returns:
true
if there is at least one listener for the specified event.
Properties
_delay
Number
protected
The time in milliseconds before the sound starts. Note this is handled by Sound.
Default: 0
_delayTimeoutId
TimeoutVariable
protected
A Timeout created by Sound when this SoundInstance is played with a delay. This allows SoundInstance to remove the delay if stop or pause or cleanup are called before playback begins.
Default: null
_duration
Number
protected
The length of the audio clip, in milliseconds. Use getDuration to access.
Default: 0
_offset
Number
protected
How far into the sound to begin playback in milliseconds. This is passed in when play is called and used by pause and setPosition to track where the sound should be at. Note this is converted from milliseconds to seconds for consistency with the WebAudio API.
Default: 0
_remainingLoops
Number
protected
The number of play loops remaining. Negative values will loop infinitely.
Default: 0
_soundCompleteTimeout
TimeoutVariable
protected
Timeout that is created internally to handle sound playing to completion. Stored so we can remove it when stop, pause, or cleanup are called
Default: null
_sourceNodeNext
AudioNode
protected
NOTE this only exists as a WebAudioPlugin property and is only intended for use by advanced users. _sourceNodeNext is the audio source for the next loop, inserted in a look ahead approach to allow for smooth looping. Connected to gainNode.
Default: null
_startTime
Number
protected
WebAudioPlugin only. Time audio started playback, in seconds. Used to handle set position, get position, and resuming from paused.
Default: 0
gainNode
AudioGainNode
NOTE this only exists as a WebAudioPlugin property and is only intended for use by advanced users.
GainNode for controlling SoundInstance
volume. Connected to the WebAudioPlugin gainNode
that sequences to context.destination
.
pan
Number
The pan of the sound, between -1 (left) and 1 (right). Note that pan is not supported by HTML Audio.
Note this uses a getter setter, which is not supported by Firefox versions 3.6 or lower, Opera versions 11.50 or lower,
and Internet Explorer 8 or lower. Instead use setPan and getPan.
Note in WebAudioPlugin this only gives us the "x" value of what is actually 3D audio.
Default: 0
panNode
AudioPannerNode
NOTE this only exists as a WebAudioPlugin property and is only intended for use by advanced users.
A panNode allowing left and right audio channel panning only. Connected to SoundInstance gainNode.
playState
String
The play state of the sound. Play states are defined as constants on Sound.
Default: null
sourceNode
AudioNode
NOTE this only exists as a WebAudioPlugin property and is only intended for use by advanced users.
sourceNode is the audio source. Connected to SoundInstance panNode.
volume
Number
The volume of the sound, between 0 and 1.
Note this uses a getter setter, which is not supported by Firefox versions 3.6 or lower and Opera versions 11.50 or lower,
and Internet Explorer 8 or lower. Instead use setVolume and getVolume.
The actual output volume of a sound can be calculated using:
myInstance.volume * createjs.Sound.getVolume();
Default: 1
Events
complete
The event that is fired when playback completes. This means that the sound has finished playing in its entirety, including its loop iterations.
failed
The event that is fired when playback has failed. This happens when there are too many channels with the same src property already playing (and the interrupt value doesn't cause an interrupt of another instance), or the sound could not be played, perhaps due to a 404 error.
interrupted
The event that is fired when playback is interrupted. This happens when another sound with the same src property is played using an interrupt value that causes this instance to stop playing.
loop
The event that is fired when a sound has completed playing but has loops remaining.


|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface SIFResponseIterator
For the publisher to be able to deal with large amounts of data it must implement this interface if the publisher responds to SIF requests from subscribers. The general idea is that the constructor if the implementation retrieves the data in a manner that it can be iterated and load record by record into memory and returns them as part of the getNextSIFObject() method. This could be through SQL result sets, cursors or any other means of retrieving large data amounts in a sequential manner rather than loading the entire data amount in memory and then return them all in one call.
| Method Summary | |
|---|---|
openadk.library.SIFDataObject |
getNextSIFObject(BaseInfo baseInfo,
MappingInfo mappingInfo)
This method returns the next available SIF Object. |
boolean |
hasNext()
Returns TRUE if there are more SIF Objects available. |
void |
releaseResources()
To be able to retrieve SIF Objects one by one there might be the need to allocate some resources in the class that implements this interface. |
| Method Detail |
|---|
openadk.library.SIFDataObject getNextSIFObject(BaseInfo baseInfo, MappingInfo mappingInfo) throws openadk.library.tools.mapping.ADKMappingException
baseInfo
- The base info object of the given publisher. This allows the getNextSIFObject() method
to access important properties and values of the publisher if it is needed.mappingInfo
- The mapping info that can be used if mapping is available. Note that property
mappingCtx of this parameter can be null if there is no mapping available
for the given publisher and its SIF Object it deals with (ie. No mapping for
StudentPersonal).
openadk.library.tools.mapping.ADKMappingException
- if mapping is used and there is an issue with the mapping.boolean hasNext()
void releaseResources()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


{% extends "template.html" %} {% block content %}
Please select a course to view grades:
{% for o in course %}
{{ o[1] }}
{% endfor %}
View grades
Go back to home page
{% endblock %}


|
Classes:
AWSSessionCredentials,
AcknowledgeJobInput,
AcknowledgeJobOutput,
AcknowledgeThirdPartyJobInput,
AcknowledgeThirdPartyJobOutput,
ActionConfiguration,
ActionConfigurationProperty,
ActionContext,
ActionDeclaration,
ActionExecution,
ActionRevision,
ActionState,
ActionType,
ActionTypeId,
ActionTypeSettings,
ApprovalResult,
Artifact,
ArtifactDetails,
ArtifactLocation,
ArtifactRevision,
ArtifactStore,
BlockerDeclaration,
CreateCustomActionTypeInput,
CreateCustomActionTypeOutput,
CreatePipelineInput,
CreatePipelineOutput,
CurrentRevision,
DeleteCustomActionTypeInput,
DeletePipelineInput,
DisableStageTransitionInput,
EmptyStructure,
EnableStageTransitionInput,
EncryptionKey,
ErrorDetails,
ExecutionDetails,
FailureDetails,
GetJobDetailsInput,
GetJobDetailsOutput,
GetPipelineExecutionInput,
GetPipelineExecutionOutput,
GetPipelineInput,
GetPipelineOutput,
GetPipelineStateInput,
GetPipelineStateOutput,
GetThirdPartyJobDetailsInput,
GetThirdPartyJobDetailsOutput,
InputArtifact,
Job,
JobData,
JobDetails,
ListActionTypesInput,
ListActionTypesOutput,
ListPipelinesInput,
ListPipelinesOutput,
OutputArtifact,
PipelineContext,
PipelineDeclaration,
PipelineExecution,
PipelineSummary,
PollForJobsInput,
PollForJobsOutput,
PollForThirdPartyJobsInput,
PollForThirdPartyJobsOutput,
PutActionRevisionInput,
PutActionRevisionOutput,
PutApprovalResultInput,
PutApprovalResultOutput,
PutJobFailureResultInput,
PutJobSuccessResultInput,
PutThirdPartyJobFailureResultInput,
PutThirdPartyJobSuccessResultInput,
RetryStageExecutionInput,
RetryStageExecutionOutput,
S3ArtifactLocation,
StageContext,
StageDeclaration,
StageExecution,
StageState,
StartPipelineExecutionInput,
StartPipelineExecutionOutput,
ThirdPartyJob,
ThirdPartyJobData,
ThirdPartyJobDetails,
TransitionState,
UpdatePipelineInput,
UpdatePipelineOutput
|


Up: Introduction
Next: Basic Concepts
Previous: Features Needed to Support Libraries
The corresponding
concepts that MPI provides, specifically to support robust libraries, are
as follows:
- Contexts of communication,
- Groups of processes,
- Virtual topologies,
- Attribute caching,
- Communicators.
Communicators (see [19,40,45]) encapsulate all of
these ideas in order to provide the appropriate scope for all communication
operations in MPI. Communicators are divided into two kinds:
intra-communicators for operations within a single group of processes and
inter-communicators for operations between two groups of
processes.
Caching. Communicators (see
below) provide a ``caching'' mechanism that allows one to
associate new attributes with communicators, on a par with MPI built-in
features. This can be used by advanced users to adorn communicators further,
and by MPI to implement some communicator functions. For example, the
virtual-topology functions described in
Chapter Process Topologies
are likely to be supported this way.
Groups. Groups
define an ordered collection of processes, each with a rank, and it is this
group that defines the low-level names for inter-process communication (ranks
are used for sending and receiving). Thus, groups define a scope for process
names in point-to-point communication. In addition, groups define the scope
of collective operations. Groups may be manipulated separately from
communicators in MPI, but only communicators can be used in
communication operations.
Intra-communicators. The most commonly used means for message
passing in MPI is via intra-communicators. Intra-communicators contain an
instance of a group, contexts of communication for both point-to-point and
collective communication, and the ability to include virtual topology and
other attributes.
These features work as follows:
- Contexts provide the ability to have separate safe ``universes''
of message-passing in MPI. A context is akin to an additional
tag that differentiates messages.
The system manages this differentiation process.
The use of separate communication
contexts by distinct libraries (or distinct library invocations)
insulates communication internal to the library execution from
external communication. This allows the invocation of the library even if
there are pending communications
on ``other'' communicators, and avoids the need to
synchronize entry or exit into library code. Pending point-to-point
communications are also guaranteed not to interfere with collective
communications within a single communicator.
- Groups define the participants in the communication (see above)
of a communicator.
- A virtual topology defines a special mapping of the ranks in a
group to and from a topology. Special constructors for
communicators are defined in Chapter Process Topologies
to provide
this feature. Intra-communicators as described in this chapter do
not have topologies.
- Attributes define the local information that the user or
library has added to a communicator for later reference.
Advice to users.
The practice in many communication libraries is that there is
a unique, predefined communication universe that includes all
processes available when the parallel program is initiated; the processes are
assigned consecutive ranks. Participants in a point-to-point
communication are identified by their rank; a collective communication
(such as broadcast) always involves all processes. This practice can be
followed in MPI by using the predefined communicator
MPI_COMM_WORLD. Users who are satisfied with this practice
can plug in MPI_COMM_WORLD wherever a communicator argument
is required, and can consequently disregard the rest of this chapter.
( End of advice to users.)
Inter-communicators. The discussion has dealt so far with intra-communication: communication
within a group. MPI also supports inter-communication: communication
between two non-overlapping groups. When an application is built by composing
several parallel modules, it is convenient to allow one module to communicate
with another using local ranks for addressing within the second module. This
is especially convenient in a client-server computing paradigm, where either
client or server are parallel. The support of inter-communication
also provides a mechanism for the extension of MPI to a dynamic model where
not all processes are preallocated at initialization time. In such a
situation, it becomes necessary to support communication across ``universes.''
Inter-communication is supported by objects called inter-communicators.
These objects bind two groups together with communication contexts shared by
both groups.
For inter-communicators, these features work as follows:
- Contexts provide the ability to have
a separate safe ``universe''
of message-passing between the two groups. A send in the local
group is always a receive in the remote group, and vice versa.
The system manages this differentiation process.
The use of separate communication
contexts by distinct libraries (or distinct library invocations)
insulates communication internal to the library execution from
external communication. This allows the invocation of the library even if
there are pending communications
on ``other'' communicators, and avoids the need to
synchronize entry or exit into library
code.
- A local and remote group specify the recipients and destinations
for an inter-communicator.
- Virtual topology is undefined for an inter-communicator.
- As before,
attributes cache defines the local information that the user or
library has added to a communicator for later reference.
MPI provides mechanisms for creating and manipulating inter-communicators.
They are used for point-to-point
and collective
communication in an related manner to
intra-communicators. Users who do not need inter-communication
in their applications can safely ignore this extension.
Users
who require inter-communication between overlapping groups
must layer
this capability on top of MPI.
Up: Introduction
Next: Basic Concepts
Previous: Features Needed to Support Libraries
Return to MPI-2.1 Standard Index
Return to MPI Forum Home Page
MPI-2.0 of July 1, 2008
HTML Generated on July 6, 2008


Use the field below to specify the maximum number of case labels expected.
Powered by InspectionGadgets


Use the button above to start and stop the tones, and the volume control to change the volume of the notes E and G in the chord.


%args>
$select => ''
%args>
Languages
<%perl>
my $margin = "5px";
my $language_total = 0;
my @skills = qw{ native expert intermediate basic };
foreach my $row (@{$dbh->selectall_arrayref(qq{
SELECT l.name,l.iso_639_1,count(mls.member)
FROM languages l, member_language_skill mls
JOIN member_trustgroup mt ON (ROW(mt.member, mt.trustgroup) =
ROW(mls.member, $tg->{db_ident}))
JOIN member_state ms ON (ms.ident = mt.state)
WHERE mls.language = l.iso_639_1
AND NOT ms.hidden
AND NOT ms.blocked
GROUP BY l.name,l.iso_639_1 order by l.name})})
{
my $language_name = $row->[0];
my $language_iso = $row->[1];
my $language_count = $row->[2];
$language_total += $language_count;
my $selector = '';
$selector = "?select=$language_iso" if $language_iso ne $select;
print $q->h5({style => "margin-top: $margin; margin-bottom: $margin;"},$q->a({-href=>$q->url().$selector},
"[$language_name - $language_iso ]: $language_count"));
if($select eq $language_iso || $select eq 'all')
{
print $q->start_ul({type => 'circle',style => "margin-top: $margin; margin-bottom: $margin;"});
foreach my $skill (@skills)
{
if(defined $languages{$language_iso}{$skill})
{
print $q->li($q->h5({style => "margin-top: $margin; margin-bottom: $margin;"},$skill));
print $q->start_ul({type => 'circle'});
foreach my $row (@{$languages{$language_iso}{$skill}})
{
print $q->li($q->a({-href=>"/site/show_member.html" .
"?member=$row->{ident}"},
$q->code($row->{ident})) .
' ('.$q->escapeHTML(
$row->{affiliation}).')');
}
print $q->end_ul;
}
}
print $q->end_ul;
}
}
print $q->h5({style => "margin-top: $margin; margin-bottom: $margin;"},$q->a({-href=>$q->url()."?select=all"},
"[All ]: $language_total"));
%perl>
<%shared>
my $q = undef;
my $dbh = undef;
my $tg = undef;
my %languages = {};
%shared>
<%init>
$q = $Mech->{cgi};
$dbh = $Site->{dbh};
$tg = $Site->{tg};
foreach my $row (@{$dbh->selectall_arrayref(qq{
SELECT m.ident AS ident, m.affiliation AS affiliation,
mls.language AS language, mls.skill AS skill
FROM member_language_skill mls, member m
JOIN member_trustgroup mt ON (ROW(mt.member, mt.trustgroup) =
ROW(m.ident, $tg->{db_ident}))
JOIN member_state ms ON (ms.ident = mt.state)
WHERE NOT ms.hidden
AND NOT ms.blocked
AND m.ident = mls.member
ORDER BY m.entered
}, {Slice => {}})}) {
if (!defined $languages{$row->{'language'}})
{
$languages{$row->{'language'}} = {};
if(!defined $languages{$row->{'language'}})
{
$languages{$row->{'language'}}{$row->{'skill'}} = [];
}
}
push @{$languages{$row->{'language'}}{$row->{'skill'}}}, $row;
}
%init>


Spawn Component
The SpawnComponent is frequently used to spawn instances of prefabs at runtime. The component references a prefab. It can then either spawn this prefab continuously in intervals, or at will by triggering the spawn command from (script) code.
Component Properties
Prefab:
The prefab that will be spawned by this component.
AttachAsChild:
If true, the spawned object will be attached to the owner of the SpawnComponent. In most cases this should be disabled.
SpawnAtStart:
If true, the SpawnComponent will spawn the prefab immediately when it gets activated.
SpawnContinuously:
If true, the component will continue to spawn more and more prefab instances. This can only be stopped either through custom (script) code or by deleting the spawn component.
MinDelay, DelayRange:
The minimum time that has to pass before the component will spawn another instance, plus some random delay. This not only applies to the SpawnContinuously case, but also to cases where the spawn may be triggered from code. Meaning, this can be used to limit how often an action is allowed. For example, a gun can use a SpawnComponent to launch projectiles, and the gun code can simply trigger the SpawnComponent every time the user clicks. However, due to the MinDelay, the gun will only fire every once in a while, without having to write that logic in the gun code.
Deviation:
When a new prefab instance is created, it will be positioned at the location of the SpawnComponent. The Deviation allows you to add a random rotation away from the X axis. In EZ most components use the +X axis as their main axis of operation. For instance, projectiles fly along +X, spot lights point into +X direction, etc. Therefore the SpawnComponent tilts the new instances away from the +X axis and all prefabs should be authored to work with this accordingly.
Details
See the API Docs for ezSpawnComponent
for the component's interface.


Applications
Time
Store
Profile
1 / 2
2 / 2
❮
❯
Google Chat
LMS Team Chat
Schedule
Team Schedules
Applications
Tech-Ops App Portal
×


| Combination | Behavior |
|---|---|
| Click | Select the clicked entity. A selected entity can be deleted or resized. |
| Double Click | Edit the selected entity. |
| Shift + Click | Add the clicked entity to a group selection. |
| Drag & Drop | Move the entity to a new position on the canvas. |
| Delete Key | Delete the selected entity or entities. |
| Control Key + Click | Display the coordinates for the clicked point. |


Storage Test
Values are stored on
keyup
Content loaded from previous sessions:
sessionStorage:
localStorage:


ccccccccccc
XXXXXXXXXXXXXX one
XXXXXXXXXXXXXX two
XXXXXXXXXXXXXX three
XXXXXXXXXXXXXX four
ttttttttttttttt


The EDA experience so far is fasinating. In reference to the video where Shereef explains the fundamentals of the course and how he draws on two mind sets. The first one is the Restaurant/Consumer Mindset where you are given the impression that Bootcamp is a package and therefore, your expectations are high. The second mindset is known as the "Kitchen Mindset" where we have all come together to experience together, some of us are cooks with more experience and some of us have just picked up a chopping knife for the first time. But we all have our aprons and hats and we're all coming together to make this stew together. I draw parallels with the second mindset. It reminded me of when I first learnt how to speak Korean, and having to actively seek help from my peers who knew more then me and working together so that we were pushing each other, to better ourselves and to prove to myself that it is possible if I'm well prepared and eager to learn.
My impression so far is that there is an excellent support system to ensure that we meet our goals and if I stay positive and motivated then everything will be okay.
Always asking for help and giving my support in return, learning new ideas and networking with my peers and teachers so that we're able to work together to see our goals become a reality. This is the mindset that will help me engage in this type of culture.
My initial expectation of EDA was that it would predominantly be a lecture based style of learning, consisting of resources that would need to be memorized etc. That is not the case with EDA, the projects are fun and interesting, not to say that they are easy, because for myself, it has been quite difficult, but of course, I expected that when learning new material. But to have an element of "fun" within the folds of learning has definitely exceeded my expectations.
I'm definitely excited to be learning and participating in this kind of learning environemnt. It is intimidating and nerve-racking, but I am prepared to be challenged. It's like living in a new country for the first time. Intimidating because you don't know anyone and you're not confident in the language, nerve-racking because you're stepping out of your comfort zone, therefore, the idea of having to learn quickly can be exhilerating.


Java is a general-purpose computer-programming language that is concurrent, class-based, object-oriented, and specifically designed to have as few implementation dependencies as possible.
Companies that use Java as their Primary Programming Language:


Europe: High-quality Super NES poster set on My Nintendo for 300 Platinum Points
by My Nintendo News AdminThe collectors amongst you should be made aware that there’s currently a high-quality Super NES poster set available on My Nintendo in Europe. The set is available for a reasonable 300 Platinum Points but shipping is fairly expensive. Still, if you want to get your hands on these high quality posters to decorate your room or house then go for it. The three posters are for Super Mario Kart, Super Metroid and The Legend of Zelda: Link to the Past.


Below you find the goodness-of-fit visual diagnostic plots for atazanavir PBPK model performance (observed versus individually simulated plasma concentration and weighted residuals versus time) of all data used for model building.
GMFE = 1.496554
GMFE = 1.496554


A consequence of special relativity is also that mass increases for objects moving close to the speed of light. We will rely on our friend Jackie, one more time, to help us understand this [1]. However, we will also need help from her twin sister who has an identical spaceship as Jackie and you. Imagine that Jackie’s twin sister and you are stationary in the same reference frame, while Jackie is moving at 0.95c (see Figure F-4-10).
The instant Jackie’s ship reaches you and lines up with her twin’s ship, you push both of them with the same force for the same amount of time. Will your equally applied force accelerate their spaceships by the same amount?
Well, the answer is not as simple as yes or no. Because Jackie is moving close to the speed of light, we must now use our new relativity-thinking hat and remember that Jackie’s time is ticking slower than it is for you and her twin (as the two of you are stationary). In this case, the amount of time you applied the force to push Jackie is actually shorter than the amount of time you pushed her twin sister. If you apply the same force on both Jackie and her twin sister, but Jackie’s velocity is less affected, then her mass must be greater than her sister’s.
This effect is called the mass increase.
Another way to think of mass increase is to think of it as an object’s resistance to being accelerated close to the speed of light. In Newton’s Law equation: F = m a (where F is the force, m is the mass, and a is acceleration)
the object’s mass serves as the equation’s constant. In a relativistic universe, objects have an unchanging rest mass, but the mass increases according to the velocity of the object.
As an object accelerates, its resistance to that acceleration increases, showing up in the equation as an increase in the objects mass.
These effects only become significant at speeds comparable to the speed of light. To Einstein they meant that some other constant is at work and that is the speed of light!
The formula for mass increase:
where mmoving is the mass in a moving reference frame and mrest the mass in a stationary reference frame.
How significant is the mass increase at velocities close to the speed of light?
The higher the mass of an object the more difficult it is to get it to travel close to the speed of light, so lets test this on something with a small mass.
What is the mass of a fly traveling at 0.9999c with rest mass of 1 gram? [1]
Notice that the fly is moving very close to the speed of light and its mass increases by a factor of 70 (wow!) compared to its rest mass.


Before Change
super(WordClassifierBase, self).__init__()
def make_input(self, batch_dict):
x = batch_dict["x"]
xch = batch_dict.get("xch")
y = batch_dict.get("y")
lengths = batch_dict.get("lengths")
if self.gpu:
x = x.cuda()
if xch is not None:
xch = xch.cuda()
if y is not None:
y = y.cuda()
After Change
:param do_dropout: (``bool``) Should we do dropout. Defaults to False
:return:
example_dict = dict({})
for key in self.embeddings.keys():
example_dict[key] = torch.from_numpy(batch_dict[key])
if self.gpu:
example_dict[key] = example_dict[key].cuda()
// Allow us to track a length, which is needed for BLSTMs
if self.lengths_key is not None:
example_dict["lengths"] = torch.from_numpy(batch_dict[self.lengths_key])
if self.gpu:
example_dict["lengths"] = example_dict["lengths"].cuda()


Input Commands Demo
First Name:
Email :
Password :
Occupation:
Web Developer
Web Designer
Consultant
Manager
Other
Gender:
Male
Female
Bio:
Submit
Click Me


Copyright © 2009 Michael Truog
Version: 0.0.7 Apr 10 2010 21:58:01 ------------------------------------------------------------------------
Authors: Michael Truog (mjtruog [at] gmail (dot) com).
| add/6 |
Add task speed information to the task speed lookup.Task allocation will gradually improve to match the capacity of the node. |
| get_max_tasksize/4 |
Get the max tasksize and the node that can handle it.. |
| get_tasksize/4 |
Get the tasksize for a particular node.. |
| new/0 |
Get a new task speed lookup.. |
| update/2 |
Update the task speed lookup with information from new processes.. |
add(Node, WorkTitle, TaskSize, TargetTime, ElapsedTime, State) -> any()
get_max_tasksize(Processes, WorkTitle, InitialTaskSize, State) -> any()
get_tasksize(Node, WorkTitle, InitialTaskSize, State) -> any()
new() -> any()
update(Processes, State) -> any()
Generated by EDoc, Apr 10 2010, 21:58:01.


The Transaction Manager package contains the controller for ensuring
transactional integrity during processing, by wrapping each "stream" (file
or database operation) in a transaction, as record level transaction
handling (J2EE model) is far too costly and unwieldy for manging large
numbers of records.


software documentation | science communication | professional development
At Imply, I write and maintain technical documentation for Druid, a real-time analytics database. The audience for whom I write includes software developers, database administrators, and end users.
See other writing samples in my portfolio below.
Awarded research fellowship by National Science Foundation (NSF)
I completed my chemistry PhD at UC Irvine (UCI), working in the area of computer-aided drug design.
In my research, I developed and applied computational tools to study biomolecular systems.
My projects ranged from understanding small molecule energetics to computing binding free energies of protein-ligand complexes.
The high level goal of my research was to further the development of new therapeutics using insights gained from molecular simulations.
See my research bio page
here (archived version),
and peruse my published works on
Google Scholar.
For the brave, dive into the details of my work in my dissertation,
or watch the recording of my dissertation defense
on YouTube.
The following video is a spotlight from UCI Pharmaceutical Sciences in which I describe my research and the motivation behind it.
I'm passionate about helping others develop in their scientific and career journeys.
Sometimes that comes through sharing my own journey, failures and all.
Other times that manifests by sharing tips, tricks, and advice in presentations and blog posts.
Finally, through LetterLift, I provide one-on-one resume review for those applying for jobs, grad schools, or fellowship programs.
Through LetterLift, I provide editing services for those applying to jobs, grad school, or fellowship programs, with a focus on undergraduate and graduate students in the sciences. A typical consultation includes copyediting, structural feedback, and suggestions for material improvements on resumes, cover letters, or personal statements. I've worked with PhD students applying for their first job out of graduate school, students applying for fellowships (e.g., NSF GRFP, AAAS STPF), full-time professionals applying for their next role, and those applying for admission to graduate programs. Learn more at LetterLift.
I served as a Communications Consultant for the Graduate Resource Center at UC Irvine in 2017-2019. Graduate students and postdoctoral scholars booked appointments with me to practice presentations presentations and solicit individualized feedback and advice. I worked with 25 grad students and postdocs preparing for job interviews, conference talks, doctoral candidacy exams, and TA lectures. In addition, I coached two international graduate students to pass English proficiency exams. Featured on the UCI Chemistry Instagram.
I am a licensed patent agent with the U.S. Patent and Trademark Office. In the intellectual property space, I've worked in the pharmaceutical industry as well as university technology transfer.
Compiled and drafted scientific protocols and data for patent applications.
Supported all scientific departments including neurology, pulmonology, medicinal chemistry, and process chemistry.
A typical application may disclose 2000-5000 compounds with associated structure, efficacy, and safety information.
Reviewed around 50 university innovations, mostly in medicine and engineering, for patentability and marketability. Prepared internal and external reports for licensing officers and potential business development partners.
Wired Walls |
|
The Loh Down on Science |
|
Podcast script for The Loh Down on Science introducing Carnegie Mellon's "smart wall" technology to a general audience. |
|
Vital Signs Monitor |
|
UC Irvine, Beall Applied Innovation |
|
Technology disclosure for UCI Applied Innovation to garner interest from potential business development partners. |
|
Benchmark assessment of molecular geometries and energies from small molecule force fields |
|
UC Irvine, Mobley Lab |
|
|
Scientific publication directed to researchers in computational chemistry.
Presents my project benchmarking commonly used tools in the industry.
|


--- layout: default title: "404: Page not found" permalink: 404.html exclude: true ---
Sorry, an error has occured, Requested page not found! Head home to try finding it again.


@import gospeak.core.domain.{Cfp, Event, Group, Sponsor, SponsorPack, User} @import gospeak.core.domain.utils.Constants @import gospeak.libs.scala.domain.Page @import gospeak.web.domain.{Breadcrumb, PageMeta} @import gospeak.web.pages.orga.events.routes.{EventCtrl => OrgaEventCtrl} @import gospeak.web.pages.published.groups.routes.GroupCtrl @import gospeak.web.pages.published.partials.html.{container, eventItem, groupCard} @import gospeak.web.utils._ @(group: Group.Full, speakerCount: Long, cfps: List[Cfp], events: Page[Event.Full], sponsors: List[Sponsor.Full], packs: List[SponsorPack], orgas: List[User], userMembership: Option[Group.Member])(b: Breadcrumb)(implicit req: UserAwareReq[AnyContent]) @container(s"${Constants.Emoji.group} ${group.name.value} events", PageMeta.group(group.group, b), b)() {
}()


Location
Room
Tap into the technology
you want to set.
Turn your lights on/off.
Make your phone ring.
Set the desired temperature.
Know if someone is at the door.
Set and snooze your alarms.
Start your coffee machine.
Know when your mails and emails arrive.
Skip, play, pause your music.
Dim the lights and play music.
Notify when leaving or arriving.
Please tap for a knock and hold to
register a silence.