 When a person goes to a web page like www.google.com, their computer sends a HTTP Request to a server. The server finds the appropriate HTML document and sends it back to the user's computer where a web browser interprets the page and displays it on the user's screen. This video does a good job of explaining the concept.
HTML - stands for Hypertext Marup Language
HTML documents form
the majority of the content on the web. HTML documents contain
text content which describes "what you see" and markup which
describes "how it looks".
This
video gives a good overview.
HTML documents are made of HTML elements. When writing HTML, we tell browsers the type of each element by using HTML tags. This video explains the distinction well.
 This makes them very unforgiving since a small mistake by a programmer can cause huge problems.
HTML elements are either inline or block. Block elements form an "invisible box" around the content inside of them.
HTML elements are either inline or block. Block elements form an "invisible box" around the content inside of them.
The "tree-like structure" comes from the fact that HTML elements can have other elements inside of them. You can draw this relationship like a family tree. My mother had multiple children. So did her mother, and so on... In a browser, this structure shows up as a series of nested boxes. There are boxes inside of boxes inside of boxes, and so on...
When you read an HTML document as text, you see a wave of changing indentations going up and down the left side of the document. The more indented an element is, the more deeply nested its corresponding "box" is.
When writing code, programmers use special text editors (like Sublime Text for example). These editors make the programmer's life easier. For example, some text editors will automatically generate a closing HTML tag when you write an opening tag.
Avoiding repetition is important for a variety of reasons.
Avoiding Errors: When programmers don't avoid repetition, they will often have to do the same thing over and over. This may mean copy and pasting certain style attributes into many HTML elements or rewriting the same code (sometimes with minor differences) many times. This can lead to errors when the programmer decides to make a change to something. If they don't dilligently make that same change everywhere the repeated code appears, problems will arise.
Consistency: In this web page, I wanted every lesson to look the same. Instead of manually giving each one the same style, I was able to assign each lesson div the same class and then specify the style for that class in only one place! By avoiding repetion, it's now very easy for me to make changes to this style.
TIP: Avoid repition and it will help you make good code
CSS stands for Cascading Style Sheets and they give programmers a way to control the style of related HTML elements. This is done by giving similar HTML elements the same class name and then specifying the style that should apply to that class.
All HTML elements can be considered as boxes. In CSS, the term "box model" is used when talking about design and layout. The CSS box model is essentially a box that wraps around HTML elements, and it consists of: margins, borders, padding, and the actual content. The box model allows us to add a border around elements, and to define space between elements.
The Flexbox Layout (Flexible Box) module aims aims at providing a more efficient way to lay out, align and distribute space among items in a container, even when their size is unknown and/or dynamic (thus the word "flex").


Module sfxr
A port of the sfxr sound effect synthesizer to pure Lua, designed to be used
together with the awesome LÖVE game framework.
| self.envelope |
The ASD envelope that controls the sound
amplitude (volume) over time |
| self.envelope.attack |
Attack time:
Time the sound takes to reach its peak amplitude
(default 0.0, min 0.0, max 1.0) |
| self.envelope.sustain |
Sustain time:
Time the sound stays on its peak amplitude
(default 0.0, min 0.0, max 1.0) |
| self.envelope.punch |
Sustain punch:
Amount by which the sound peak amplitude is increased at the start of the
sustain time
(default 0.0, min 0.0, max 1.0) |
| self.envelope.decay |
Decay time:
Time the sound takes to decay after its sustain time
(default 0.0, min 0.0, max 1.0) |
| self.frequency |
The base and minimum frequencies of the tone generator and their
slides |
| self.frequency.start |
Start frequency:
Base tone of the sound, before sliding
(default 0.0, min 0.0, max 1.0) |
| self.frequency.min |
Min frequency:
Tone below which the sound will get cut off
(default 0.0, min 0.0, max 1.0) |
| self.frequency.slide |
Slide:
Amount by which the frequency is increased or decreased over time
(default 0.0, min -1.0, max 1.0) |
| self.frequency.dslide |
Delta slide:
Amount by which the slide is increased or decreased over time
(default 0.0, min -1.0, max 1.0) |
| self.change |
Changes the frequency mid-sound to create a characteristic
"coin"-effect |
| self.change.amount |
Change amount:
Amount by which the frequency is changed mid-sound
(default 0.0, min -1.0, max 1.0) |
| self.change.speed |
Change speed:
Time before the frequency change happens
(default 0.0, min 0.0, max 1.0) |
| self.duty |
The duty of the square
waveform |
| self.duty.ratio |
Square duty:
Width of the square wave pulse cycle (doesn't affect other waveforms)
(default 0.0, min 0.0, max 1.0) |
| self.duty.sweep |
Duty sweep:
Amount by which the square duty is increased or decreased over time
(default 0.0, min -1.0, max 1.0) |
| self.phaser |
A simple phaser
effect |
| self.phaser.offset |
Phaser offset:
Amount by which the phaser signal is offset from the sound
(default 0.0, min -1.0, max 1.0) |
| self.phaser.sweep |
Phaser sweep:
Amount by which the phaser offset is increased or decreased over time
(default 0.0, min -1.0, max 1.0) |
| self.lowpass |
A lowpass filter
effect |
| self.lowpass.cutoff |
Lowpass filter cutoff:
Lower bound for frequencies allowed to pass through this filter
(default 0.0, min 0.0, max 1.0) |
| self.lowpass.sweep |
Lowpass filter cutoff sweep:
Amount by which the LP filter cutoff is increased or decreased
over time
(default 0.0, min -1.0, max 1.0) |
| self.lowpass.resonance |
Lowpass filter resonance:
Amount by which certain resonant frequencies near the cutoff are
increased
(default 0.0, min 0.0, max 1.0) |
| self.highpass |
A highpass filter
effect |
| self.highpass.cutoff |
Highpass filter cutoff:
Upper bound for frequencies allowed to pass through this filter
(default 0.0, min 0.0, max 1.0) |
| self.highpass.sweep |
Highpass filter cutoff sweep:
Amount by which the HP filter cutoff is increased or decreased
over time
(default 0.0, min -1.0, max 1.0) |
| self.vibrato.depth |
Vibrato depth:
Amount of amplitude modulation
(default 0.0, min 0.0, max 1.0) |
| self.vibrato.speed |
Vibrato speed:
Oscillation speed of the vibrato
(default 0.0, min 0.0, max 1.0) |
| self.vibrato.delay |
Vibrato delay:
Unused and unimplemented
(default 0.0, min 0.0, max 1.0) |
-
newSound (...)
-
Construct and return a new Sound instance.
Parameters:
Returns:
Sound
a Sound instance
-
VERSION
-
The module version (SemVer format)
-
WAVEFORM
-
Waveform constants
Fields:
-
SAMPLERATE
-
Sampling rate constants
(use the number values directly, these are just for lookup)
Fields:
- 22050
22.05 kHz (
= 22050
)
- 44100
44.1 kHz (
= 44100
)
-
BITDEPTH
-
Bit depth constants
(use the number values directly, these are just for lookup)
Fields:
- 0
floating point bit depth, -1 to 1 (
= 0
)
- 8
unsigned 8 bit, 0x00 to 0xFF (
= 8
)
- 16
unsigned 16 bit, 0x0000 to 0xFFFF (
= 16
)
-
ENDIANNESS
-
Endianness constants
Fields:
- LITTLE
little endian (
= 0
)
- BIG
big endian (
= 1
)
The main Sound class.
-
sfxr.Sound:__init ()
-
Initialize the Sound instance.
Called by the constructor.
-
self.vibrato
-
A vibrato-like amplitude
modulation effect
SerializationVibrato
-
sfxr.Sound:resetParameters ()
-
Set all parameters to their default values. Does not affect
supersampling and volume.
Called by the initializer.
-
sfxr.Sound:sanitizeParameters ()
-
Clamp all parameters within their sane ranges.
-
sfxr.Sound:generate ([rate=44100[, depth=0]])
-
Generate the sound and yield the sample data.
Parameters:
- rate
SAMPLERATE
the sampling rate
(default 44100)
- depth
BITDEPTH
the bit depth
(default 0)
Returns:
function()
a generator that yields the next sample when called
Raises:
"invalid sampling rate: x", "invalid bit depth: x"
Usage:
for s in sound:generate(44100, 0) do
end
-
sfxr.Sound:getEnvelopeLimit ([rate=44100])
-
Get the maximum sample limit allowed by the current envelope.
Does not take any other limits into account, so the returned count might be
higher than samples actually generated. Still useful though.
Parameters:
Raises:
"invalid sampling rate: x", "invalid bit depth: x"
-
sfxr.Sound:generateTable ([rate=44100[, depth=0[, tab]]])
-
Generate the sound into a table.
Parameters:
- rate
SAMPLERATE
the sampling rate
(default 44100)
- depth
BITDEPTH
the bit depth
(default 0)
- tab
{}
the table to synthesize into
(optional)
Returns:
-
{number,...}
the table filled with sample data
-
int
the number of written samples (== #tab)
Raises:
"invalid sampling rate: x", "invalid bit depth: x"
-
sfxr.Sound:generateString ([rate=44100[, depth=16[, endianness=0]]])
-
Generate the sound to a binary string.
Parameters:
- rate
SAMPLERATE
the sampling rate
(default 44100)
- depth
BITDEPTH
the bit depth (may not be 0)
(default 16)
- endianness
ENDIANNESS
the endianness (ignored when depth == 8)
(default 0)
Returns:
-
string
a binary string of sample data
-
int
the number of written samples
Raises:
"invalid sampling rate: x", "invalid bit depth: x", "invalid endianness: x"
-
sfxr.Sound:generateSoundData ([rate=44100[, depth=0[, sounddata]]])
-
Synthesize the sound to a LÖVE SoundData instance.
Parameters:
- rate
SAMPLERATE
the sampling rate
(default 44100)
- depth
BITDEPTH
the bit depth
(default 0)
- sounddata
love.sound.SoundData
a SoundData instance (will be
created if not passed)
(optional)
Returns:
-
love.sound.SoundData
a SoundData instance
-
int
the number of written samples
Raises:
"invalid sampling rate: x", "invalid bit depth: x"
-
self.supersampling
-
Number of supersampling passes to perform (default 8)
-
self.repeatspeed
-
Repeat speed:
Times to repeat the frequency slide over the course of the envelope
(default 0.0, min 0.0, max 1.0)
-
self.waveform
-
The base waveform (default SQUARE)
-
self.volume
-
The sound volume and gain all samples are multiplied with
-
self.volume.master
-
Master volume (default 0.5)
-
self.volume.sound
-
Additional gain (default 0.5)
-
self.envelope
-
The ASD envelope that controls the sound
amplitude (volume) over time
-
self.envelope.attack
-
Attack time:
Time the sound takes to reach its peak amplitude
(default 0.0, min 0.0, max 1.0)
-
self.envelope.sustain
-
Sustain time:
Time the sound stays on its peak amplitude
(default 0.0, min 0.0, max 1.0)
-
self.envelope.punch
-
Sustain punch:
Amount by which the sound peak amplitude is increased at the start of the
sustain time
(default 0.0, min 0.0, max 1.0)
-
self.envelope.decay
-
Decay time:
Time the sound takes to decay after its sustain time
(default 0.0, min 0.0, max 1.0)
-
self.frequency
-
The base and minimum frequencies of the tone generator and their
slides
-
self.frequency.start
-
Start frequency:
Base tone of the sound, before sliding
(default 0.0, min 0.0, max 1.0)
-
self.frequency.min
-
Min frequency:
Tone below which the sound will get cut off
(default 0.0, min 0.0, max 1.0)
-
self.frequency.slide
-
Slide:
Amount by which the frequency is increased or decreased over time
(default 0.0, min -1.0, max 1.0)
-
self.frequency.dslide
-
Delta slide:
Amount by which the slide is increased or decreased over time
(default 0.0, min -1.0, max 1.0)
-
self.change
-
Changes the frequency mid-sound to create a characteristic
"coin"-effect
-
self.change.amount
-
Change amount:
Amount by which the frequency is changed mid-sound
(default 0.0, min -1.0, max 1.0)
-
self.change.speed
-
Change speed:
Time before the frequency change happens
(default 0.0, min 0.0, max 1.0)
-
self.duty
-
The duty of the square
waveform
-
self.duty.ratio
-
Square duty:
Width of the square wave pulse cycle (doesn't affect other waveforms)
(default 0.0, min 0.0, max 1.0)
-
self.duty.sweep
-
Duty sweep:
Amount by which the square duty is increased or decreased over time
(default 0.0, min -1.0, max 1.0)
-
self.phaser
-
A simple phaser
effect
-
self.phaser.offset
-
Phaser offset:
Amount by which the phaser signal is offset from the sound
(default 0.0, min -1.0, max 1.0)
-
self.phaser.sweep
-
Phaser sweep:
Amount by which the phaser offset is increased or decreased over time
(default 0.0, min -1.0, max 1.0)
-
self.lowpass
-
A lowpass filter
effect
-
self.lowpass.cutoff
-
Lowpass filter cutoff:
Lower bound for frequencies allowed to pass through this filter
(default 0.0, min 0.0, max 1.0)
-
self.lowpass.sweep
-
Lowpass filter cutoff sweep:
Amount by which the LP filter cutoff is increased or decreased
over time
(default 0.0, min -1.0, max 1.0)
-
self.lowpass.resonance
-
Lowpass filter resonance:
Amount by which certain resonant frequencies near the cutoff are
increased
(default 0.0, min 0.0, max 1.0)
-
self.highpass
-
A highpass filter
effect
-
self.highpass.cutoff
-
Highpass filter cutoff:
Upper bound for frequencies allowed to pass through this filter
(default 0.0, min 0.0, max 1.0)
-
self.highpass.sweep
-
Highpass filter cutoff sweep:
Amount by which the HP filter cutoff is increased or decreased
over time
(default 0.0, min -1.0, max 1.0)
-
self.vibrato.depth
-
Vibrato depth:
Amount of amplitude modulation
(default 0.0, min 0.0, max 1.0)
-
self.vibrato.speed
-
Vibrato speed:
Oscillation speed of the vibrato
(default 0.0, min 0.0, max 1.0)
-
self.vibrato.delay
-
Vibrato delay:
Unused and unimplemented
(default 0.0, min 0.0, max 1.0)
-
sfxr.Sound:randomize ([seed])
-
Randomize all sound parameters
Parameters:
- seed
number
a random seed
(optional)
-
sfxr.Sound:mutate ([amount=1][, seed], changefreq)
-
Mutate all sound parameters
Parameters:
- amount
number
by how much to mutate the parameters
(default 1)
- seed
number
a random seed
(optional)
- changefreq
bool
whether to change the frequency parameters
-
sfxr.Sound:randomPickup ([seed])
-
Randomize all sound parameters to generate a "pick up" sound
Parameters:
- seed
number
a random seed
(optional)
-
sfxr.Sound:randomLaser ([seed])
-
Randomize all sound parameters to generate a laser sound
Parameters:
- seed
number
a random seed
(optional)
-
sfxr.Sound:randomExplosion ([seed])
-
Randomize all sound parameters to generate an explosion sound
Parameters:
- seed
number
a random seed
(optional)
-
sfxr.Sound:randomPowerup ([seed])
-
Randomize all sound parameters to generate a "power up" sound
Parameters:
- seed
number
a random seed
(optional)
-
sfxr.Sound:randomHit ([seed])
-
Randomize all sound parameters to generate a hit sound
Parameters:
- seed
number
a random seed
(optional)
-
sfxr.Sound:randomJump ([seed])
-
Randomize all sound parameters to generate a jump sound
Parameters:
- seed
number
a random seed
(optional)
-
sfxr.Sound:randomBlip ([seed])
-
Randomize all sound parameters to generate a "blip" sound
Parameters:
- seed
number
a random seed
(optional)
-
sfxr.Sound:exportWAV (f[, rate=44100[, depth=0]])
-
Generate and export the audio data to a PCM WAVE file.
Parameters:
- f
string, file or love.filesystem.File
a path or file in
wb
-mode
(passed files will not be closed)
- rate
SAMPLERATE
the sampling rate
(default 44100)
- depth
BITDEPTH
the bit depth
(default 0)
Raises:
"invalid sampling rate: x", "invalid bit depth: x"
-
sfxr.Sound:save (f[, minify=true])
-
Save the sound parameters to a file as a Lua table
Parameters:
- f
string, file or love.filesystem.File
a path or file in
w
-mode
(passed files will not be closed)
- minify
bool
whether to minify the output or not
(default true)
-
sfxr.Sound:load (f)
-
Load the sound parameters from a file containing a Lua table
Parameters:
- f
string, file or love.filesystem.File
a path or file in
r
-mode
(passed files will not be closed)
Raises:
"incompatible version: x.x.x"
-
sfxr.Sound:saveBinary (f)
-
Save the sound parameters to a file in the sfxr binary format (version 102)
Parameters:
- f
string, file or love.filesystem.File
a path or file in
wb
-mode
(passed files will not be closed)
-
sfxr.Sound:loadBinary (f)
-
Load the sound parameters from a file in the sfxr binary format
(version 100-102)
Parameters:
- f
string, file or love.filesystem.File
a path or file in
rb
-mode
(passed files will not be closed)
Raises:
"incompatible version: x", "unexpected file length"


Help paying for NHS costs prototype
Alpha sprint 8
Created 19 September 2016
Eligibity checker
Start
NHS.UK content
Age & condition headers
NHS.UK content
Situational header
NHSBSA branding
NHSBSA branding- full logo
NHSBA branding- small logo
NHS.UK & alternative NHSBA branding
Key findings:
- Didn't read/ click through the age and condition headers
- Didn't understand after going into LIS section that it was the application
- Still wanted the 'magic figure' of earnings


array ldap_get_values_len ( resource $link_identifier , resource $result_entry_identifier , string $attribute )
Reads all the values of the attribute in the entry in the result. This function is used exactly like ldap_get_values() except that it handles binary data and not string data.
Returns an array of values for the attribute on success and FALSE on error. Individual values are accessed by integer index in the array. The first index is 0. The number of values can be found by indexing "count" in the resultant array.


Class LOG_FILE.
More...
#include <logfile.h>
|
| | log_file (char *filename) |
| | Provide a log file to screen and files. More...
|
| |
| | ~log_file () |
| | destroy file object. More...
|
| |
| void | enableLog (bool is_en) |
| | True.False to enable or disable logs to the file. More...
|
| |
| void | log (char *message) |
| | write message or string to log file w/ current date time. More...
|
| |
| void | logNoDate (char *message) |
| | write string to logfile w/ no timestamp. More...
|
| |
| void | puts (char *message, int len) |
| | low level write to log file. More...
|
| |
| void | enablePrintf (bool is_pr) |
| | true.false to enable print logs to screen as well as file. More...
|
| |
◆ anonymous enum
| Enumerator |
|---|
| num_saved_files | |
◆ log_file()
| log_file::log_file |
( |
char * |
filename | ) |
|
Provide a log file to screen and files.
writes log messages to fie with date and times.
- Author
- Tim Madden
- Date
- 2003 constructor, give filename to write to. Like "C:/a/b/cc/dd.txt" or linux name like "/hello/meme/logs/me.txt"
◆ ~log_file()
◆ enableLog()
| void log_file::enableLog |
( |
bool |
is_en | ) |
|
True.False to enable or disable logs to the file.
◆ enablePrintf()
| void log_file::enablePrintf |
( |
bool |
is_pr | ) |
|
true.false to enable print logs to screen as well as file.
◆ log()
| void log_file::log |
( |
char * |
message | ) |
|
write message or string to log file w/ current date time.
also writes to screen.
◆ logNoDate()
| void log_file::logNoDate |
( |
char * |
message | ) |
|
write string to logfile w/ no timestamp.
◆ puts()
| void log_file::puts |
( |
char * |
message, |
|
|
int |
len |
|
) |
| |
low level write to log file.
string and lengt of string.
◆ fp
◆ is_enabled
| bool log_file::is_enabled |
|
protected |
◆ is_printf
◆ log_file_name
| char log_file::log_file_name[255] |
|
protected |
The documentation for this class was generated from the following files:
- /home/travis/build/areaDetector/areaDetector/ADCameraLink/cameralinkApp/src/logfile.h
- /home/travis/build/areaDetector/areaDetector/ADCameraLink/cameralinkApp/src/logfile.cpp


Text Expansion: My Up-to-Date Guide
I’ve written before about the power of text expansion. Although it took me a long time to really get into the swing of typing snippets instead of full-blown words/sentences/etc., the cost has been well worth the result.
→ Software Is Hard: What It Takes
Today on the MailDeck blog, I wrote about why software development is hard (and what you can do to help).
Having gotten to know Jack Freeman (CTO of Crono, the makers of MailDeck), my stance in the post is stronger than ever. Independent developers work their tails off (often for very little recognition); at the same time, the software-consuming culture of today’s world has incredibly little respect for those efforts.
I recently saw the following review for a very well known iOS game:
Game is to short (minus 2 star) Gameis far too expensive and my job is too hard to spend my money on thís (minus 2 stars). 1 star
Helpful, right? Comments like this are (a) useless and (b) artificially deflate an app’s overall score without any tactile evidence. Reading this one reinvigorated my beliefs: we all owe it to developers to not be flippant with their work.
Specialty Filing with Hazel
A while back, I explained how I use Hazel to automatically file important statements into Evernote. The strategy I use relies on statement PDFs (which are automatically downloaded from my bank, apartment complex, etc.) containing URLs that describe where they came from; with this information, Hazel can automatically figure out which of my many rules to apply.
Link Mash (July 17, 2014)
The weekly Link Mash is a curated selection of tools, stories, and other links that I found during my travels on the web. All of my links can be found on my Pinboard; you can also find the Link Mash archives here.


Preparation time
overnight
Cooking time
1 to 2 hours
Serves
4
For the pork, place the cubes of pork into a large dish. Add the remaining pork ingredients, cover, then marinate overnight in the fridge.
When the pork cubes have marinated, transfer them and the marinade to a large, heavy-based pan. Add just enough water to cover the pork cubes and cook, covered, over a very low heat for 1-1½ hours, or until the meat is falling apart.
Meanwhile, for the apple and fennel raita, mix together all of the apple and fennel raita ingredients in a bowl until well combined. Chill in the fridge until needed.
Drain the cooked pork and set aside (reserve the cooking liquid).
For the stir fry, heat the oil in a wok over a high heat. When the oil is smoking, add the dried red chillies and stir fry until they have darkened and are fragrant.
Add the curry leaves and stir fry for 30 seconds, or until crisp and fragrant.
Add the split green chillies and red onion slices and stir fry for 2-3 minutes until softened.
Add the cooked pork cubes and fry, stirring continuously, for 3-4 minutes, or until golden-brown. (If the meat looks dry, add 1-2 tablespoons of the reserved cooking liquid and continue to cook until it has evaporated - this will glaze the pork cubes.) Season, to taste, with salt and freshly ground black pepper, then squeeze in the lime juice and stir to combine.
To serve, spoon some curry into the centre of each of four serving plates. Spoon a portion of apple and fennel raita alongside each serving. Sprinkle over the coriander cress leaves.


Previous | Contents | Index | Next
A rectangular grid has been filled with a mixture of magnets (that is, dominoes with one positive end and one negative end) and blank dominoes (that is, dominoes with two neutral poles). These dominoes are initially only seen in silhouette. Around the grid are placed a number of clues indicating the number of positive and negative poles contained in certain columns and rows.
Your aim is to correctly place the magnets and blank dominoes such that all the clues are satisfied, with the additional constraint that no two similar magnetic poles may be orthogonally adjacent (since they repel). Neutral poles do not repel, and can be adjacent to any other pole.
Credit for this puzzle goes to Janko [16].
Magnets was contributed to this collection by James Harvey.
[16] http://www.janko.at/Raetsel/Magnete/index.htm
On Android, please touch for left click and long press for right click. Also note that where this manual refers to pressing a letter on the keyboard, the Android version has icons at the bottom of the screen instead (Control and Shift are not available). There is also an optional "Night mode" which uses darker colours in low light.
Left-clicking on an empty square places a magnet at that position with the positive pole on the square and the negative pole on the other half of the magnet; left-clicking again reverses the polarity, and a third click removes the magnet.
Right-clicking on an empty square places a blank domino there. Right-clicking again places two question marks on the domino, signifying ‘this cannot be blank’ (which can be useful to note deductions while solving), and right-clicking again empties the domino.
Left-clicking a clue will mark it as done (grey it out), or unmark it if it is already marked.
You can also use the cursor keys to move a cursor around the grid. Pressing the return key will lay a domino with a positive pole at that position; pressing again reverses the polarity and then removes the domino, as with left-clicking. Using the space bar allows placement of blank dominoes and cannot-be-blank hints, as for right-clicking.
(All the actions described in section 2.1 are also available.)
These parameters are available from the ‘Custom...’ option on the ‘Type’ menu.
(Grids with at least one odd dimension tend to be easier to solve.)


Lauren's EDA Blog
03.03.2016 HTML CSS DOM pt2
This is where all html boxes can be arranged in tables of columns and rows
If a web-page is responsive it will be able to accommodate and arrange itself so that it is still viewable/looks good on different devices and their different screen sizes.

The Crown

Government

Local Government


Australian boxer Ritchie dies in sparring accident
Sydney - Australia's boxing community was in shock on Sunday after middleweight Dwight Ritchie collapsed and died aged just 27, reportedly while sparring.
Sydney's Daily Telegraph said he took a body shot on Saturday, walked back to his corner and collapsed. He could not be revived.
It said he was sparring in Melbourne with Michael Zerefa, who is preparing for a rematch with Jeff Horn, a former WBO welterweight champion.
Ritchie's promoter Jake Ellis confirmed the news on Facebook.
"It is with great sadness and shock to announce that the fighting cowboy Dwight Ritchie sadly passed away today doing what he loved," he said.
"As Dwight's promoter and friend it's unbearable to accept the tragic news that's just surfaced."
Richie, nicknamed "The Fighting Cowboy", held a 19-2 record.
He last fought in August, losing to Tim Tszyu by a unanimous decision for the IBF Australasian super welterweight title.
"I am truly saddened by the passing of Dwight Richie," Tszyu said on Instagram.
"Only fighters understand the bond shared between them, especially those who shared a ring together. Rest In Peace to a true champion."
Ritchie's death comes less than a month after American boxer Patrick Day died after suffering a serious brain injury during his knockout defeat to Charles Conwell in Chicago.
He was the third boxer to die from injuries sustained in the ring this year.
Argentina's Hugo Santillan died in July following a bout in San Nicolas, just north of Buenos Aires. His death came just two days after Russian fighter Maxim Dadashev died from brain injuries sustained in a fight in Maryland.


gameanalysis.bootstrap module¶
Module for using bootstrap in analysis
-
gameanalysis.bootstrap.
game_function
(game, function, num_resamples, num_returned, *, percentiles=None, processes=None)[source]¶ Bootstrap the value of a function over a sample game
- Parameters
game (SampleGame) – The sample game to bootstrap the function value over.
function (f(Game) -> float or f(Game) -> [float]) – The function of the game to compute. It must be pickleable unless processes is 1, and it must return either a float or an iterable of floats. If an iterable of floats, this bootstrap all indices of the return value independently.
num_resamples (int) – The number of bootstrap samples. Higher will take longer but also give better accuracy.
num_returned (int) – The number of float values your function returns.
percentiles (int or [int]) – The percentiles to compute on the resulting data in [0, 100]. Standard percentiles are 95, or [2.5, 97.5]. By default, return all samples.
processes (int (optional)) – The number of processes to use for computation. By default this is the number of cores.
- Returns
bootstrap_percentiles – An ndarray of the percentiles from bootstrapping. The shape will depend on the number of percentiles and the number of values returned from your function.
- Return type
ndarray
-
gameanalysis.bootstrap.
mixture_regret
(game, mixtures, num_resamples, *, percentiles=None, processes=None)[source]¶ Compute percentile bounds on mixture regret
- Parameters
game (SampleGame) – The sample game to bootstrap the function value over.
mixtures (ndararay) – The profiles to compute mixture regret bounds for.
num_resamples (int) – The number of bootstrap samples. Higher will take longer but also give better accuracy.
percentiles (int or [int]) – The percentiles to compute on the resulting data in [0, 100]. Standard percentiles are 95, or [2.5, 97.5]. By default, return all samples.
processes (int (optional)) – The number of processes to use for computation. By default this is the number of cores.
- Returns
regret_percentiles – An ndarray of the percentiles for bootstrap regret for each profile.
- Return type
ndarray
-
gameanalysis.bootstrap.
mixture_welfare
(game, mixtures, num_resamples, *, percentiles=None, processes=None)[source]¶ Compute percentile bounds on mixture welfare
- Parameters
game (SampleGame) – The sample game to bootstrap the function value over.
mixtures (ndarray) – The profiles to compute mixture welfare bounds for.
num_resamples (int) – The number of bootstrap samples. Higher will take longer but also give better accuracy.
percentiles (int or [int]) – The percentiles to compute on the resulting data in [0, 100]. Standard percentiles are 95, or [2.5, 97.5]. By default, return all samples.
processes (int (optional)) – The number of processes to use for computation. By default this is the number of cores.
- Returns
bootstrap_percentiles – An ndarray of the percentiles for bootstrap welfare for each profile.
- Return type
ndarray
-
gameanalysis.bootstrap.
profile_function
(game, function, profiles, num_resamples, *, percentiles=None, processes=None)[source]¶ Compute a function over profiles
- Parameters
game (SampleGame) – The sample game to bootstrap the function value over.
function (Game, profile -> float) – The function of the game profile pair to compute. It must be pickleable, and it must return a float (e.g. regret.mixture_regret).
profiles (ndarray) – The profiles to compute bootstrap bounds over for function.
num_resamples (int) – The number of bootstrap samples. Higher will take longer but also give better accuracy.
percentiles (int or [int]) – The percentiles to compute on the resulting data in [0, 100]. Standard percentiles are 95, or [2.5, 97.5]. By default, return all samples.
processes (int (optional)) – The number of processes to use for computation. By default this is the number of cores.
- Returns
bootstrap_percentiles – An ndarray of the percentiles from bootstrapping for each profile. The shape will depend on the number of percentiles and the number of profiles.
- Return type
ndarray


<EMAIL_ADDRESS>:<PHONE_NUMBER>
Student / Junior Web Developer
Education: Columbus State University, Columbus, GA 31907 Major: Computer Science / Cyber Security


|
entity - entity handle
first_frame - first frame of anim sequence to extract last_frame - last frame of anim sequence to extract anim_seq (optional) - anim sequence to extract from. This is usually 0, and as such defaults to 0. |
| This command allows you to convert an animation with an MD2-style series of anim sequences into a pure Blitz anim sequence, and play it back as such using Animate. |
|
mesh=LoadAnimMesh( base_mesh$ ) ;anim sequence 0.
ExtractAnimSeq( mesh,0,30 ) ;anim sequence 1: frames 0...30 are 'run' ExtractAnimSeq( mesh,31,40 ) ;anim sequence 2: frames 31...40 are 'jump' etc etc... Animate mesh,3,1,2 ;play one-shot jump anim |


by Election Commission of India
Standing in the queue and waiting for your turn to cast vote is a part of a history now.
Election Commission of India proposes a new system of voting where everything is transparent and no question of tampering the voting machine as it doesn't exists in first place.
BlockVote is the upcoming way of casting vote where all the votes will be stored in the Blockchain, which makes the system tamper proof and fully transparent.
How to use?
1. Install MetaMask Browser Extension.
2. Make sure that the Ethereum Account which you've been assigned is imported into MetaMask.
3. Visit the Cast Vote Page and cast your vote
Regards,
Election Commission of India


Below is some information about how value sets and code systems are used in Trifolia exports.
A number of terminology services allow one value set to contain another value set. Trifolia does not support this function; it treats value sets as though they are fully expanded.
As a result, when Trifolia represents a value set that contains another value set, it simply contains all of the members of the contained value set. This represents a fully expanded view of the value set.
Each member of a value set contains status and date fields. Trifolia uses these fields to determine which members should be exported to XML and MS Word output.
Calculated Date
For each member of a value set, Trifolia calculates a date that is used (along with the member's status) to determine whether to include that member in an export. The date is derived using this priority:
Once the date is calculated, the status and date together are used to determine whether the member is included in the export as follows:
Example
Given the following value set:
Code |
Status |
Date |
Value 1 |
Unspecified (blank) |
Unspecified |
Value 2 |
Active |
1/1/2013 |
Value 3 |
Active |
1/1/2013 |
Value 2 |
Inactive |
3/1/2013 |
For an export generated on 1/15/2013, the resulting list is:
For an export generated on 5/1/2013, the resulting list is:
Trifolia creates a relationship between a code system and a value set member. It does not currently track members of code systems outside of this relationship. Code systems are only used to reference a name/identifier combination.
A code system is referenced in one of the following ways:
Vocabulary XML is used for Schematron validation. Only a value set with a Binding value of static is validated by the Schematron.
When you export vocabulary XML, only a value set with a Binding value of static is incuded. A value set with a Binding value of unspecified (empty) or dynamic is ignored.


Changeset 373 for branches/alta/mystic-0.2a1/test_constraints_range.py
- Timestamp:
- 08/04/10 16:07:50 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/alta/mystic-0.2a1/test_constraints_range.py
r360 r373 9 9 10 10 Mathematica: x -> -0.61479, y -> 0.38521 11 12 OpenOpt Code and Results: 13 ------------------------- 14 from openopt import NLP, GLP 15 from math import * 16 from mystic.models import rosen as f 17 def c(x): 18 return -(max(x) - min(x) - 1.) 19 #x0 = [0., 1.75] 20 x0 = [0., 0.] 21 22 problem = GLP(f, x0, c=c, lb=[-1., -1.], ub=[3., 3.], population=40, 23 baseVectorStrategy='random', searchDirectionStrategy='random') 24 soln = problem.solve('de') 25 26 #problem = NLP(f, x0, c=c) 27 #soln = problem.solve('ralg') #[-0.61778501 0.38221429] 28 #soln = problem.solve('scipy_slsqp') #[-0.61478988 0.38521012] also, very fast! 29 print soln.xf 30 31 slsqp is great with a feasible x0, but fails with infeasible. ralg also does 32 poorly with infeasible x0. de does ok with any x0, as long as lb and ub is 33 narrow enough. 11 34 """ 12 35 … … 36 59 #x0 = [0., 0.] # Another infeasible starting point. 37 60 #x0 = [0., -0.5] # Difficult. Considerably closer to local min than global min 61 #x0 = [1.5, -0.5] # Even more difficult. Feasible, but in a disjoint feasible 62 # region from the global min. 38 63 39 64 constraints_string = """ … … 57 82 from mystic.termination import VTR 58 83 from mystic.termination import CandidateRelativeTolerance as CRT 84 from mystic.termination import ChangeOverGeneration as COG 59 85 from mystic.strategy import Rand1Bin 60 86 solver = DifferentialEvolutionSolver(ndim, npop) … … 64 90 term = VTR() 65 91 #term = CRT() 66 solver.Solve(costfunc, term, constraints=constraints_string, \ 67 constraints_method='penalty') 92 #term = COG() 93 solver.Solve(costfunc, term, constraints=constraints_string, \ 94 constraints_method='penalty', penalty=1e6, strategy=Rand1Bin) 68 95 soln = solver.Solution() 69 96 … … 282 309 time_before = time.time() 283 310 284 from differential_evolution import DifferentialEvolutionSolver311 from mystic.differential_evolution import DifferentialEvolutionSolver 285 312 from mystic.termination import VTR 286 313 from mystic.termination import CandidateRelativeTolerance as CRT … … 293 320 #term = CRT() 294 321 solver.Solve(costfunc, term, constraints=constraints_string, \ 295 constraints_method='auglag', rh=1e3, rg=1e3)322 constraints_method='auglag', strategy=Rand1Bin, rh=1e3, rg=1e3) 296 323 soln = solver.Solution() 297 324 … … 315 342 time_before = time.time() 316 343 317 from differential_evolution import DifferentialEvolutionSolver2 318 from mystic.termination import VTR 344 from mystic.differential_evolution import DifferentialEvolutionSolver2 345 from mystic.termination import VTR 346 from mystic.termination import CandidateRelativeTolerance as CRT 319 347 from mystic.strategy import Rand1Bin 320 348 solver = DifferentialEvolutionSolver2(ndim, npop) 321 322 solver. SetInitialPoints(x0)323 solver.enable_signal_handler()324 term = VTR()325 solver.Solve(costfunc, term, constraints=constraints_string, \ 326 constraints_method='auglag', rg=1e3, rh=1e3)#, strategy=Rand1Bin)327 soln = solver.Solution() 328 329 time_elapsed = time.time() - time_before 330 331 print "soln=", soln 332 print "f value =", costfunc(soln) 333 print "Time elapsed=", time_elapsed 334 335 from constraint_tools import verify_constraints_satisfied 336 print verify_constraints_satisfied(constraints_string, soln , disp=False)349 solver.SetInitialPoints(x0) 350 solver.enable_signal_handler() 351 term = VTR() 352 #term = CRT() 353 solver.Solve(costfunc, term, constraints=constraints_string, \ 354 constraints_method='auglag', strategy=Rand1Bin, rg=1e3, rh=1e3) 355 soln = solver.Solution() 356 357 time_elapsed = time.time() - time_before 358 359 print "soln=", soln 360 print "f value =", costfunc(soln) 361 print "Time elapsed=", time_elapsed 362 363 from constraint_tools import verify_constraints_satisfied 364 print verify_constraints_satisfied(constraints_string, soln)#, disp=False) 337 365 338 366 def test_neldermead_auglag(): … … 714 742 # with x0=[0., 0.], BFGS, NCG give non-minimum answers with penalty. 715 743 # with x0=[-0.5, -0.5] and penalty method, local optimizers can only find 716 # local minima. 744 # local minima. With [0., -0.5], all penalty method are stuck in local min. 717 745 test_diffev_penalty() 718 746 test_diffev2_penalty() … … 726 754 # infeasible region and end up at a local minimum. See 727 755 # http://ugcs.caltech.edu/~altafang/constrained_rosenbrock.html 756 # With [0., -0.5], all but diffev, diffev2, and bfgs get stuck in local min. 757 # With [1.5, -0.5], diffev works, and diffev2 works only with high 758 # CrossProbability and ScalingFactor. 728 759 test_diffev_auglag() 729 test_diffev2_auglag() # strange bug: with x0=[-0.5, -0.5] ,760 test_diffev2_auglag() # strange bug: with x0=[-0.5, -0.5] and [0., -0.5], 730 761 # get different answer depending on 731 762 # whether previous line is commented out or not. 763 # The effect also exists if you switch their orders. 732 764 test_neldermead_auglag() 733 765 test_powelldirectional_auglag() # needs rg and rh = 1e4 (for feasible x0)
Note: See TracChangeset
for help on using the changeset viewer.


{{template config_path="design/email/header_template"}}
|
{{trans "%name," name=$parent.getName()}} {{trans "Good News! Your friend placed an order!"}} |
{{trans "Your Referral Program."}} |
|
{{trans "Your friend just placed an order."}} {{trans "Friend's Name: %friend_name." friend_name=$child.getName() |raw}} {{trans "Friend's email address: %friend_email." friend_email=$child.getEmail() |raw}} |


- generate() - Method in class io.klerch.alexa.utterances.processor.Generator
-
Generates grammar from referenced file to an Alexa interaction model schema.
- generate(List<String>) - Method in class io.klerch.alexa.utterances.processor.Generator
-
Generates grammar from list of strings to an Alexa interaction model schema.
- Generation - Class in io.klerch.alexa.utterances.model
-
Result set object representing output of Generator
- Generation(InteractionModel) - Constructor for class io.klerch.alexa.utterances.model.Generation
-
Create new result set from interaction model
- Generator - Class in io.klerch.alexa.utterances.processor
-
Takes file and path references to *.grammar and *.values files or inputs as a list of strings and converts the grammar to an
Alexa skill interaction model you can use to deploy your skill right away
- Generator.GeneratorBuilder - Class in io.klerch.alexa.utterances.processor
-
Generator builder taking all the inputs like reference to your grammar specification
- GeneratorScope - Enum in io.klerch.alexa.utterances.processor
-
Generator will break down grammar specification into individual entities called scopes
- getBody() - Method in class io.klerch.alexa.utterances.lambda.Response
-
Get body (JSON schema)
- getDuplicateSamplesWith(Intent) - Method in class io.klerch.alexa.utterances.model.Intent
-
Compares sample utterances of this intent with sample utterances with the intent given to this method.
- getGeneration() - Method in class io.klerch.alexa.utterances.output.MemoryOutputWriter
-
Returns the output stored in memory
- getHeaders() - Method in class io.klerch.alexa.utterances.lambda.Response
-
Get key value map of metadata
- getId() - Method in class io.klerch.alexa.utterances.model.SlotType.SlotValue
-
Get slot id
- getId() - Method in class io.klerch.alexa.utterances.model.SlotType.SlotValue.SlotName
-
Get id
- getIntents() - Method in class io.klerch.alexa.utterances.model.InteractionModel.LanguageModel
-
Get list of intents defined in the model
- getInvocationName() - Method in class io.klerch.alexa.utterances.model.InteractionModel
-
Get invocation name of underlying language model JSON object
- getLines() - Method in class io.klerch.alexa.utterances.lambda.Request
-
get grammar specification line by line
- getLines(File) - Static method in class io.klerch.alexa.utterances.util.ResourceReader
-
Reads file contents to list of strings (one element per line).
- getModel() - Method in class io.klerch.alexa.utterances.model.Generation
-
Get skill interaction model
- getModel() - Method in class io.klerch.alexa.utterances.model.InteractionModel
-
Get underlying language model JSON object
- getName() - Method in class io.klerch.alexa.utterances.model.Intent
-
Get name of intent
- getName() - Method in class io.klerch.alexa.utterances.model.Slot
-
Get slot name
- getName() - Method in class io.klerch.alexa.utterances.model.SlotType
-
Get slot type name
- getNumberOfBuiltinIntents() - Method in class io.klerch.alexa.utterances.model.Generation
-
Returns number of builtin intents in the skill interaction model
- getNumberOfCustomIntents() - Method in class io.klerch.alexa.utterances.model.Generation
-
Returns number of custom intents in the skill interaction model
- getNumberOfIntents() - Method in class io.klerch.alexa.utterances.model.Generation
-
Returns number of intents in the skill interaction model
- getNumberOfSlots() - Method in class io.klerch.alexa.utterances.model.Generation
-
Returns number of referenced slots in utterances in the skill interaction model
- getNumberOfSlotTypes() - Method in class io.klerch.alexa.utterances.model.Generation
-
Returns number of slot types in the skill interaction model
- getNumberOfSlotValues() - Method in class io.klerch.alexa.utterances.model.Generation
-
Returns number of slot values in the skill interaction model excluding synonyms
- getNumberOfSlotValuesWithSynonyms() - Method in class io.klerch.alexa.utterances.model.Generation
-
Returns number of slot values in the skill interaction model including synonyms
- getNumberOfUtterances() - Method in class io.klerch.alexa.utterances.model.Generation
-
Returns number of utterances in the skill interaction model
- getOutput() - Method in class io.klerch.alexa.utterances.output.MemoryOutputWriter
-
Returns the output string stored in memory
- getPlaceholderValueList(Path, String) - Static method in class io.klerch.alexa.utterances.util.ResourceReader
-
Looking up value specification file in a given path for a given file key
- getSamples() - Method in class io.klerch.alexa.utterances.model.Intent
-
Get list of sample utterances
- getSlotName() - Method in class io.klerch.alexa.utterances.model.SlotType.SlotValue
-
Get slot name object
- getSlotTypes() - Method in class io.klerch.alexa.utterances.model.InteractionModel.LanguageModel
-
Get list of slot types defined in the model
- getStatusCode() - Method in class io.klerch.alexa.utterances.lambda.Response
-
Get HTTP response code
- getSynonyms() - Method in class io.klerch.alexa.utterances.model.SlotType.SlotValue.SlotName
-
Get synonyms
- getType() - Method in class io.klerch.alexa.utterances.model.Slot
-
Get slot type
- getValue() - Method in class io.klerch.alexa.utterances.model.SlotType.SlotValue.SlotName
-
Get value
- getValues() - Method in class io.klerch.alexa.utterances.model.SlotType
-
- Request - Class in io.klerch.alexa.utterances.lambda
-
Expected request format of Lambda call
- Request() - Constructor for class io.klerch.alexa.utterances.lambda.Request
-
New Request
- resolvedPlaceholders - Static variable in class io.klerch.alexa.utterances.util.Resolver
-
Regex pattern to extract placeholders that were substituted with an internal reference during an interim step of the generation process (e.g.
- resolveIntentDefinition(String) - Static method in class io.klerch.alexa.utterances.util.Resolver
-
Extracts intent specification (e.g.
- resolveInvocationDefinition(String) - Static method in class io.klerch.alexa.utterances.util.Resolver
-
Extracts invocation name specification (e.g.
- Resolver - Class in io.klerch.alexa.utterances.util
-
Resolver provides a bunch of methods used by Generator to resolve artifacts in grammar specification
- Resolver() - Constructor for class io.klerch.alexa.utterances.util.Resolver
-
- resolveSlotType(String, List<String>) - Static method in class io.klerch.alexa.utterances.util.Resolver
-
Given a slot type name and a list of values in the format of key:value this method creates a new SlotType object with slot id, slot value and synonyms
- resolveSlotTypeDefinition(String) - Static method in class io.klerch.alexa.utterances.util.Resolver
-
Extracts slot type definition (e.g.
- resolveSlotValues(List<String>) - Static method in class io.klerch.alexa.utterances.util.Resolver
-
Resolves a list of slot values by normalizing format and splitting up multiple values in one line to multiple values
- resolveToUniqueSlotName(List<Slot>, String) - Static method in class io.klerch.alexa.utterances.util.Resolver
-
Given a set of already existing slot names within an utterance and another slot name this method takes care of returning a unique slot name not duplicating a name of the existing ones
- ResourceReader - Class in io.klerch.alexa.utterances.util
-
Reads grammar and value specification from local file system
- ResourceReader() - Constructor for class io.klerch.alexa.utterances.util.ResourceReader
-
- Response - Class in io.klerch.alexa.utterances.lambda
-
Response object for Lambda call
- Response() - Constructor for class io.klerch.alexa.utterances.lambda.Response
-
New success response
- Response(Integer) - Constructor for class io.klerch.alexa.utterances.lambda.Response
-
New response with defined HTTP status code
- run() - Method in class io.klerch.alexa.utterances.console.Console
-
- validate() - Method in class io.klerch.alexa.utterances.model.InteractionModel
-
Does some validation of the model.
- validateIntentName(String) - Static method in class io.klerch.alexa.utterances.util.Validator
-
Validates intent name against ASK conventions.
- validateInvocationName(String) - Static method in class io.klerch.alexa.utterances.util.Validator
-
Validates invocation name against ASK conventions.
- validateSampleUtterance(String) - Static method in class io.klerch.alexa.utterances.util.Validator
-
Validates sample utterance against ASK conventions.
- validateSlotName(String) - Static method in class io.klerch.alexa.utterances.util.Validator
-
Validates slot name against ASK conventions.
- Validator - Class in io.klerch.alexa.utterances.util
-
Validates naming conventions
- Validator() - Constructor for class io.klerch.alexa.utterances.util.Validator
-
- valueOf(String) - Static method in enum io.klerch.alexa.utterances.formatter.PlainFormatter.EditorialFormatterBuilder.INTENT_DISPLAY_OPTION
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum io.klerch.alexa.utterances.formatter.PlainFormatter.EditorialFormatterBuilder.SLOT_TYPE_DISPLAY_OPTION
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum io.klerch.alexa.utterances.processor.GeneratorScope
-
Returns the enum constant of this type with the specified name.
- values() - Static method in enum io.klerch.alexa.utterances.formatter.PlainFormatter.EditorialFormatterBuilder.INTENT_DISPLAY_OPTION
-
Returns an array containing the constants of this enum type, in
the order they are declared.
- values() - Static method in enum io.klerch.alexa.utterances.formatter.PlainFormatter.EditorialFormatterBuilder.SLOT_TYPE_DISPLAY_OPTION
-
Returns an array containing the constants of this enum type, in
the order they are declared.
- values() - Static method in enum io.klerch.alexa.utterances.processor.GeneratorScope
-
Returns an array containing the constants of this enum type, in
the order they are declared.


--- title: Contact Us | LSF layout: single-page --- Contact Us General/Partnership inquiries Apply for LSF Fellowships Volunteer<EMAIL_ADDRESS>0777374957 Apply Now Volunteer Now
<EMAIL_ADDRESS>0777374957


new Observer(target)
| Name | Type | Description |
|---|---|---|
target |
Object |
Methods
-
onWrite()
-
Fires write event and bubbles up to parent.
Fires:
-
trackReads(){Observer#StopTrackingReads}
-
Starts tracking reads from the target object.
Returns:
Type Description Observer#StopTrackingReads Stops tracking and returns reads.
Type Definitions
-
StopTrackingReads(){Array.<Array.<string>>}
-
Stops tracking reads and returns those that have been tracked.
Returns:
Type Description Array.<Array.<string>> All properties read since tracking started.
Events
-
write
-
Fired when a property changes on the target or any of its children.
Type:
- object
Properties:
Name Type Description propertyPath
Array.<string> Path to written property propertyValue
? Value written to property


When building a web site, a way is needed to provide links from a page generated by one script to another script. @x:Act provides a rich set of facilities for this.
@x:Act scripts are stored in a scripts directory tree. The scriptDir option gives the path to this directory. @x:Act scripts can be placed in this directory or in subdirectories. Scripts are named with a script path. For a script foo.xact directly in the script directory, the script path is just foo. For a script bar.xact in the xxx subdirectory the script path is xxx:bar.
The ABS view is used to specify absolute script paths. For example ABS.xxx:bar refers to the bar.xact script in the xxx subdirectory.
The REL view is used to specify relative script paths. For example REL.zap refers to the script zap.xact in the same directory as the invoking script.
The A function generates an html a element. For example @x:tag A[REL.foo]() { "to foo script" }. The foo.xact script must have a visible function with name foo.
Parameters of type string can be passed from one script to another.
For example @x:tag A[REL.foo1]("test",
HTML form tags can be produced by calling function FORM instead of A. Form values are available in the target script via the special predefined passed value.
The A and FORM internally use the URLUnparseQuery function to produce the URL. There is also a build-in URLParseQuery that performs the inverse operation.


Located in California's Sierra Nevada, the Ansel Adams Wilderness spans 231,533 acres of rugged beauty.


public class Logger
extends totalcross.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static int |
ALL
ALL indicates that all messages should be logged.
|
static int |
CONFIG
CONFIG is a message level for static configuration messages.
|
static Stream |
DEBUG_CONSOLE
Stream where the bytes are written to the debug console
|
static int |
FINE
FINE is a message level providing tracing information.
|
static int |
FINER
FINER indicates a fairly detailed tracing message.
|
static int |
FINEST
FINEST indicates a highly detailed tracing message.
|
static int |
INFO
INFO is a message level for informational messages.
|
static int |
OFF
OFF is a special level that can be used to turn off logging.
|
static int |
SEVERE
SEVERE is a message level indicating a serious failure.
|
static int |
WARNING
WARNING is a message level indicating a potential problem.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addOutputHandler(Stream output)
Adds an output stream to the logger's output handler set.
|
void |
config(String message)
Log a CONFIG message.
|
void |
dispose(boolean closeOutputHandlers)
Permanently discard this logger, removing it from the loggers registry.
|
void |
entering(String sourceClass,
String sourceMethod,
String params)
Log a method entry.
|
void |
exiting(String sourceClass,
String sourceMethod)
Log a method return.
|
void |
fine(String message)
Log a FINE message.
|
void |
finer(String message)
Log a FINER message.
|
void |
finest(String message)
Log a FINEST message.
|
static int |
getDefaultLevel()
Returns the initial logger level, which is used when a new logger is created.
|
static String |
getDefaultSeparator()
Returns the initial message separator, which is used when a new logger is
created.
|
static Logger |
getGlobalLogger()
Returns the global anonymous logger.
|
int |
getLevel()
Returns the current logger level.
|
static Logger |
getLogger(String name)
Returns the logger with a specific name, keeping its level and output
handlers unchanged.
|
static Logger |
getLogger(String name,
int level)
Returns the logger with a specific name, setting the level specified
and keeping the output handlers unchanged.
|
static Logger |
getLogger(String name,
int level,
Stream outputStream)
Returns the logger with a specific name, setting the level specified
and optionally adding the given stream to the list of output handlers.
|
String |
getName()
Returns the logger name.
|
Stream[] |
getOutputHandlers()
Get the output handlers associated with this logger.
|
String |
getSeparator()
Gets the string used to separate two log messages.
|
void |
info(String message)
Log a INFO message.
|
void |
log(int level,
String message,
boolean prependInfo)
Logs a given message.
|
void |
logInfo(StringBuffer message)
Used internally.
|
boolean |
removeOutputHandler(Stream output)
Removes an output handler from the logger's output handler set.
|
static void |
setDefaultLevel(int level)
Sets the initial logger level, which will be used when a new logger is created.
|
static void |
setDefaultSeparator(String separator)
Sets the initial message separator, which will be used when a new logger is
created.
|
void |
setLevel(int level)
Sets the current logger level.
|
void |
setSeparator(String separator)
Sets the string used to separate two log messages.
|
void |
severe(String message)
Log a SEVERE message.
|
void |
throwing(String sourceClass,
String sourceMethod,
Throwable thrown)
Log throwing an exception.
|
void |
warning(String message)
Log a WARNING message.
|
public static final int OFF
public static final int FINEST
public static final int FINER
public static final int FINE
public static final int CONFIG
public static final int INFO
public static final int WARNING
public static final int SEVERE
public static final int ALL
public static final Stream DEBUG_CONSOLE
public static Logger getLogger(String name)
name
- The logger name.totalcross.lang.NullPointerException
- if name is null.public static Logger getLogger(String name, int level)
name
- The logger name.level
- The logger level to set or -1 to keep it unchanged.totalcross.lang.NullPointerException
- if name is null.public static Logger getLogger(String name, int level, Stream outputStream)
name
- The logger name.level
- The logger level to set or -1 to keep it unchanged.outputStream
- The stream to add to the logger's list of output
handlers or null
to keep it unchanged.totalcross.lang.NullPointerException
- if name is null.public static Logger getGlobalLogger()
public String getName()
public int getLevel()
public void setLevel(int level)
level
- The logger level to set. This should be a composition of one or more
of the message types constants (FINEST, FINER, FINE, CONFIG, INFO, WARNING, SEVERE) or
OFF, if you want to disable all logging, or ALL, if you want to enable all logging.public static void setDefaultLevel(int level)
level
- The logger level to set. This should be a composition of one or more
of the message types constants (FINEST, FINER, FINE, CONFIG, INFO, WARNING, SEVERE) or
OFF, if you want to disable all logging, or ALL, if you want to enable all logging.public static int getDefaultLevel()
public String getSeparator()
public void setSeparator(String separator)
separator
- The string written after each log message.public static void setDefaultSeparator(String separator)
separator
- The separator string.public static String getDefaultSeparator()
public void addOutputHandler(Stream output)
output
- The output stream.public boolean removeOutputHandler(Stream output)
output
- The output stream.public Stream[] getOutputHandlers()
public void log(int level, String message, boolean prependInfo)
level
- The message level.message
- The message to log.prependInfo
- A flag indicating whether this log message must be prepended
with the current date and time, level string, logger name, etc.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void logInfo(StringBuffer message)
public void finest(String message)
message
- The message to log.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void finer(String message)
message
- The message to log.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void fine(String message)
message
- The message to log.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void config(String message)
message
- The message to log.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void info(String message)
message
- The message to log.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void warning(String message)
message
- The message to log.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void severe(String message)
message
- The message to log.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void entering(String sourceClass, String sourceMethod, String params)
sourceClass
- The name of class that issued the logging request.sourceMethod
- name of method that is being entered.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void exiting(String sourceClass, String sourceMethod)
sourceClass
- The name of class that issued the logging request.sourceMethod
- The name of method that is being returned.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void throwing(String sourceClass, String sourceMethod, Throwable thrown)
sourceClass
- he name of class that issued the logging request.sourceMethod
- The name of method that is throwing the exception.thrown
- The totalcross.lang.Throwable that is being thrown.totalcross.lang.NullPointerException
- if one or more registered output handler
streams are null or this logger has been disposed.public void dispose(boolean closeOutputHandlers)
closeOutputHandlers
- If true
, all output handler streams
will be closed before disposing this logger.


Press n or j to go to the next uncovered block, b, p or k for the previous block.
| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| AddMember.js |
|
50% | 4/8 | 100% | 0/0 | 33.33% | 1/3 | 50% | 4/8 |
| AddShoppingList.js |
|
100% | 8/8 | 100% | 0/0 | 100% | 3/3 | 100% | 8/8 |
| GroupItem.js |
|
100% | 2/2 | 100% | 0/0 | 100% | 1/1 | 100% | 2/2 |
| GroupMemberView.js |
|
85.71% | 6/7 | 83.33% | 5/6 | 80% | 4/5 | 85.71% | 6/7 |
| GroupView.js |
|
100% | 4/4 | 100% | 0/0 | 100% | 2/2 | 100% | 4/4 |
| Groups.js |
|
100% | 2/2 | 100% | 0/0 | 100% | 2/2 | 100% | 2/2 |
| Header.js |
|
84.62% | 11/13 | 77.78% | 7/9 | 100% | 4/4 | 84.62% | 11/13 |
| Icon.js |
|
65% | 13/20 | 58.82% | 10/17 | 100% | 2/2 | 65% | 13/20 |
| Item.js |
|
0% | 0/14 | 0% | 0/10 | 0% | 0/7 | 0% | 0/13 |
| LoginButton.js |
|
100% | 3/3 | 100% | 0/0 | 100% | 2/2 | 100% | 3/3 |
| Loginform.js |
|
100% | 16/16 | 75% | 3/4 | 100% | 6/6 | 100% | 16/16 |
| LogoutButton.js |
|
100% | 5/5 | 100% | 0/0 | 100% | 3/3 | 100% | 5/5 |
| MemberItem.js |
|
80% | 4/5 | 28.57% | 2/7 | 66.67% | 2/3 | 80% | 4/5 |
| PossibleItem.js |
|
0% | 0/2 | 100% | 0/0 | 0% | 0/1 | 0% | 0/2 |
| RegisterButton.js |
|
100% | 3/3 | 100% | 0/0 | 100% | 2/2 | 100% | 3/3 |
| RegisterForm.js |
|
90% | 27/30 | 82.35% | 14/17 | 81.82% | 9/11 | 89.29% | 25/28 |
| ShoppingList.js |
|
0% | 0/6 | 100% | 0/0 | 0% | 0/3 | 0% | 0/6 |
| ShoppingListView.js |
|
52.94% | 18/34 | 66.67% | 4/6 | 40% | 6/15 | 50% | 16/32 |


This intention extracts operand expression from If condition and creates new If statement with this expression as a condition, keeping the original control flow.


Please checkout the dedicated Blackfynn Help page
for generating API key and secret and setting up your Blackfynn account in SODA during your first use. The account will then be remembered by SODA for all subsequent uses and be accessible under the "Select existing account" tab.
Key name:
API Key:
API Secret:
Select previously added account
Previously added account(s) will be displayed in this drop-down list. Default account (last selected account before app closed) will be loaded automatically at start if available. Click on "Switch Account" and select one from the drop-down list for changing to another account (in case multiple ones are connected with SODA).
To remove an account from the list, you would have to delete the associated API key from the Blackfynn webpage (under "My Settings").
Enter name:
Enter desired name for your new dataset. This is the field that will be displayed in public as the title of the dataset. Please make sure that your dataset title is different than your other dataset titles and that it is relatively informative.
Select Blackfynn dataset
Note: You must have "owner" or "manager" permissions on the dataset to change its name. See feature "Manage dataset permissions" of SODA and our associated documentation for more information.
Enter new name:
Select Blackfynn dataset
Select the Blackfynn dataset for which you wish to add/edit metadata (sorted alphabetically).
Subtitle, description, banner image and license are mandatory SPARC metadata.
Note: You must have "owner" or "manager" permissions on the dataset to edit metadata. See feature "Manage dataset permissions" of SODA and our associated documentation for more information.
Add metadata
Enter subtitle below. Any existing subtitle will be displayed.
Add two or three sentences (limit of 256 characters) that describe the content of your dataset such that it is possible to differente it from other datasets. This field will become the short description visible immediately under the title of your dataset once it is published.
256 characters left
Enter description below. Any existing description will be displayed.
Provide a detailed description of your dataset. This description will be highly visible on the SPARC data portal once your dataset is published so it is recommended to use rich text (bold, italic, enumerated list, etc.)
Current banner image of selected dataset
None
Add/edit banner image
This image will be associated with the dataset and used as a thumbnail once the dataset is published.
This interface will help you make sure the uploaded image is square as per SPARC dataset requirements. Final image dimensions must be at least 512x512 px and over 1024x1024 px is highly recommended. The final image size must not exceed 5MB as per Blackfynn's restriction.
Imported image will be shown here. You will be able to crop it before uploading.
Click to assign license
Current License
None
Note: As per SPARC rules, you must assign the Creative Commons Attribution (CC-BY) license to your dataset.
Select Blackfynn dataset
Select the Blackfynn dataset you wish to see/edit permissions (sorted alphabetically).
Note: You must have "owner" or "manager" permissions on the dataset to manage permissions. See feature "Manage dataset permissions" of SODA and our associated documentation for more information.
Current permissions
Name of user (First name, Last name) and their current permissions ("viewer", "manager", "editor", "owner",) will be shown here for the selected dataset.
None
Change permissions
SPARC curation rules require to set the PI of the SPARC award as "owner" of the dataset before it is shared with the Curation Team for review. This is to ensures that the PI is the only person who can publish the dataset.
Giving permissions to other members and/or team is only necessary if you need them to contribute to the dataset.
Sharing with the SPARC Curation Team will assign them "manager" role, which is necessary for them to access your dataset when it is ready to be reviewed, and set the dataset status to "03. Ready for Curation" thus adding the dataset to the Curation Team's queue for review. It is then highly recommended to not make any changes to your dataset.
See our associated documentation to learn more about the meaning of the different roles and what type of permissions they provide.
Select local dataset to submit
Select Blackfynn dataset for uploading
Select the target dataset on your Blackfynn account (sorted alphabetically).
Note: You must have "owner", "manager" or "editor" permissions on the dataset to upload. See feature "Manage dataset permissions" of SODA and our associated documentation for more information.
Upload
Click on "Submit dataset" to push all the files/folders from the selected local folder into the selected Blackfynn dataset. Local folder structure will be preserved. The progress bar located below will provide a live update on the upload.
Progress
Select Blackfynn dataset
Please wait...
Once your dataset is approved by the Curation Team, it is ready to be shared with the SPARC Consortium as embargoed dataset. Sharing will give "viewer" permissions to any SPARC investigator who has signed the SPARC Non-disclosure form and will allow them to see your data.
Note: You must have "owner" or "manager" permissions on the dataset to share with the SPARC consortium. See feature "Manage dataset permissions" of SODA and our associated documentation for more information.
Click to reserve DOI (optional)
Currently reserved DOI
A Digital Object Identifier (DOI), is a string of numbers, letters and symbols used to permanently identify your dataset on the web.
The Blackfynn platform uses DataCite to help locate, identify, manage, and cite your research data.
A DOI can optionally be reserved prior to publication. Otherwise, it will be reserved automatically when you publish the dataset.
Note: You must have "owner" or "manager" permissions on the dataset to view/reserve a DOI. See feature "Manage dataset permissions" of SODA and our associated documentation for more information.
Click to publish dataset
Publishing status:
One year after the dataset completion date (as per the Data Deliverables document) or right after publishing results from the dataset, whichever comes first, you must publish your dataset to Blackfynn Discover, which populates the SPARC Data Portal.
Publishing the dataset will make it visible to the public.
Note: You must be dataset "owner" and have your ORCID linked on Blackfynn in order to publish. See feature "Manage dataset permissions" of SODA and our associated documentation for more information.
Select Blackfynn dataset
The status of a dataset is used to allow easy communication between SPARC investigators and the SPARC Dataset Curation Team regarding the progress of a dataset through the curation process. There are 12 status options that each SPARC Dataset will go through one by one during the submission and curation process. Each status indicates which team is responsible for the step.
Select the Blackfynn dataset for which you wish to change the status (sorted alphabetically).
Note: You must have "owner" or "manager" permissions on the dataset to change dataset status. See feature "Manage dataset permissions" of SODA and our associated documentation for more information.
View/change status
Investigators should only have to change dataset status to one of the following four options:
"02. Work in Progress (Investigator)": Select to indicate that you are working on your dataset
"03. Ready for Curation (Investigator)": Select to inform the SPARC Dataset Curation Team that your dataset is ready to be reviewed. You dataset will be added to the curation queue. Please note that the SPARC Dataset Curation Team will not look into your dataset until you change the status to this option.
"11. Complete, Under Embargo (Investigator)": Select to share your dataset with the SPARC Consortium. This will give viewer permissions to the SPARC Embargoed Data Sharing Group and will therefore allow any SPARC investigator who has signed the SPARC Non-disclosure form to see your data.
"12. Published (Investigator)": Select this option once you have published your dataset. One year after the initial upload of your dataset, you must publish your dataset to Blackfynn Discover, which populates the SPARC Portal. To do this, open the dataset of interest on the Blackfynn webpage, click on the Settings tab on the left, and select Publish Dataset.


Esri Capabilities
- Current state of GIS - Current and future initiatives - As a group how do you define success? - Issues/road blocks - IT direction - GIS strategic plan - Enterprise road map / architecture discussion - Enterprise systems you support - Citizen engagement - Open Data, Hub? - Performance Management Dashboards - Need for data exploration? - Insights - ArcGIS Solutions / ArcGIS Apps - ArcGIS Pro - New named user types - Training plan
### Patterns of Use
### Capabilities - [Mobile](https://trello.com/c/0YzKaJnO/208-field-operations) - 3-6 Employees | 1HR daily - How to Distributing assignments? - How do I get to my work? - Capturing data on paper and re-coding
## Workflow Details - User Friendly - Takes work locations - Splits into routes w/ optimize stop order - Pushes to dispatcher and field crews - **Assigned w/ Optimized stops**
### Takeaways - Mobile - City of Durham - **[savings ~ $62,520 annually/labor costs](https://fowlerj9.github.io/esri-presentations-workforceassignwork/img/img/IdeaStarter.pdf)** - Equitable distribution of work, Efficient Workflow - [Public Communication](https://webgis.durhamnc.gov/myinspector/) - N. Augusta SC - Reduced response time from **33hrs to 8 hrs** - Reduced trips and Saves fuel and Mileage
### Capabilities - [Apps](https://www.esri.com/en-us/arcgis/products/apps-for-everyone/overview.html)
### Capabilities - Analytics - [311 in Insights](https://cltportal.esri.com/portal/apps/insights/index.html#/edit/667d8d4ab88d4923b0310a8c8ec1e642) - Crime Analysis - [Citizen Problem Reporter Dashboard](http://links.esri.com/localgovernment/tryit/CitizenProblemDashboard/)
### Takeaways - Analytics
- Exploratory Spatial Analysis - Visual, Intuitive, Dynamic, User Friendly - Fast Analysis - Key Performance Indicators (KPIs) - At-A-Glance Decision Making
### Capabilities - Solutions - [Solutions for Local Government](https://solutions.arcgis.com/#Local%20Government) - [Capital Improvement](https://trello.com/c/OsoHsEUA/216-capital-improvement-plan) - [Stabalize Neighborhoods](https://solutions.arcgis.com/local-government/planning-and-development/blight-properties/) - [Early Warning](http://ourcityc.maps.arcgis.com/apps/Minimalist/index.html?appid=71de37ad05524b458aee7c70f4168ed1) - Elections Management [Story Map](http://links.esri.com/localgovernment/tryit/GettingKnowElectionManagement/) and [Solution](https://solutions.arcgis.com/state-government/help/election-management/#try-it-now)
### Takeaways - Solutions - Quickly address challenges - Free and Open Source - Supported by ESRI - Updated as tech moves forward
### Takeaways - [Engagement](https://trello.com/b/svnPco0J/hub-story) - Data Driven - [Initiative Focus](https://hub.arcgis.com/admin/initiatives/gallery) - Community Engagement - Internal Collaboration
### Geospatial Platform
### Geospatial Platform
### Enabling Everyone
### Capabilities - IoT and Big Data
- [Marta Busses](https://ourcityc.maps.arcgis.com/apps/MapSeries/index.html?appid=83163416958348b8be603f02df7741a4) - [Are the Busses on Schedule?](https://cltportal.esri.com/portal/apps/opsdashboard/index.html#/f01868f82c6645b4b030dea774c21619) - [Lakeland Fl](https://lakelandflorida.maps.arcgis.com/apps/opsdashboard/index.html#/6b2e8485ecb74f3e888b7aa8961dce14) - [Temporal Filters](https://cltportal.esri.com/portal/home/webmap/viewer.html?webmap=d2602f69b74e4efab94400ec02a32a17)
### Takeaways - IoT and Big Data
**+**
**+**


“I didn’t know he was so good” – Chelsea star names the Blues team-mate who surprised him
by Mark BrusChelsea midfielder Mateo Kovacic has heaped praise onto his midfield partner Jorginho, explaining that he was surprised by quite how good he was when they linked up at Stamford Bridge.
Both players were brought in under Maurizio Sarri before the start of last season, though it’s arguably not until this term that they’ve started to fulfil their true potential at Chelsea.
MORE: €35m Chelsea ace attracting interest from Real Madrid
Blues fans will be delighted at the progress made by the midfield duo so far this season, and it seems Kovacic is full of respect for the man he’s playing alongside.
Midfield partnerships are crucial in football, and it does seem like the pair complement each other really well, with the Croatia international explaining to Chelsea’s official site that he’d watched Jorginho at Napoli before they became team-mates.
He said, however, that he was still surprised at how good the Italian was once he saw him in the flesh, which is high praise indeed that will surely have CFC supporters happy about the team spirit within the club at the moment.
He said: “I watched Jorginho when he was at Napoli, when we played against each other, but I think now he is getting even better.
“He is a great player. I didn’t know he was so good, but when you train with him you see it. I’m enjoying it, I think he is as well, and we need to keep working on that.”


PARAMETRIC EQUATION PARAMETERS
|
a param |
|
|
b param |
|
|
c param |
|
INTERVAL t VALUE PARAMETERS
|
t begin |
|
|
t interval |
|
|
t step |
|
LINES WIDTH
|
L1 width |
|
|
L2 width |
|
|
L3 width |
|
COLORS
|
Co color |
|
| Hue |
LINE STYLE - CURVE, LINE, DASHED, DISTRIBUTION
|
Color distrib. |
|
|
Curve / Line |
|
|
Dashed ratio |
|
SPLIT CURVE HORIZONTAL VERTICAL
|
Sp split |
||
ZOOM & PAN
|
Z zoom |
|
SAVE AS IMAGE/JPG
| size | 480p | 720p |
| 1080p | 1440p | 2160p |
| SAVE : |
At the top of the screen, the circle shape is drawn on canvas with a parametric equation. There are some explanations on the sketch below :
It's possible to change many parameters when playing with buttons in the bottom part of the window. Then the circle will turn into something really different. You can also play with updating the three initial colors.
If you like what you've done while playing with Bezier Curves Big Circus, you can export it as a JPG image, and save it to your device.
The drawing is constantly updated. If there is too many lines on the canvas, it's more difficult to update: the application runs slower. Initial frame rate is about 60. It should not go under 6.
Actual FRAME RATE is :
When doing nothing on canvas (no keyboard action) during 180 seconds, drawing get back to initial ring.