What's your take on the DBC/EDA experience? My take is that it's an excelarated learning experience that focuses on enabling students to develop the basic skills needed to get their first job as a developer. With a focus on developing technical skills and abilities, there is also an equal emphasis on engineering empathy and soft skills needed for web developers. From attending the 'day in the life' at EDA I enjoyed hearing about their values and views on education; and how when learning new skills all sides of a person (physical, mental, emotional, spiritual) are dynamic and work together and are influencing the process of learning. I'm a qualified Primary School teacher and when doing my teacher training this view of education and learning being influenced by the whole self reminded me of Maori culture views on education and embracing all assets all of someones Hauora (well-being).
What are your impressions? My impression so far are positive, I like the space on Cuba Street, I was not sure how well I would cope with remote learning but so far have found there is alot of support if and when you need it while working remotely. How do you see yourself engaging with this type of culture? I see myself engaging positively in this type of culture. I enjoy learning new skills and having a safe and calm environment to learn in is so important and I believe EDA has endevoured to set this up effectively.Have your expectations of EDA changed? If so, how? Its only been less than a week so my expectations haven't changed too much so far.
Are you excited to participate in this kind of learning environment? Does it make you nervous? I'm nervous and excited to participate in this environment. It makes me nervous that I will be lacking in technical knowledge but excited to learn more.


"""
Copyright 2016 Shaiful Chowdhury, Stephanie Gil<EMAIL_ADDRESS><EMAIL_ADDRESS>Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""
import os, subprocess, time, threading
### this is the path to the GreenScaler folder
#BASE_PATH= os.environ['ANADROID_PATH'] + "/src/profilers/greenScaler/GreenScaler/"
BASE_PATH= "src/profilers/greenScaler/GreenScaler/"
APKS_PATH=BASE_PATH+"apks/"
TESTS_PATH=BASE_PATH+"tests/"
AAPT_PATH= os.environ['ANDROID_HOME'] + "/build-tools/26.0.2/"
IMAGE_PATH=BASE_PATH+"dest/images/"
[docs]def uninstall_app(pkg):
if pkg is None:
return
subprocess.call("adb shell pm uninstall " + pkg, shell=True)
[docs]def stop_app(pkg):
if pkg is not None:
subprocess.call("adb shell am force-stop " + pkg , shell=True)
[docs]def install_app(pkg):
if pkg is None:
return
subprocess.call("adb install apks/" + pkg +".apk" , shell=True)


This release of Saxon implements the full XQuery 1.0 grammar as defined in the working draft of 12 November 2003 The restrictions noted with respect to XPath 2.0 apply equally to Saxon's support for XQuery 1.0.
The current XQuery specification does not define multiple conformance levels. However, it is widely expected that as with XSLT 2.0, there will be a conformance level that requires XML Schema support and another that does not. Saxon-SA aims to support the schema-aware conformance level when it is defined, Saxon-B the basic conformance level.
Restrictions in Saxon compared with the November 2003 draft of XQuery 1.0 include the following:
User-defined functions must have namespace-prefixed names.
The as
clause in variable declarations (both global variables, and for
and let
variables) follow the function calling
rules, rather than the stricter rules that apply to variables. That is, the supplied value is converted to the declared
type in three ways: atomization of nodes, casting of untyped atomic, and numeric promotion.
The as
clause in some
and every
expressions is not
implemented.
Computed namespace constructors are not implemented.
The rules that determine which namespace nodes should be added to a constructed element are not fully implemented. (The main difference is that in some cases, constructed nodes inherit the namespace of their new parent, which is wrong according to the spec.)
If a document node appears in the sequence constructor for an element node, no error is produced. Instead the children of the document node are copied to the new element, as in XSLT.


Hi! My name is Luiza and I'm just another person trying to deal with a world pandemic while being at home. For this I started making sourdough bread at home.
This is a register of my journey and a bit of what I learned.
Please don't take this as a tutorial or an expert's view, I'm not an expert. You can check content from people that really understand about bread linked on the right. You can see bread I made here.
That said, I have to mention the two most important things I've learned making bread:
Making sourdough bread has a process, and it took me a while to understand it. Here are the main steps:
In more detail:
| Step | Description |
|---|---|
| Feed the starter | You should use your starter when it's at its peak (levain), so feed it and wait the number of necessary hours for it to rise. Use it before it falls. |
| Mix ingredients or autolyse | Mix flour + water (autolyse) and wait about one hour before adding the starter and the salt. Or just mix everything together from the beginning. |
| Bulk fermentation | You should fold the dough every 2 hours or so to build strenght, and observe it. Do it until it grows 50%. This highly depends on temperature on your kitchen + your starter. |
| Pre-shape | Do one set of folding and leave in covered for 30 minutes before taking it for proofing. This step is optional. |
| Final shape and proofing | Do one last set of folding and put the dough on the banneton. Let it rest in room temperature for a few hours or overnight in the fridge. |
| Score and Bake | Make a cut of about 1cm deep on your dough and bake it covered (on a dutch oven / cast iron pan) for 25 min. Finish baking uncovered until it's very brown. |
| Wait until it's cold | This is the hardest part, but you should not cut the bread while it is still hot, or it will get chewy. Wait 1 or even 2 hours before slicing it. |
I will not write a lot about sourdough starter, because I read very little about it and because I was lucky enough that my starter worked well from my first attempt, but I wouldn't know how to explain why.
I used Baker Bettie's step by step. There's a number of videos about it on youtube, just pick whatever works for you.
For my first bread I followed a tutorial step-by-step, and it turned out just ok. I left it in bulk fermentation for 5 hours and I think it was not enough, I think the bread was underfermented.
Also, my starter was very young - only 7 days of life - so I think this might have affected it too.
My second bread was better. I made it in a cold day so I assumed this would influence fermenting times, I left it in bulk fermentation for 8 hours and it grew beautifully. Maybe I could leave it a little more, but I'm not sure.
For my next trials, I want to experiment with different flours. Also, I want to start adding some seeds and nuts in the mixture.


Structure for Video Port configuration for CSI Rx SS. More...
#include <csirx_ss.h>
Data Fields | |
| uint32_t | instance |
| uint32_t | inWidth |
| uint32_t | inHeight |
Structure for Video Port configuration for CSI Rx SS.
| uint32_t CSL_CsirxVPConfig::inHeight |
Input height in units of lines
| uint32_t CSL_CsirxVPConfig::instance |
Video port instance to configure Refer to CSL_CsirxVPInstance
| uint32_t CSL_CsirxVPConfig::inWidth |
Input width in units of RAW data samples


Isola Rossa is a small unspoilt fishing village on the north west coast. There are excellent beaches in the vicinity as well as a pretty harbour with several restaurants and bars.
Docking
Porto Isola Rossa Marina
Lungomare Dettori
, 07038 Trinità d'Agultu e Vignola OT
, Sardinia, Italy


The methods prefixed with the word "private" should not be used by you. They are documented here to help the RiveScript library developers understand the code; they are not considered 'stable' API functions and they may change or be removed at any time, for any reason, and with no advance notice.
The most commonly used private function I've seen developers use is the
parse()
function, when they want to load RiveScript code from a string
instead of a file. Do not use this function. The public API equivalent
function is stream()
. The parse function will probably be removed in the
near future.
Create a new RiveScript interpreter. options
is an object with the
following keys:
null
. be careful when
setting this option if using somebody else's RiveScript
personality; see below)In UTF-8 mode, most characters in a user's message are left intact, except for
certain metacharacters like backslashes and common punctuation characters like
/[.,!?;:]/
.
If you want to override the punctuation regexp, you can provide a new one by
assigning the unicodePunctuation
attribute of the bot object after
initialization. Example:
var bot = new RiveScript({utf8: true});
bot.unicodePunctuation = new RegExp(/[.,!?;:]/g);
This option to the constructor will make RiveScript lowercase all the triggers
it sees during parse time. This may ease the pain point that authors
experience when they need to write a lowercase "i" in triggers, for example
a trigger of i am *
, where the lowercase i
feels unnatural to type.
By default a capital ASCII letter in a trigger would raise a parse error.
Setting the forceCase
option to true
will instead silently lowercase the
trigger and thus avoid the error.
Do note, however, that this can have side effects with certain Unicode symbols in triggers, see case folding in Unicode. If you need to support Unicode symbols in triggers this may cause problems with certain symbols when made lowercase.
The concat (short for concatenation) mode controls how RiveScript joins two
lines of code together when a ^Continue
command is used in a source file.
By default, RiveScript simply joins them together with no symbols inserted in
between ("none"); the other options are "newline" which joins them with line
breaks, or "space" which joins them with a single space character.
RiveScript source files can define a local, file-scoped setting for this
by using e.g. ! local concat = newline
, which affects how the continuations
are joined in the lines that follow.
Be careful when changing the global concat setting if you're using a RiveScript
personality written by somebody else; if they were relying on the default
concat behavior (didn't specify a ! local concat
option), then changing the
global default will potentially cause formatting issues or trigger matching
issues when using that personality.
I strongly recommend that you do not use this option if you intend to ever
share your RiveScript personality with others; instead, explicitly spell out
the local concat mode in each source file. It might sound like it will save
you a lot of typing by not having to copy and paste a ! local concat
option,
but it will likely lead to misbehavior in your RiveScript personality when you
give it to somebody else to use in their bot.
You can provide any or all of the following properties in the errors
argument to the constructor to override certain internal error messages:
replyNotMatched
: The message returned when the user's message does not
match any triggers in your RiveScript code.The default is "ERR: No Reply Matched"
Note: the recommended way to handle this case is to provide a trigger of
simply *
, which serves as the catch-all trigger and is the default one
that will match if nothing else matches the user's message. Example:
+ *
- I don't know what to say to that!
replyNotFound
: This message is returned when the user did in fact match
a trigger, but no response was found for the user. For example, if a trigger
only checks a set of conditions that are all false and provides no "normal"
reply, this error message is given to the user instead.The default is "ERR: No Reply Found"
Note: the recommended way to handle this case is to provide at least one
normal reply (with the -
command) to every trigger to cover the cases
where none of the conditions are true. Example:
+ hello
* <get name> != undefined => Hello there, <get name>.
- Hi there.
objectNotFound
: This message is inserted into the bot's reply in-line when
it attempts to call an object macro which does not exist (for example, its
name was invalid or it was written in a programming language that the bot
couldn't parse, or that it had compile errors).The default is "[ERR: Object Not Found]"
* deepRecursion
: This message is inserted when the bot encounters a deep
recursion situation, for example when a reply redirects to a trigger which
redirects back to the first trigger, creating an infinite loop.
The default is "ERR: Deep Recursion Detected"
These custom error messages can be provided during the construction of the
RiveScript object, or set afterwards on the object's errors
property.
Examples:
var bot = new RiveScript({
errors: {
replyNotFound: "I don't know how to reply to that."
}
});
bot.errors.objectNotFound = "Something went terribly wrong.";
Returns the version number of the RiveScript.js library.
Detect the runtime environment of this module, to determine if we're running in a web browser or from node.
This is the debug function. If debug mode is enabled, the 'message' will be
sent to the console via console.log (if available), or to your onDebug
handler if you defined one.
Print a warning or error message. This is like debug, except it's GOING to
be given to the user one way or another. If the onDebug
handler is
defined, this is sent there. If console
is available, this will be sent
there. In a worst case scenario, an alert box is shown.
Load a RiveScript document from a file. The path can either be a string that contains the path to a single file, or an array of paths to load multiple files. The Promise resolves when all of the files have been parsed and loaded. The Promise rejects on error.
This loading method is asynchronous so you must resolve the promise or await it before you go on to sort the replies.
For backwards compatibility, this function can take callbacks instead of returning a Promise:
rs.loadDirectory(path, onSuccess(), onError(err, filename, lineno))
()
(string error)
Load RiveScript documents from a directory recursively.
For backwards compatibility, this function can take callbacks instead of returning a Promise:
rs.loadDirectory(path, onSuccess(), onError(err, filename, lineno))
This function is not supported in a web environment.
Load RiveScript source code from a string. code
should be the raw
RiveScript source code, with line breaks separating each line.
This function is synchronous, meaning it does not return a Promise. It parses the code immediately and returns. Do not fear: the parser runs very quickly.
Returns true
if the code parsed with no error.
onError function receives: (err string[, filename str, line_no int])
Parse RiveScript code and load it into memory. name
is a file name in case
syntax errors need to be pointed out. code
is the source code.
Returns true
if the code parsed with no error.
After you have finished loading your RiveScript code, call this method to populate the various sort buffers. This is absolutely necessary for reply matching to work efficiently!
Translate the in-memory representation of the loaded RiveScript documents
into a JSON-serializable data structure. This may be useful for developing
a user interface to edit RiveScript replies without having to edit the
RiveScript code manually, in conjunction with the write()
method.
The format of the deparsed data structure is out of scope for this document,
but there is additional information and examples available in the eg/
directory of the source distribution. You can read the documentation on
GitHub here: RiveScript Deparse
Translate the in-memory representation of the RiveScript brain back into
RiveScript source code. This is like write()
, but it returns the text of
the source code as a string instead of writing it to a file.
You can optionally pass the parameter deparsed
, which should be a data
structure of the same format that the deparse()
method returns. If not
provided, the current internal data is used (this function calls deparse()
itself and uses that).
Warning: the output of this function won't be pretty. For example, no word wrapping will be done for your longer replies. The only guarantee is that what comes out of this function is valid RiveScript code that can be loaded back in later.
Write the in-memory RiveScript data into a RiveScript text file. This method can not be used on the web; it requires filesystem access and can only run from a Node environment.
This calls the stringify()
method and writes the output into the filename
specified. You can provide your own deparse-compatible data structure,
or else the current state of the bot's brain is used instead.
Set a custom language handler for RiveScript object macros. See the source for the built-in JavaScript handler (src/lang/javascript.coffee) as an example.
By default, JavaScript object macros are enabled. If you want to disable these (e.g. for security purposes when loading untrusted third-party code), just set the JavaScript handler to null:
var bot = new RiveScript();
bot.setHandler("javascript", null);
Define a JavaScript object macro from your program.
This is equivalent to having a JS object defined in the RiveScript code, except your JavaScript code is defining it instead.
Set a global variable. This is equivalent to ! global
in RiveScript.
Set the value to undefined
to delete a global.
Set a bot variable. This is equivalent to ! var
in RiveScript.
Set the value to undefined
to delete a bot variable.
Set a substitution. This is equivalent to ! sub
in RiveScript.
Set the value to undefined
to delete a substitution.
Set a person substitution. This is equivalent to ! person
in RiveScript.
Set the value to undefined
to delete a person substitution.
Set a user variable for a user.
Set multiple user variables by providing an object of key/value pairs.
Equivalent to calling setUservar()
for each pair in the object.
Gets a variable. This is equivalent to <bot name>
in RiveScript.
Get a variable from a user. Returns the string "undefined" if it isn't defined.
Get all variables about a user. If no user is provided, returns all data about all users.
Clear all a user's variables. If no user is provided, clears all variables for all users.
Freeze the variable state of a user. This will clone and preserve the user's
entire variable state, so that it can be restored later with
thawUservars()
Thaw a user's frozen variables. The action can be one of the following: * discard: Don't restore the variables, just delete the frozen copy. * keep: Keep the frozen copy after restoring * thaw: Restore the variables and delete the frozen copy (default)
Retrieve the trigger that the user matched most recently.
Retrieve the trigger that the user matched initially. This will return only the first matched trigger and will not include subsequent redirects.
This value is reset on each reply()
call.
Retrieve the triggers that have been matched for the last reply. This will contain all matched trigger with every subsequent redirects.
This value is reset on each reply()
or replyAsync()
call.
Retrieve the triggers in the current topic for the specified user. It can be used to create a UI that gives the user options based on trigges, e.g. using buttons, select boxes and other UI resources. This also includes the triggers available in any topics inherited or included by the user's current topic.
This will return undefined
if the user cant be find
Retrieve the current user's ID. This is most useful within a JavaScript object macro to get the ID of the user who invoked the macro (e.g. to get/set user variables for them).
This will return undefined if called from outside of a reply context
(the value is unset at the end of the reply()
method)
Fetch a reply from the RiveScript brain. The message doesn't require any special pre-processing to be done to it, i.e. it's allowed to contain punctuation and weird symbols. The username is arbitrary and is used to uniquely identify the user, in the case that you may have multiple distinct users chatting with your bot.
Changed in version 2.0.0: this function used to return a string, but
therefore didn't support async object macros or session managers. This
function now returns a Promise (obsoleting the replyAsync()
function).
The optional scope
parameter will be passed down into any JavaScript
object macros that the RiveScript code executes. If you pass the special
variable this
as the scope parameter, then this
in the context of an
object macro will refer to the very same this
as the one you passed in,
so for example the object macro will have access to any local functions
or attributes that your code has access to, from the location that reply()
was called. For an example of this, refer to the eg/scope
directory in
the source distribution of RiveScript-JS.
Example:
// Normal usage as a promise
bot.reply(username, message, this).then(function(reply) {
console.log("Bot>", reply);
});
// Async-Await usage in an async function.
async function getReply(username, message) {
var reply = await bot.reply(username, message);
console.log("Bot>", reply);
}
Obsolete as of v2.0.0 -- use reply()
instead in new code.
Asyncronous version of reply. Use replyAsync if at least one of the subroutines
used with the <call>
tag returns a promise.
Example: using promises
rs.replyAsync(user, message).then(function(reply) {
console.log("Bot>", reply);
}).catch(function(error) {
console.error("Error: ", error);
});
Example: using the callback
rs.replyAsync(username, msg, this, function(error, reply) {
if (!error) {
console.log("Bot>", reply);
} else {
console.error("Error: ", error);
}
});
DEPRECATED
Backwards compatible alias to the native JavaScript Promise
object.
rs.Promise
used to refer to an RSVP.Promise
which acted as a polyfill
for older systems. In new code, return a native Promise directly from your
object macros.
This enables you to create a JavaScript object macro that returns a promise for asynchronous tasks (e.g. polling a web API or database). Example:
rs.setSubroutine("asyncHelper", function (rs, args) {
return new rs.Promise(function (resolve, reject) {
resolve(42);
});
});
If you're using promises in your object macros, you need to get a reply from
the bot using the replyAsync()
method instead of reply()
, for example:
rs.replyAsync(username, message, this).then(function(reply) {
console.log("Bot> ", reply);
});


1 - Large boats are generally called ships.
2 - Boats and ships serve a variety of purposes including transport, recreation, fishing, sporting competition and military operations.
3 - Sailboats are propelled by wind and sails.
4 - Cargo ships carry goods between ports around the world.
5 - Some boats are human powered, including kayaks, canoes and gondolas.
1 - Submarines are a special type of watercraft that can operate underwater.
2 - Submarines are used by the military as part of navy forces, protecting aircraft carriers, performing reconnaissance and carrying out other tasks.
3 - Some submarines can remain submerged for months at a time.
4 - Submarines use ballast tanks to hold water, allowing them to submerge when necessary.
5 - Submarines typically feature a raised tower which holds radar equipment, the periscope and other systems.


Genghis Khan
CTOSmart dude, geeky, knows his stuff! Nothing else.
The last web agency you will ever need
We do amazingly futuristic stuff using the same tools everyone has. We are so unique and awesome we didn't spend money on marketing gurus or copy writers!
Smart dude, geeky, knows his stuff! Nothing else.
Very agressive! Results driven.
Drinks a lot. Loves meetings!
Drinks. Hates computers...
Cares too much about useless things.
We are not sure what she does!
The most amazingly professional and absolutely great people I have had the pleasure to work on the face of the earth.
The most amazingly professional and absolutely great people I have had the pleasure to work on the face of the earth.
The most amazingly professional and absolutely great people I have had the pleasure to work on the face of the earth.
The most amazingly professional and absolutely great people I have had the pleasure to work on the face of the earth.
The most amazingly professional and absolutely great people I have had the pleasure to work on the face of the earth.
The most amazingly professional and absolutely great people I have had the pleasure to work on the face of the earth.


Welcome to the second part of the WebRTC diagnostic tool
Welcome to the testing application for WebRTC (Nightly only)
This webpage is designed to simulate a call and allows you to see what your correspondant would be able to see.
Please run the rest twice to make sure that the results are the same
How to interpret the results:
- The test is stuck
Please refresh the webpage and rerun the test
If the problem persists, please
contact the support
- The recording I get is empty
This might be linked to your connection, which is too restrictive
There is no current solutions. Contact your Network administrator
- Test result/problem placeholder
Answer placeholder
Solution placeholder


org.apache.xml.dtm.ref
Class DTMSafeStringPool
java.lang.Object
org.apache.xml.dtm.ref.DTMStringPool
org.apache.xml.dtm.ref.DTMSafeStringPool
public class DTMSafeStringPool
- extends DTMStringPool
Like DTMStringPool, but threadsafe. It's been proposed that DTMs
share their string pool(s); that raises threadsafety issues which
this addresses. Of course performance is inferior to that of the
bare-bones version.
Status: Passed basic test in main().
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DTMSafeStringPool
public DTMSafeStringPool()
removeAllElements
public void removeAllElements()
- Overrides:
removeAllElements
in class DTMStringPool
indexToString
public java.lang.String indexToString(int i)
throws java.lang.ArrayIndexOutOfBoundsException
- Overrides:
indexToString
in class DTMStringPool
- Returns:
- string whose value is uniquely identified by this integer index.
- Throws:
java.lang.ArrayIndexOutOfBoundsException
- if index doesn't map to a string.
stringToIndex
public int stringToIndex(java.lang.String s)
- Overrides:
stringToIndex
in class DTMStringPool
- Returns:
- integer index uniquely identifying the value of this string.
main
public static void main(java.lang.String[] args)
- Command-line unit test driver. This test relies on the fact that
this version of the pool assigns indices consecutively, starting
from zero, as new unique strings are encountered.


Deuteronomy 24:9
Remember what the LORD thy God did unto Miriam by the way, after that ye were come forth out of Egypt.


{% extends "./layout.html" %} {% block sectionClasses %}download{% endblock %} {% block meta_title %}Download{% endblock %} {% block meta_description %}Download Spincast{% endblock %} {% block body %}
{{spincast.spincastCurrrentVersion}}
" is a snapshot version. That means that it
can change, it is not a stable version. Do not use this
as a start for a real application!
Download the Spincast Quick Start [.zip] application as a starting point to build a new application.
Follow the Quick Start guide to learn how to use it.
The current version is : {{spincast.spincastCurrrentVersion}}
.
Since this is a SNAPSHOT
version, you first have to add this repository
to your pom.xml
(or ajust this for your build.gradle
):
<repositories> <repository> <id>sonatype-snapshots</id> <url>https://oss.sonatype.org/content/repositories/snapshots</url> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories>{% endif %}
The Maven artifact to start an application with all the default plugins :
<dependency> <groupId>org.spincast</groupId> <artifactId>spincast-default</artifactId> <version>{{spincast.spincastCurrrentVersion}}</version> </dependency>
Make sure your read the Bootstrapping your app section of the documentation to know how to start your application with this artifact in place.
The source code is on Github.


Mycroft only collects the personally identifiable information (PII) necessary to deliver a quality user experience when interacting with the voice assistant. Any PII we collect is stored securely on our servers. It is not shared with anyone.
We continually investigate solutions to further minimize the PII we collect. We also strive to be transparent about the data we do collect and why it is collected. To learn more about the go to My Data.


CoEpi: Community Epidemiology in Action
Questions you may have about CoEpi.
Frequently Asked Questions
- What does CoEpi do?
- CoEpi is building mobile apps (for both iOS and Android) with a privacy-first approach and anonymous Bluetooth-based contact tracing, exposure matching, and symptom alerting to address the spread of COVID-19 and other transmissible illnesses (like colds and flu) in our communities.
- How does CoEpi ensure anonymity?
- CoEpi users simply install the app to get started – there is no registration or information collected, and no profile is created. Users will enable location and/or Bluetooth tracking to enable them to see on their device their own history, and will opt-in to share any information they want to (anonymously) with a server to be able to alert individuals they’ve closely encountered about any symptoms.
- How does CoEpi do exposure matching and alerting if a user is anonymous?
- When someone who uses CoEpi was in proximity of another potentially infectious CoEpi user, their app will notify them. They can either dismiss the alert, or opt in to check the server be told the symptoms reported so far, and locally on their device see the date/time/place of their proximity with the symptomatic user. The user will then be able to optionally enable periodic check-ins where the app will ask the user to report any symptoms they’ve noticed, what if anything they’re doing to reduce possible re-transmission, and will prompt the user to consent to share that information with other CoEpi users and/or public health officials if appropriate.
- Is CoEpi working with the other Bluetooth-based contact tracing apps?
- Yes! CoEpi is actively collaborating with members of dozens of other Bluetooth-based contact tracing efforts around the world.
- How does CoEpi different from other Bluetooth-based contact tracing apps?
- Many of the other apps are collaborating with CoEpi on the shared Bluetooth protocol so our apps are interoperable. (See more in this Github repo.) However, the main difference between CoEpi and other apps is that we are laser-focused on creating an app that’s useful for end users – like you and us – immediately. Communities of close contacts can begin protecting themselves with CoEpi immediately; there is no scale required to achieve benefit to closed user groups.
- How can I help with CoEpi?
- We’re an open source project, and we’d love your help! Fill out this formto sign up as an early tester for iOS and/or Android, and if you have other skills to contribute, let us know. We can always use more native mobile developers.


History may be defined as a careful and systematic study of past events on the basis of material remains and records.
A person who carries out such studies is called a historian.


Ask EECS
Home
Sign Up
Login
{{user.Username}}
Logout
WSU EECS Question & Answer
Ask a question and get an aswer from students and staff.
{{flash}}
Ask a Question


[1]
Full Color Display; Bluetooth, Maps, No Manual...
[2]
flexible, intuitive, basic; doesn't have high end features.
[3]
Effortless Driving. Plug In And Go!!!!; None I Can See


Exercise 5 Part 4: Form Feedback Challenge
Your name (error):
Your phone number (required):
Your favorite color:


-
The affect of latency on MSSQL INSERTs
SQL is a network application and according to The Fallacies of Distributed Computing tells us that in any network application latency is non-zero. In this article we will explore the effect of latency on SQL insert performance from the scenarios in my last post.…
-
MSSQL and large INSERT statements
There are several different ways of inserting data in MSSQL. In this post I explore several ways of inserting data and examine how they perform.…
-
Entity Framework Performance Cheat Sheet
Performance is important in our applications, this cheat sheet gives tips to improve the Big O performance of your Entity Framework applications and suggestions for when and what to optimise.…
-
Entity Framework - Navigation Property Basics with Code First
Navigation properties are Entity Frameworks way of representing Foreign Key relationships in databases as C# object references. In this post I explore the basics of how to use Navigation Properties with C# and how they work.…
-
EntityFramework Performance and AutoDetectChanges
Entity Framework change tracking performs well when using small sets of data however as the number of changes grows it becomes inefficient. In this post we look at what causes this degradation and how we can tune EF to perform better with large data sets.…
-
Making Dapper Faster with Transactions
Transactions are an often neglected component of how we access databases. They are important when we are writing to databases as they affect how and how often tables are locked. In this post we will examine what kind of difference transactions make in practice.…
-
Entity Framework and AsNoTracking
Entity Framework change tracking allows the framework to persist only changed data to the database, however this comes at a performance cost. This post discusses the performance impacts of change tracking and when its appropriate to switch it off.…
-
Entity Framework Comparative Performance
I have heard many claims that specific ORMs far outperform others, so I built my own ORM performance testing framework to test some of these results for myself. What I found is there is less difference in performance between ORMs than I expected.…
-
Using a REST WCF Service
WCF WebAPI allows REST support within WCF. This post discusses some of the gotchas of building REST services with WCF and provides a simple tutorial for creating a basic WCF REST service.…
-
StaticVoid Repository Pattern - GitHub
I've been wanting to have a play with GitHub for a while now given so many open source projects seem to be using it. So i finally gave it a go and pushed my Repository Pattern stuff to a public GitHub repository.…


You need some historical data to prepare the data for the model. If you have historical data, manipulate it to train and test the model. In this example, use the following features and labels:
| Data Category | Description |
|---|---|
| Features | Daily percent change of the open, high, low, close, and volume of the SPY over the last 5 days |
| Labels | Daily percent return of the SPY over the next day |
The following image shows the time difference between the features and labels:
Follow these steps to prepare the data:
pct_change
and dropna
methods.daily_pct_change = history.pct_change().dropna()
daily_pct_change
DataFrame and collect the features and labels.n_steps = 5
features = [] labels = [] for i in range(len(daily_pct_change)-n_steps): features.append(daily_pct_change.iloc[i:i+n_steps].values) labels.append(daily_pct_change['close'].iloc[i+n_steps])
numpy
arrays.features = np.array(features) labels = np.array(labels)
train_length = int(len(features) * 0.7) X_train = features[:train_length] X_test = features[train_length:] y_train = labels[:train_length] y_test = labels[train_length:]


A commodo, ornare aliquet quisque viverra blandit cubilia in Laoreet vel sodales mus eget augue sed Gravida Egestas.This is a Banner element, and it's generally used as an introduction or opening statement. You can customize its style, scheme, color, size, orientation, content alignment, and image position, as well as assign it an optional onload or onscroll transition modifier (details).


Appendix
Using text formats with Gzip compression
One concern some have raised with saving data in a text (ASCII) format instead of binary is that text is not an efficient use of disk space, and that the I/O processing of the text files will dramatically slow down software using the data. Each concern is discussed below.
Efficient use of disk space
The mHealth format saves all data in text (ASCII) files and then calls for compressing those files using gzip compression. Some tests were therefore performed to verify that saving high sampling rate CSV text data and then compressing the resulting file was both efficient in terms of storage and efficient in terms of computation required.
Best-and worst-case csv files with high resolution 3axis accelerometer data were generated to assess the impact on compression. For the bestcase scenario, the csv contained 1 hour of 50 Hz data with a full readable timestamp per row and floating point g values that are not changing (mimicking sedentary behavior). Below are 10 rows from that file:
2014/08/22 11:18:16.778,1.001,-1.000,-0.999
2014/08/22 11:18:16.798,1.001,-1.000,-0.999
2014/08/22 11:18:16.818,1.001,-1.000,-0.999
2014/08/22 11:18:16.838,1.001,-1.000,-0.999
2014/08/22 11:18:16.858,1.001,-1.000,-0.999
2014/08/22 11:18:16.878,1.001,-1.000,-0.999
2014/08/22 11:18:16.898,1.001,-1.000,-0.999
2014/08/22 11:18:16.918,1.001,-1.000,-0.999
2014/08/22 11:18:16.938,1.001,-1.000,-0.999
2014/08/22 11:18:16.958,1.001,-1.000,-0.999
The resulting CSV file is approximately 7.9MB for a full hour, and when gzipped it compresses to 499KB, a 94% compression ratio. [Add how long it takes on a phone to do the compression]
For the worstcase scenario, a second csv file with 1 hour of 50 Hz data with a full readable timestamp per row and floating point g values that are randomly changing over a 6 g range was generated. Below are 10 rows from the file:
2014/08/22 11:18:18.060,-0.778,-4.671,-4.159
2014/08/22 11:18:18.080,-0.166,0.025,-0.424
2014/08/22 11:18:18.100,-0.040,-0.164,-1.063
2014/08/22 11:18:18.120,-2.129,0.169,-0.622
2014/08/22 11:18:18.140,2.758,5.672,4.389
2014/08/22 11:18:18.160,4.380,2.718,-2.191
2014/08/22 11:18:18.180,-3.069,-1.670,-3.781
2014/08/22 11:18:18.200,-3.953,3.567,4.259
2014/08/22 11:18:18.220,-2.534,-1.552,2.706
2014/08/22 11:18:18.240,-5.429,-0.537,2.268
The resulting CSV file is approximately 7.8 MB for a full hour. Notice that it has approximately the same size as the previous case because both files have approximately the same number of characters. Gzipping the file reduces it to 2.0MB, a 74% compression ratio.
In contrast, the same tests were performed where the data were saved in binary format. For the bestcase scenario, the resulting binary file is approximately 7.0MB for a full hour, and when gzipped it compressed to 486KB with a 93% compression ratio. For the worstcase scenario, the resulting binary file is approximately 7.0MB for a full hour, and when gzipped it compressed to 2.3MB with a 67% compression ratio. Note that for both tests, the resulting binary files have an identical filesize, which is expected due to the fact that all floating point numbers (accelerometer x,y,z) are stored as bytes (4 bytes each, 12 bytes total).
Comparing the two versions of the second test (CSV vs binary, randomized data points), we can conclude that the CSV format yielded a smaller file size after gzipped (2.0MB vs 2.3MB, respectively). This is expected, due to the fact that CSV files can be gzipped more efficiently because in the average case of an accelerometer data file, the first 23 characters (including the minus sign for negative numbers) of the floating point values are largely repeated across the file. In the case of the binary data file, all floating point values are always stored as 4 bytes which have to be preserved by the gzip compression, resulting in a less efficient compression rate.
Realistically, accelerometer values do not change randomly and dramatically on all axes as shown in the previous example. There are physical limitations to movement and people spend considerable time sedentary. Therefore, it is likely that the average data file size for an hour of accelerometer data collected from a wearable sensor will be in the middle of the range between 500K and 2.0MB (i.e. around 1.2MB). In addition, the inclusion of a full timestamp per row has minimal impact because most of the characters are repeated in every row and therefore gzip compresses the timestamp efficiently. Indeed, compressed Actigraph data from real users (without timestamps) led to csv.gz files of about 700KB per hour.
File I/O
| gt3x | mHealth** | compressed differentials*** | csv | sampling rate(Hz) | start (UTC) | end (UTC) |
|---|---|---|---|---|---|---|
| 35.6 kB | 34.1 kB | 23.4 kB | 332.5 kB | 30 | 2010/10/26 13:30:00 | 2010/10/26 13:35:56 |
| 1.8 MB | 1.7 MB | 1.1 MB | 13.5 MB | 30 | 2015/04/09 14:02:00 | 2015/04/09 17:36:33 |
| 1.8 MB | 1.7 MB | 1.1 MB | 13.1 MB | 30 | 2015/04/09 14:04:00 | 2015/04/09 17:36:06 |
| 486.2 kB | 1.3 MB | 0.9 MB | 13.5 MB | 30 | 2015/04/09 14:00:00 | 2015/04/09 17:36:55 |
| 20.8 MB | 19.6 MB | 12.2 MB | 167.2 MB | 80 | 2011/10/13 17:30:00 | 2011/10/14 09:11:26 |
| 61.5 MB* | 173.5 MB | 123.6 MB | 1.9 GB | 30 | 2013/11/19 00:00:00 | 2013/12/09 11:29:02 |
| 72.2 MB* | 192.0 MB | 129.2 MB | 1.9 GB | 30 | 2013/12/09 00:00:00 | 2013/12/09 11:19:48 |
* Large gaps occur in the data for GT3X file format version 2. When converting to csv (mHealth or otherwise), Actigraph’s guide instructs developers to fill in these gaps using the last known data point, causing the resulting mHealth file to be larger than the compressed gt3x version, depending on how large and frequent the gaps are within the gt3x file. For files spanning over longer ranges of time, the size difference may become more apparent given that Actigraph leaves gaps in the data empty. For the two marked data points, without filling the gaps, the mHealth file sizes are 66.3 MB (csv is 409.2 MB, compressed differentials is 39.6 MB, ~60% total gap in the data) and 88.1 MB (csv is 473.9 MB, compressed differentials is 48.7 MB, ~55% total gap in the data) respectively.
** Output from gt3xtomhealth converter was not split into separate hourly files for comparison sake.
*** For an hour’s worth of data sampled at 30Hz where the person wearing the accelerometer is sedentary, compressed differentials can yield an output as low as 316.4 kB (eg. 3rd row in the table), where each data point is 3 bytes except the first line, which has the full timestamp and data (to serve as a reference point).


There is a
% chance
will not put the ball in play.
Select your batter...
Select the pitch thrown...
Choose where it's going...


Refresh
Tables
Views
Connect
Disconnect
Page size:
Shift+Enter to execute
Grid
Result Count
Errors
Next Page


[1]
that said , that is the only negative thing i have to say about the hotel .
[2]
carpet was a bit worn but otherwise , the room was in good shape and clean .


--- layout: post title: Stevie published: true date: 2011-04-08 categories: [] posterous_url: http://blog.hungerandthirstdesign.com/post/4446525388/a-new-thing-starting-at-salescrunch-we-have-a posterous_slug: post/4446525388/a-new-thing-starting-at-salescrunch-we-have-a ---
A new thing starting at SalesCrunch. We have a mascot, and his name is Steve.


Following section demonstrates how to execute the DbCommand.
// DbCommand is being prepared
var cmd = cn.CreateCommand(
"DELETE FROM table WHERE field1<>@p1 AND field2=@p2",
new { p1 = 0, p2 = "X"});
var affectedRows = connection.ExecuteNonQuery(cmd);


{% extends 'issues/base.html' %} {% block title %} {{ issue }} {% endblock %} {% block body %} Sorry, but we are unable to {{issue}} for some reasons. You can try again later :) {% endblock %}


RT @rubyoniceconf: Do You Need That Validation? Speaker of the day @pragtob explores different approaches to improve your validation situat…
1/27/2019, 8:21:46 AM
Favs: 0
Retweets: 0
link--- layout: tweet ---
RT @rubyoniceconf: Do You Need That Validation? Speaker of the day @pragtob explores different approaches to improve your validation situat…
1/27/2019, 8:21:46 AM
Favs: 0
Retweets: 0
link


VILLAGE OF THE DAMNED (1995) A film review by Ben Hoffman Copyright 1995 Ben Hoffman
There have been several movie versions of John Wyndham's stories, none of which I have seen. Director John Carpenter thought the film's story would be improved if it were made more current. I don't much like the genre of spooky films but I must say this one has a somewhat better twist than most of that type.
There's a little town of Midwich where nothing exciting ever happens. Every now and then a cloud, accompanied by ominous sounds, passes over the town, and strange thing begin to happens. Dr. Chaffee (Christopher Reeve) finds he is being besieged by an inordinate number of women who have become pregnant. He then becomes aware that the conceptions took place on the same day, the day of a school outing ... and that the cloud had passed over the town.
Suspicious that something odd is going on, Dr. Chaffee calls on the Federal Government to send someone to investigate this new phenomenon. The epidemiologist they send is Dr Susan Verner (Kristie Alley) who, by the way, is a chain smoker. Has no one told her about the dangers of smoking?
Of the ten children who are born, nine survive, apparently healthy. They all look very much alike with piercing eyes and whitish blond hair which gives rise to the reasonable assumption that they were all sired by the same "father." As the boys and girls grow, they begin to display weird, un-childlike behavior. If they focus their eyes on you (in a strange color), you will be involved in a fatal accident very shortly. Everyone soon realizes that these kids are not to be antagonized or thwarted.
That's pretty much the basis for the film. What the children do, what Dr. Chaffee and Dr. Vermeer do to try to stop what is happening is what makes up the film. Incidentally, there have, according to Dr. Vermeer, been similar incidents recently in other parts of the world. OoooooHHHHHooooo!.
Others in the cast include Linda Koslowski, Michael Pare, Mark Hamill and Karen Kahn, among others.
2 bytes 4 Bytes = Superb 3 Bytes = Too good to be missed. 2 Bytes = So so. 1 Byte = Save your money.
Ben Hoffman
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


public class Snowball extends Entity
| Modifier and Type | Method and Description |
|---|---|
boolean |
canHit(double x,
double y)
Returns whether the snowball can hit p(x,y).
|
boolean |
canHit(Player p)
Returns whether the snowball can the player.
|
double |
getDamage()
Returns the damage induced to a player if the snowball hits.
|
Point |
getDestination()
Returns the destination where the snowball will land.
|
int |
getId()
Returns the snowball id.
|
Point |
getOrientation()
Returns the unit vector (length of 1) of the orientation of the snowball.
|
double |
getSpeed()
Returns the distance traveled per frame by the snowball.
|
public Snowball(int id, World world)
public int getId()
public Point getOrientation()
public double getSpeed()
public double getDamage()
public Point getDestination()
public boolean canHit(double x, double y)
x
- y
- public boolean canHit(Player p)
p
-


|
We have chosen to focus on areas where organizations have the most opportunities to use robust data science and generate huge business impact. Our leadership team has spent decades solving these problems. Scienaptic platform is being customised in these four areas.


Born: February 5th, 1992 in Mogi das Cruzes, State of São Paulo, Brazil. Age: 27
Height: 5'9", Weight: 150 lbs
Current Team: Paris Saint-Germain F.C. International: Brazil
Jersey Number: #10, Position: Forward
Brazilian Magician
Neymar has been at the top of the game for a while and it has not been because of luck. There is a reason he managed to become the most expesnive transfer in the history of football with an astonishing $263 million transfer fee from Barcelona to PSG. Neymar was having the time of his life at Barcelona and his career was at a very high peak as he shared the attack with Luis Suarez and Lionel Messi himself. They were dubbed the greatest trio to have ever played football as they managed to bring home the trebal by winning both competiton championships in Spain and the UEFA Champions League Cup when they defeated then the tough opposition of Juventus.
Prior to leaving Barceloa Neymar reached a peak that we did not expect out of him. Lonel Messi had an injury that season and it was up to Neymar and Luis Suarez to step up for Barcelonas attacking force and Neymar did just that. During that time Neymar was theo obvious best player at the top. No one came even close to how spectacular Neymar was playing. Everyone talked about how Barcelona was all about Messi, that Neymar was living in Messi's shadow but he went out there and pro ved them wrong. He showed that he was as much of an asset to Barcelona's attack as Messi was.
Even with how well Neymar played alongside Luis Suarez and Messi he ended up leaving the club to go try his luck at PSG. Many said that Neymar left for money, others said that he left to get out of Messi's shadow. Regardless he left making history. Neymar has not been able to shine internationally as he would wish he did with PSG but he still remains at the top of the chain in terms of the greatest football players currently and he is still in his prime, the future holds greatness for him especially now that Messi had demanded Barcelona to bid a transfer for Neymar to return to the Camp Nou. Greatness is what awaits Neymar if this transfer occurs.