hunspell
Section: Devices and Network Interfaces (4)Updated: 2008-08-15
Index Return to Main Contents
NAME
hunspell - format of Hunspell dictionaries and affix filesDESCRIPTION
Hunspell(1) requires two files to define the language that it is spell checking. The first file is a dictionary containing words for the language, and the second is an "affix" file that defines the meaning of special flags in the dictionary.A dictionary file (*.dic) contains a list of words, one per line. The first line of the dictionaries (except personal dictionaries) contains the approximate word count (for optimal hash memory size). Each word may optionally be followed by a slash ("/") and one or more flags, which represents affixes or special attributes. Dictionary words can contain also slashes with the "/" syntax. Default flag format is a single (usually alphabetic) character. After the dictionary words there are also optional fields separated by tabulators or spaces (spaces only work as morphological field separators, if they are followed by morphological field ids, see also Optional data fields).
Personal dictionaries are simple word lists. Asterisk at the first character position signs prohibition. A second word separated by a slash sets the affixation.
-
foo Foo/Simpson *bar
In this example, "foo" and "Foo" are personal words, plus Foo will be recognized with affixes of Simpson (Foo's etc.) and bar is a forbidden word.
An affix file (*.aff) may contain a lot of optional attributes. For example, SET is used for setting the character encodings of affixes and dictionary files. TRY sets the change characters for suggestions. REP sets a replacement table for multiple character corrections in suggestion mode. PFX and SFX defines prefix and suffix classes named with affix flags.
The following affix file example defines UTF-8 character encoding. `TRY' suggestions differ from the bad word with an English letter or an apostrophe. With these REP definitions, Hunspell can suggest the right word form, when the misspelled word contains f instead of ph and vice versa.
 SFX B Y 2 SFX B 0 ed [^y] SFX B y ied y
There are two affix classes in the dictionary. Class A defines a `re-' prefix. Class B defines two `-ed' suffixes. First suffix can be added to a word if the last character of the word isn't `y'. Second suffix can be added to the words terminated with an `y'. (See later.) The following dictionary file uses these affix classes.
-
3 hello try/B work/AB
All accepted words with this dictionary: "hello", "try", "tried", "work", "worked", "rework", "reworked".
GENERAL OPTIONS
Hunspell source distribution contains more than 80 examples for option usage.
- SET encoding
- Set character encoding of words and morphemes in affix and dictionary files. Possible values: UTF-8, ISO8859-1 - ISO8859-10, ISO8859-13 - ISO8859-15, KOI8-R, KOI8-U, microsoft-cp1251, ISCII-DEVANAGARI.
- FLAG value
- Set flag type. Default type is the extended ASCII (8-bit) character. `UTF-8' parameter sets UTF-8 encoded Unicode character flags. The `long' value sets the double extended ASCII character flag type, the `num' sets the decimal number flag type. Decimal flags numbered from 1 to 65000, and in flag fields are separated by comma. BUG: UTF-8 flag type doesn't work on ARM platform.
- COMPLEXPREFIXES
- Set twofold prefix stripping (but single suffix stripping) for agglutinative languages with right-to-left writing system.
- LANG langcode
- Set language code. In Hunspell may be language specific codes enabled by LANG code. At present there are az_AZ, hu_HU, TR_tr specific codes in Hunspell (see the source code).
- IGNORE characters
- Ignore characters from dictionary words, affixes and input words. Useful for optional characters, as Arabic diacritical marks (Harakat).
- AF number_of_flag_vector_aliases
- AF flag_vector
- Hunspell can substitute affix flag sets with ordinal numbers in affix rules (alias compression, see makealias tool). First example with alias compression:
-
3 hello try/1 work/2
AF definitions in the affix file:
-
SET UTF-8 TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ' AF 2 AF A AF AB
It is equivalent of the following dic file:
-
3 hello try/A work/AB
See also tests/alias* examples of the source distribution.
Note: If affix file contains the FLAG parameter, define it before the AF definitions.
Note II: Use makealias utility in Hunspell distribution to compress aff and dic files.
- AM number_of_morphological_aliases
- AM morphological_fields
- Hunspell can substitute also morphological data with ordinal numbers in affix rules (alias compression). See tests/alias* examples.
OPTIONS FOR SUGGESTION
Suggestion parameters can optimize the default n-gram, character swap and deletion suggestions of Hunspell. REP is suggested to fix the typical and especially bad language specific bugs, because the REP suggestions have the highest priority in the suggestion list. PHONE is for languages with not pronunciation based orthography.- KEY characters_separated_by_vertical_line_optionally
- Hunspell searches and suggests words with one different character replaced by a neighbor KEY character. Not neighbor characters in KEY string separated by vertical line characters. Suggested KEY parameters for QWERTY and Dvorak keyboard layouts:
-
KEY qwertyuiop|asdfghjkl|zxcvbnm KEY pyfgcrl|aeouidhtns|qjkxbmwvz
Using the first QWERTY layout, Hunspell suggests "nude" and "node" for "*nide". A character may have more neighbors, too:
-
KEY qwertzuop|yxcvbnm|qaw|say|wse|dsx|sy|edr|fdc|dx|rft|gfv|fc|tgz|hgb|gv|zhu|jhn|hb|uji|kjm|jn|iko|lkm
- TRY characters
- Hunspell can suggest right word forms, when they differ from the bad input word by one TRY character. The parameter of TRY is case sensitive.
- NOSUGGEST flag
- Words signed with NOSUGGEST flag are not suggested. Proposed flag for vulgar and obscene words (see also SUBSTANDARD).
- MAXNGRAMSUGS num
- Set number of n-gram suggestions. Value 0 switches off the n-gram suggestions.
- NOSPLITSUGS
- Disable split-word suggestions.
- SUGSWITHDOTS
- Add dot(s) to suggestions, if input word terminates in dot(s). (Not for OpenOffice.org dictionaries, because OpenOffice.org has an automatic dot expansion mechanism.)
- REP number_of_replacement_definitions
- REP what replacement
- We can define language-dependent phonetic information in the affix file (.aff) by a replacement table. First REP is the header of this table and one or more REP data line are following it. With this table, Hunspell can suggest the right forms for the typical faults of spelling when the incorrect form differs by more, than 1 letter from the right form. For example a possible English replacement table definition to handle misspelled consonants:
-
REP 8 REP f ph REP ph f REP f gh REP gh f REP j dg REP dg j REP k ch REP ch k
Note I: It's very useful to define replacements for the most typical one-character mistakes, too: with REP you can add higher priority to a subset of the TRY suggestions (suggestion list begins with the REP suggestions).
Note II: Suggesting separated words by REP, you can specify a space with an underline:
-
REP 1 REP alot a_lot
Note III: Replacement table can be used for a stricter compound word checking (forbidding generated compound words, if they are also simple words with typical fault, see CHECKCOMPOUNDREP).
- MAP number_of_map_definitions
- MAP string_of_related_chars
-
We can define language-dependent information on characters that
should be considered related (i.e. nearer than other chars not in the set)
in the affix file (.aff) by a character map table. With this
table, Hunspell can suggest the right forms for words, which
incorrectly choose the wrong letter from a related set more than once
in a word.
For example a possible mapping could be for the German umlauted ü versus the regular u; the word Frühstück really should be written with umlauted u's and not regular ones
-
MAP 1 MAP uü
- PHONE number_of_phone_definitions
- PHONE what replacement
- PHONE uses a table-driven phonetic transcription algorithm borrowed from Aspell. It is useful for languages with not pronunciation based orthography. You can add a full alphabet conversion and other rules for conversion of special letter sequences. For detailed documentation see http://aspell.net/man-html/Phonetic-Code.html. Note: Multibyte UTF-8 characters have not worked with bracket expression yet. Dash expression has signed bytes and not UTF-8 characters yet.
OPTIONS FOR COMPOUNDING
- BREAK number_of_break_definitions
- BREAK character_or_character_sequence
- Define new break points for breaking words and checking word parts separately. Use ^ and $ to delete characters at end and start of the word. Rationale: useful for compounding with joining character or strings (for example, hyphen in English and German or hyphen and n-dash in Hungarian). Dashes are often bad break points for tokenization, because compounds with dashes may contain not valid parts, too.) With BREAK, Hunspell can check both side of these compounds, breaking the words at dashes and n-dashes:
-
BREAK 2 BREAK - BREAK -- # n-dash
Breaking are recursive, so foo-bar, bar-foo and foo-foo--bar-bar would be valid compounds. Note: The default word break of Hunspell is equivalent of the following BREAK definition:
-
BREAK 3 BREAK - BREAK ^- BREAK -$
Hunspell doesn't accept the "-word" and "word-" forms by this BREAK definition:
-
BREAK 1 BREAK -
W Note II: COMPOUNDRULE is better (or will be better) for handling dashes and other compound joining characters or character strings. Use BREAK, if you want check words with dashes or other joining characters and there is no time or possibility to describe precise compound rules with COMPOUNDRULE (COMPOUNDRULE has handled only the last suffixation of the compound word yet).
Note III: For command line spell checking of words with extra characters, set WORDCHARS parameters: WORDCHARS --- (see tests/break.*) example
- COMPOUNDRULE number_of_compound_definitions
- COMPOUNDRULE compound_pattern
-
Define custom compound patterns with a regex-like syntax.
The first COMPOUNDRULE is a header with the number of the following
COMPOUNDRULE definitions. Compound patterns consist compound flags,
parentheses, star and question mark meta characters. A flag followed by a `*' matches
a word sequence of 0 or more matches of words signed with this compound flag.
A flag followed by a `?' matches a word sequence of
0 or 1 matches of a word signed with this compound flag.
See tests/compound*.* examples.
Note: en_US dictionary of OpenOffice.org uses COMPOUNDRULE for ordinal number recognition (1st, 2nd, 11th, 12th, 22nd, 112th, 1000122nd etc.).
Note II: In the case of long and numerical flag types use only parenthesized flags: (1500)*(2000)?
Note III: COMPOUNDRULE flags haven't been compatible with the COMPOUNDFLAG, COMPOUNDBEGIN, etc. compound flags yet (use these flags on different words).
- COMPOUNDMIN num
- Minimum length of words in compound words. Default value is 3 letters.
- COMPOUNDFLAG flag
- Words signed with COMPOUNDFLAG may be in compound words (except when word shorter than COMPOUNDMIN). Affixes with COMPOUNDFLAG also permits compounding of affixed words.
- COMPOUNDBEGIN flag
- Words signed with COMPOUNDBEGIN (or with a signed affix) may be first elements in compound words.
- COMPOUNDLAST flag
- Words signed with COMPOUNDLAST (or with a signed affix) may be last elements in compound words.
- COMPOUNDMIDDLE flag
- Words signed with COMPOUNDMIDDLE (or with a signed affix) may be middle elements in compound words.
- ONLYINCOMPOUND flag
- Suffixes signed with ONLYINCOMPOUND flag may be only inside of compounds (Fuge-elements in German, fogemorphemes in Swedish). ONLYINCOMPOUND flag works also with words (see tests/onlyincompound.*).
- COMPOUNDPERMITFLAG flag
- Prefixes are allowed at the beginning of compounds, suffixes are allowed at the end of compounds by default. Affixes with COMPOUNDPERMITFLAG may be inside of compounds.
- COMPOUNDFORBIDFLAG flag
- Suffixes with this flag forbid compounding of the affixed word.
- COMPOUNDROOT flag
- COMPOUNDROOT flag signs the compounds in the dictionary (Now it is used only in the Hungarian language specific code).
- COMPOUNDWORDMAX number
- Set maximum word count in a compound word. (Default is unlimited.)
- CHECKCOMPOUNDDUP
- Forbid word duplication in compounds (e.g. foofoo).
- CHECKCOMPOUNDREP
- Forbid compounding, if the (usually bad) compound word may be a non compound word with a REP fault. Useful for languages with `compound friendly' orthography.
- CHECKCOMPOUNDCASE
- Forbid upper case characters at word bound in compounds.
- CHECKCOMPOUNDTRIPLE
- Forbid compounding, if compound word contains triple repeating letters (e.g. foo|ox or xo|oof). Bug: missing multi-byte character support in UTF-8 encoding (works only for 7-bit ASCII characters).
- SIMPLIFIEDTRIPLE
- Allow simplified 2-letter forms of the compounds forbidden by CHECKCOMPOUNDTRIPLE. It's useful for Swedish and Norwegian (and for the old German orthography: Schiff|fahrt -> Schiffahrt).
- CHECKCOMPOUNDPATTERN number_of_checkcompoundpattern_definitions
- CHECKCOMPOUNDPATTERN endchars[/flag] beginchars[/flag] [replacement]
- Forbid compounding, if the first word in the compound ends with endchars, and next word begins with beginchars and (optionally) they have the requested flags. The optional replacement parameter allows simplified compound form. Note: COMPOUNDMIN doesn't work correctly with the compound word alternation, so it may need to set COMPOUNDMIN to lower value.
- COMPOUNDSYLLABLE max_syllable vowels
- Need for special compounding rules in Hungarian. First parameter is the maximum syllable number, that may be in a compound, if words in compounds are more than COMPOUNDWORDMAX. Second parameter is the list of vowels (for calculating syllables).
- SYLLABLENUM flags
- Need for special compounding rules in Hungarian.
OPTIONS FOR AFFIX CREATION
- PFX flag cross_product number
- PFX flag stripping prefix [condition [morphological_fields...]]
- SFX flag cross_product number
- SFX flag stripping suffix [condition [morphological_fields...]]
-
An affix is either a prefix or a suffix attached to root words to make
other words. We can define affix classes with arbitrary number affix rules.
Affix classes are signed with affix flags. The first line of an affix class definition
is the header. The fields of an affix class header:
(0) Option name (PFX or SFX)
(1) Flag (name of the affix class)
(2) Cross product (permission to combine prefixes and suffixes). Possible values: Y (yes) or N (no)
(3) Line count of the following rules.
Fields of an affix rules:
(0) Option name
(1) Flag
(2) stripping characters from beginning (at prefix rules) or end (at suffix rules) of the word
(3) affix (optionally with flags of continuation classes, separated by a slash)
(4) condition.
Zero stripping or affix are indicated by zero. Zero condition is indicated by dot. Condition is a simplified, regular expression-like pattern, which must be met before the affix can be applied. (Dot signs an arbitrary character. Characters in braces sign an arbitrary character from the character subset. Dash hasn't got special meaning, but circumflex (^) next the first brace sets the complementer character set.)
(5) Optional morphological fields separated by spaces or tabulators.
OTHER OPTIONS
- CIRCUMFIX flag
- Affixes signed with CIRCUMFIX flag may be on a word when this word also has a prefix with CIRCUMFIX flag and vice versa.
- FORBIDDENWORD flag
- This flag signs forbidden word form. Because affixed forms are also forbidden, we can subtract a subset from set of the accepted affixed and compound words.
- FULLSTRIP
-
With FULLSTRIP, affix rules can strip full words, not only one less characters.
Note: conditions may be word length without FULLSTRIP, too.
- KEEPCASE flag
-
Forbid uppercased and capitalized forms of words
signed with KEEPCASE flags. Useful for special orthographies
(measurements and currency often keep their case in uppercased
texts) and writing systems (e.g. keeping lower case of IPA characters).
Note: With CHECKSHARPS declaration, words with sharp s and KEEPCASE flag may be capitalized and uppercased, but uppercased forms of these words may not contain sharp s, only SS. See germancompounding example in the tests directory of the Hunspell distribution.
Note: Using lot of zero affixes may have a big cost, because every zero affix is checked under affix analysis before the other affixes.
- ICONV number_of_ICONV_definitions
- ICONV pattern pattern2
- Define input conversion table.
- OCONV number_of_OCONV_definitions
- OCONV pattern pattern2
- Define output conversion table.
- LEMMA_PRESENT flag
- Not used in Hunspell 1.2. Use "st:" field instead of LEMMA_PRESENT.
- NEEDAFFIX flag
- This flag signs virtual stems in the dictionary. Only affixed forms of these words will be accepted by Hunspell. Except, if the dictionary word has a homonym or a zero affix. NEEDAFFIX works also with prefixes and prefix + suffix combinations (see tests/pseudoroot5.*).
- PSEUDOROOT flag
- Deprecated. (Former name of the NEEDAFFIX option.)
- SUBSTANDARD flag
- SUBSTANDARD flag signs affix rules and dictionary words (allomorphs) not used in morphological generation (and in suggestion in the future versions). See also NOSUGGEST.
- WORDCHARS characters
- WORDCHARS extends tokenizer of Hunspell command line interface with additional word character. For example, dot, dash, n-dash, numbers, percent sign are word character in Hungarian.
- CHECKSHARPS
-
SS letter pair in uppercased (German) words may be upper case sharp s (ß).
Hunspell can handle this special casing with the CHECKSHARPS
declaration (see also KEEPCASE flag and tests/germancompounding example)
in both spelling and suggestion.
Morphological analysis
Hunspell's dictionary items and affix rules may have optional space or tabulator separated morphological description fields, started with 3-character (two letters and a colon) field IDs:
-
word/flags po:noun is:nom
Example: We define a simple resource with morphological informations, a derivative suffix (ds:) and a part of speech category (po:):
Affix file:
-
SFX X Y 1 SFX X 0 able . ds:able
Dictionary file:
-
drink/X po:verb
Test file:
-
drink drinkable
Test:
-
$ analyze test.aff test.dic test.txt > drink analyze(drink) = po:verb stem(drink) = po:verb > drinkable analyze(drinkable) = po:verb ds:able stem(drinkable) = drinkable
You can see in the example, that the analyzer concatenates the morphological fields in item and arrangement style.
Optional data fields
Default morphological and other IDs (used in suggestion, stemming and morphological generation):- ph:
-
Alternative transliteration for better suggestion.
It's useful for words with foreign
pronunciation. (Dictionary based phonetic suggestion.)
For example:
-
Marseille ph:maarsayl
- st:
- Stem. Optional: default stem is the dictionary item in morphological analysis. Stem field is useful for virtual stems (dictionary words with NEEDAFFIX flag) and morphological exceptions instead of new, single used morphological rules.
-
feet st:foot is:plural mice st:mouse is:plural teeth st:tooth is:plural
Word forms with multiple stems need multiple dictionary items:
-
lay po:verb st:lie is:past_2 lay po:verb is:present lay po:noun
- al:
- Allomorph(s). A dictionary item is the stem of its allomorphs. Morphological generation needs stem, allomorph and affix fields.
-
sing al:sang al:sung sang st:sing sung st:sing
- po:
- Part of speech category.
- ds:
-
Derivational suffix(es).
Stemming doesn't remove derivational suffixes.
Morphological generation depends on the order of the suffix fields.
In affix rules:
-
SFX Y Y 1 SFX Y 0 ly . ds:ly_adj
In the dictionary:
-
ably st:able ds:ly_adj able al:ably
- is:
-
Inflectional suffix(es).
All inflectional suffixes are removed by stemming.
Morphological generation depends on the order of the suffix fields.
-
feet st:foot is:plural
- ts:
-
Terminal suffix(es).
Terminal suffix fields are inflectional suffix fields
"removed" by additional (not terminal) suffixes.
Useful for zero morphemes and affixes removed by splitting rules.
-
work/D ts:present
-
SFX D Y 2 SFX D 0 ed . is:past_1 SFX D 0 ed . is:past_2
Typical example of the terminal suffix is the zero morpheme of the nominative case.
- sp:
-
Surface prefix. Temporary solution for adding prefixes to the
stems and generated word forms. See tests/morph.* example.
- pa:
- Parts of the compound words. Output fields of morphological analysis for stemming.
- dp:
- Planned: derivational prefix.
- ip:
- Planned: inflectional prefix.
- tp:
-
Planned: terminal prefix.
Twofold suffix stripping
Ispell's original algorithm strips only one suffix. Hunspell can strip another one yet (or a plus prefix in COMPLEXPREFIXES mode).
The twofold suffix stripping is a significant improvement in handling of immense number of suffixes, that characterize agglutinative languages.
A second `s' suffix (affix class Y) will be the continuation class of the suffix `able' in the following example:
-
SFX Y Y 1 SFX Y 0 s . SFX X Y 1 SFX X 0 able/Y .
Dictionary file:
-
drink/X
Test file:
-
drink drinkable drinkables
Test:
-
$ hunspell -m -d test <test.txt drink st:drink drinkable st:drink fl:X drinkables st:drink fl:X fl:Y
Theoretically with the twofold suffix stripping needs only the square root of the number of suffix rules, compared with a Hunspell implementation. In our practice, we could have elaborated the Hungarian inflectional morphology with twofold suffix stripping.
Extended affix classes
Hunspell can handle more than 65000 affix classes. There are three new syntax for giving flags in affix and dictionary files.
FLAG long command sets 2-character flags:
-
FLAG long SFX Y1 Y 1 SFX Y1 0 s 1
Dictionary record with the Y1, Z3, F? flags:
-
foo/Y1Z3F?
FLAG num command sets numerical flags separated by comma:
-
FLAG num SFX 65000 Y 1 SFX 65000 0 s 1
Dictionary example:
-
foo/65000,12,2756
The third one is the Unicode character flags.
Homonyms
Hunspell's dictionary can contain repeating elements that are homonyms:
-
work/A po:verb work/B po:noun
An affix file:
-
SFX A Y 1 SFX A 0 s . sf:sg3 SFX B Y 1 SFX B 0 s . is:plur
Test file:
-
works
Test:
-
$ hunspell -d test -m <testwords work st:work po:verb is:sg3 work st:work po:noun is:plur
This feature also gives a way to forbid illegal prefix/suffix combinations.
Prefix--suffix dependencies
An interesting side-effect of multi-step stripping is, that the appropriate treatment of circumfixes now comes for free. For instance, in Hungarian, superlatives are formed by simultaneous prefixation of leg- and suffixation of -bb to the adjective base. A problem with the one-level architecture is that there is no way to render lexical licensing of particular prefixes and suffixes interdependent, and therefore incorrect forms are recognized as valid, i.e. *legvén = leg + vén `old'. Until the introduction of clusters, a special treatment of the superlative had to be hardwired in the earlier HunSpell code. This may have been legitimate for a single case, but in fact prefix--suffix dependences are ubiquitous in category-changing derivational patterns (cf. English payable, non-payable but *non-pay or drinkable, undrinkable but *undrink). In simple words, here, the prefix un- is legitimate only if the base drink is suffixed with -able. If both these patters are handled by on-line affix rules and affix rules are checked against the base only, there is no way to express this dependency and the system will necessarily over- or undergenerate.
In next example, suffix class R have got a prefix `continuation' class (class P).
-
PFX P Y 1 PFX P 0 un . [prefix_un]+ SFX S Y 1 SFX S 0 s . +PL SFX Q Y 1 SFX Q 0 s . +3SGV SFX R Y 1 SFX R 0 able/PS . +DER_V_ADJ_ABLE
Dictionary:
-
2 drink/RQ [verb] drink/S [noun]
Morphological analysis:
-
> drink drink[verb] drink[noun] > drinks drink[verb]+3SGV drink[noun]+PL > drinkable drink[verb]+DER_V_ADJ_ABLE > drinkables drink[verb]+DER_V_ADJ_ABLE+PL > undrinkable [prefix_un]+drink[verb]+DER_V_ADJ_ABLE > undrinkables [prefix_un]+drink[verb]+DER_V_ADJ_ABLE+PL > undrink Unknown word. > undrinks Unknown word.
Circumfix
Conditional affixes implemented by a continuation class are not enough for circumfixes, because a circumfix is one affix in morphology. We also need CIRCUMFIX option for correct morphological analysis.
-
# circumfixes: ~ obligate prefix/suffix combinations # superlative in Hungarian: leg- (prefix) AND -bb (suffix) # nagy, nagyobb, legnagyobb, legeslegnagyobb # (great, greater, greatest, most greatest) CIRCUMFIX X PFX A Y 1 PFX A 0 leg/X . PFX B Y 1 PFX B 0 legesleg/X . SFX C Y 3 SFX C 0 obb . +COMPARATIVE SFX C 0 obb/AX . +SUPERLATIVE SFX C 0 obb/BX . +SUPERSUPERLATIVE
Dictionary:
-
1 nagy/C [MN]
Analysis:
-
> nagy nagy[MN] > nagyobb nagy[MN]+COMPARATIVE > legnagyobb nagy[MN]+SUPERLATIVE > legeslegnagyobb nagy[MN]+SUPERSUPERLATIVE
Compounds
Allowing free compounding yields decrease in precision of recognition, not to mention stemming and morphological analysis. Although lexical switches are introduced to license compounding of bases by Ispell, this proves not to be restrictive enough. For example:
-
# affix file COMPOUNDFLAG X
-
2 foo/X bar/X
With this resource, foobar and barfoo also are accepted words.
This has been improved upon with the introduction of direction-sensitive compounding, i.e., lexical features can specify separately whether a base can occur as leftmost or rightmost constituent in compounds. This, however, is still insufficient to handle the intricate patterns of compounding, not to mention idiosyncratic (and language specific) norms of hyphenation.
The Hunspell algorithm currently allows any affixed form of words, which are lexically marked as potential members of compounds. Hunspell improved this, and its recursive compound checking rules makes it possible to implement the intricate spelling conventions of Hungarian compounds. For example, using COMPOUNDWORDMAX, COMPOUNDSYLLABLE, COMPOUNDROOT, SYLLABLENUM options can be set the noteworthy Hungarian `6-3' rule. Further example in Hungarian, derivate suffixes often modify compounding properties. Hunspell allows the compounding flags on the affixes, and there are two special flags (COMPOUNDPERMITFLAG and (COMPOUNDFORBIDFLAG) to permit or prohibit compounding of the derivations.
Suffixes with this flag forbid compounding of the affixed word.
We also need several Hunspell features for handling German compounding:
-
# German compounding # set language to handle special casing of German sharp s LANG de_DE # compound flags COMPOUNDBEGIN U COMPOUNDMIDDLE V COMPOUNDEND W # Prefixes are allowed at the beginning of compounds, # suffixes are allowed at the end of compounds by default: # (prefix)?(root)+(affix)? # Affixes with COMPOUNDPERMITFLAG may be inside of compounds. COMPOUNDPERMITFLAG P # for German fogemorphemes (Fuge-element) # Hint: ONLYINCOMPOUND is not required everywhere, but the # checking will be a little faster with it. ONLYINCOMPOUND X # forbid uppercase characters at compound word bounds CHECKCOMPOUNDCASE # for handling Fuge-elements with dashes (Arbeits-) # dash will be a special word COMPOUNDMIN 1 WORDCHARS - # compound settings and fogemorpheme for `Arbeit' SFX A Y 3 SFX A 0 s/UPX . SFX A 0 s/VPDX . SFX A 0 0/WXD . SFX B Y 2 SFX B 0 0/UPX . SFX B 0 0/VWXDP . # a suffix for `Computer' SFX C Y 1 SFX C 0 n/WD . # for forbid exceptions (*Arbeitsnehmer) FORBIDDENWORD Z # dash prefix for compounds with dash (Arbeits-Computer) PFX - Y 1 PFX - 0 -/P . # decapitalizing prefix # circumfix for positioning in compounds PFX D Y 29 PFX D A a/PX A PFX D Ä ä/PX Ä . . PFX D Y y/PX Y PFX D Z z/PX Z
Example dictionary:
-
4 Arbeit/A- Computer/BC- -/W Arbeitsnehmer/Z
Accepted compound compound words with the previous resource:
-
Computer Computern Arbeit Arbeits- Computerarbeit Computerarbeits- Arbeitscomputer Arbeitscomputern Computerarbeitscomputer Computerarbeitscomputern Arbeitscomputerarbeit Computerarbeits-Computer Computerarbeits-Computern
Not accepted compoundings:
-
computer arbeit Arbeits arbeits ComputerArbeit ComputerArbeits Arbeitcomputer ArbeitsComputer Computerarbeitcomputer ComputerArbeitcomputer ComputerArbeitscomputer Arbeitscomputerarbeits Computerarbeits-computer Arbeitsnehmer
This solution is still not ideal, however, and will be replaced by a pattern-based compound-checking algorithm which is closely integrated with input buffer tokenization. Patterns describing compounds come as a separate input resource that can refer to high-level properties of constituent parts (e.g. the number of syllables, affix flags, and containment of hyphens). The patterns are matched against potential segmentations of compounds to assess wellformedness.
Unicode character encoding
Both Ispell and Myspell use 8-bit ASCII character encoding, which is a major deficiency when it comes to scalability. Although a language like Hungarian has a standard ASCII character set (ISO 8859-2), it fails to allow a full implementation of Hungarian orthographic conventions. For instance, the '--' symbol (n-dash) is missing from this character set contrary to the fact that it is not only the official symbol to delimit parenthetic clauses in the language, but it can be in compound words as a special 'big' hyphen.
MySpell has got some 8-bit encoding tables, but there are languages without standard 8-bit encoding, too. For example, a lot of African languages have non-latin or extended latin characters.
Similarly, using the original spelling of certain foreign names like Ångström or Molière is encouraged by the Hungarian spelling norm, and, since characters 'Å' and 'è' are not part of ISO 8859-2, when they combine with inflections containing characters only in ISO 8859-2 (like elative -ből, allative -től or delative -ről with double acute), these result in words (like Ångströmről or Molière-től.) that can not be encoded using any single ASCII encoding scheme.
The problems raised in relation to 8-bit ASCII encoding have long been recognized by proponents of Unicode. It is clear that trading efficiency for encoding-independence has its advantages when it comes a truly multi-lingual application. There is implemented a memory and time efficient Unicode handling in Hunspell. In non-UTF-8 character encodings Hunspell works with the original 8-bit strings. In UTF-8 encoding, affixes and words are stored in UTF-8, during the analysis are handled in mostly UTF-8, under condition checking and suggestion are converted to UTF-16. Unicode text analysis and spell checking have a minimal (0-20%) time overhead and minimal or reasonable memory overhead depends from the language (its UTF-8 encoding and affixation).
SEE ALSO
hunspell (1), ispell (1), ispell (4)
Index
- NAME
- DESCRIPTION
- GENERAL OPTIONS
- OPTIONS FOR SUGGESTION
- OPTIONS FOR COMPOUNDING
- OPTIONS FOR AFFIX CREATION
- OTHER OPTIONS
- Morphological analysis
- Optional data fields
- Twofold suffix stripping
- Extended affix classes
- Homonyms
- Prefix--suffix dependencies
- Circumfix
- Compounds
- Unicode character encoding
- SEE ALSO
This document was created by man2html, using the manual pages.
Time: 05:33:53 GMT, December 24, 2015


Donald A.. Schon
Also it would be great to get hold of a copy of either "Kinds of Seeing in Designing"Creativity and Innovation Management,Vol. 1, No. 2, June, 1992 or "Kinds of Seeing and their Functions in Designing"Volume 13, Issue 2, April 1992, Pages 135–156 with Glen Wiggins
Gero and Saunders summarise their thoughts..."Schön and Wiggins enumerated three kinds of seeing, literal apprehension of representations, apprehension of figures, and appreciative judgements of quality. To these different kinds of seeing they also added the
recognition of unintended consequences of design actions."


We're that "cool" vegan uncle who doesn't have kids and somehow makes a living repairing antique polaroid cameras, while drinking a $36 bottle of artisanal cold-brew.
Let's get started I guess...“ I never realised how uncool I was before. Hipstrify.io lovingly crafted me into shape, complete with a skin-fade, fresh denim & a moustache — not only were they late, but they were overbudget. Highly recommended! ” — A happy Client
Quinoa four loko paleo, banjo marfa raclette migas intelligentsia pok pok locavore kombucha gluten-free green juice beard sriracha.  Four dollar toast chillwave brooklyn XOXO, disrupt salvia pabst truffaut gochujang pok pok. Cronut wayfarers lumbersexual, man braid literally kale chips marfa live-edge yuccie post-ironic hashtag yr pitchfork. Venmo air plant pork belly heirloom activated charcoal. Godard brooklyn whatever, beard fingerstache keytar aesthetic williamsburg before they sold out. Squid fixie 8-bit fap, disrupt roof party twee occupy tousled microdosing pitchfork edison bulb post-ironic meditation kinfolk.
Quinoa four loko paleo, banjo marfa raclette migas intelligentsia pok pok locavore kombucha gluten-free green juice beard sriracha.  Four dollar toast chillwave brooklyn XOXO, disrupt salvia pabst truffaut gochujang pok pok. Cronut wayfarers lumbersexual, man braid literally kale chips marfa live-edge yuccie post-ironic hashtag yr pitchfork. Venmo air plant pork belly heirloom activated charcoal. Godard brooklyn whatever, beard fingerstache keytar aesthetic williamsburg before they sold out. Squid fixie 8-bit fap, disrupt roof party twee occupy tousled microdosing pitchfork edison bulb post-ironic meditation kinfolk.
Quinoa four loko paleo, banjo marfa raclette migas intelligentsia pok pok locavore kombucha gluten-free green juice beard sriracha.  Four dollar toast chillwave brooklyn XOXO, disrupt salvia pabst truffaut gochujang pok pok. Cronut wayfarers lumbersexual, man braid literally kale chips marfa live-edge yuccie post-ironic hashtag yr pitchfork. Venmo air plant pork belly heirloom activated charcoal. Godard brooklyn whatever, beard fingerstache keytar aesthetic williamsburg before they sold out. Squid fixie 8-bit fap, disrupt roof party twee occupy tousled microdosing pitchfork edison bulb post-ironic meditation kinfolk.
 We don't do email.


John Updike: In his Own Words
Interviewee: John Updike
Interviewer: Ronald G. Shafer
Executive Producer: Michael Fields
Producer: Gina Catanzanite
Coordinating Producer: Ronald G. Shafer (as Ronald Shafer)
Script Coordinators: Ronald G. Shafer (as Ronal Shafer) and Jonathan Alexander
Post Production Audio: Bob Millslagle and Dennis Williams
Post Production Editors: Paul Byers and Kevin Conrad
As Reviewed by James Brundage
Routinely I am asked to speculate on the nature of things. Perhaps that is what the critic's role is, to be a traveling ponderer of other's works. Recently, I have been asked by the existence of John Updike: In His Own Words to ponder the nature of the documentary. I stated in a review of another documentary that my friend Ronald Shafer worked on that the point of a documentary may be to inform, but a point of human nature is to entertain oneself when possible. I revoke that statement, or, rather, I modify it. The idea of a documentary is the dispensing of information but in a format that will engage all viewers, bring them into the process.
By that definition, John Updike: In His Own Words fails as a documentary.
Although it is highly informative, the film feels more like an extended interview than an bunch of information presented in an interesting manner. The difference is likeable to that of a resume and a biography.
John Updike: In His Own Words is highly fascinating for a writer such as myself to watch, and most likely highly fascinating to a reader of Updike. However, over my years in this business, I have learned to think in terms of other demographics... and other demographics will not find this film interesting. This is a piece of academia, of pure esoteric documentary filmmaking. It has no soul or personality, only bits of information to hand out.
Although academics will tend towards academia, and almost all of us enjoy academia in our own field, academia does not have much application in the documentary filmmaking world... a world that works off of broader appeal.
John Updike: In His Own Words is a film that can only be measured as enjoyable or unenjoyable based upon a benchmark of discussion. People that find pure dialogue enjoyable will most likely enjoy the documentary, as will people that find Updike a person worth listening to. However, due to the fact that the film is cut in such a way as to focus exclusively on Updike (only a few times does anyone else's voice pop up), you have the feeling of almost experiencing idolatry while watching the movie. From the shots of the highly attentive crowd to the incredible esteem that the only other person in the movie's voice holds while talking of John Updike, the author of such books as Rabbit Run, The Coup, and The Witches of Eastwick, you have the feeling that these people worship this man, despite the man obviously not worshiping himself.
Like many films that fall into the "documentary trap" (this was the first film that my friend participated in), it feels more like watching My Dinner with Andre then getting any actual information out of it. As much of a friend as I am to Ronald G. Shafer, I cannot recommend his first film to the broad band audience. I recommend it to people who do worship Updike, or who worship the written word (as I do, I found the film fascinating), but I cannot recommend it to the Joe Schmoe. It just wouldn't be fair.
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


Hash Algorithms - This scenario demonstrates how to use the Hash algorithms that are included in WinRT for the various suported hashing algorithms.


Better professor
Deadline Management App
Home
About
Reviews
Our Team
Never miss another
deadline again!
Better Professor is an easy-to-use deadline management app that allows you to set custom reminders for yourself and your students


<EMAIL_ADDRESS>Summary
2021 University of Washington Geography with Data Science major with minor in Diversity. Interested in social impact data and mapping projects.
Projects
* Digital Tour Guide
* Coffee Mania Mobile App
* Digital Archive: Digital Democracy
* Risk Zones in King County Map
* Breast Cancer Mortality by Ethnicity
* Hawaii Hazard Zones Map
* Carbon Footprint Maps
* Amazon Deforestation Map
Course Work
* Geography of the Developing World
* Geography of Immigration
* Race, Nature, Power
* GIS & Mapping
* Geography of Inequality
* Digital Geographies
* GIS Database and Programming
Key Skills
Programming
* JavaScript
* R
* Python
* MATLAB
Applications
* ArcGIS
* Fulcrum
* Scalar
* Microsoft Office
* ArcMap
* QGIS


Sales Department
Name: Abdul
Position:
Sales Director
Phone: 555-5551
Name: David
Position:
Sales Associate
Phone: 555-5552
Service Department
Name: Angie
Position:
Service Director
Phone: 555-5553
Name: Matt
Position:
Service Advisor
Phone: 555-5554
Parts Department
Name: Chris
Position:
Parts Director
Phone: 555-5555
Name: Sean
Position:
Parts Associate
Phone: 555-5556
Name: Jim
Position:
Parts Associate
Phone: 555-5557
Finance Department
Name: Debbie
Position:
Finance Director
Phone: 555-5558


04/20/20
3


Please do get in touch if you'd like me to speak at your event.
Participatory design was the focus of a talk I gave at the NHS England Digital Development. They asked me to share my thoughts on co-designing services with users, in particular my experience working with vulnerable communities, and specifically building Elefriends .
I spoke at the 2017 #notwestminster event in Huddersfield about what happened when "a bunch of geek volunteers got together to try and do something good" in the face of the refugee crisis.
Lean Startup Manchester asked me to speak about how to deliver more successful agency projects with smaller budgets.


This little website here is dedicated to the documentation of Linux containers. As mentioned elsewhere, in a sense there
are no containers per se, but Linux kernel features such as namespaces and cgroups that are
bundled and used in different ways to provide an abstraction we call container
. Examples of
this bundling are Docker, CoreOS appc, OCI runc,
Canonical LXC/LXD, and OpenVZ.
Terminology
Conceptually, a Linux container is made up of three things:
- namespaces for providing compute isolation
- cgroups for resource consumption throttling and resource consumption accounting
- copy-on-write filesystems for state
A container's core is a process (group). The ER diagram for namespaces, cgroups and process (groups) looks as follows:
Read above ER diagram as: a process (group) can be in one or more namespaces and can be controlled by one or more cgroups
Linux namespaces
- Mount/
CLONE_NEWNS
(since Linux 2.4.19) via/proc/$PID/mounts
: filesystem mount points - UTS/
CLONE_NEWUTS
(since Linux 2.6.19) viauname -n
,hostname -f
: nodename/hostname and (NIS) domain name - IPC/
CLONE_NEWIPC
(since Linux 2.6.19) via/proc/sys/fs/mqueue
,/proc/sys/kernel
,/proc/sysvipc
: interprocess communication resource isolation: System V IPC objects, POSIX message queues - PID/
CLONE_NEWPID
(since Linux 2.6.24) via/proc/$PID/status
: process ID number space isolation: PID inside/PID outside the namespace; PID namespaces can be nested - Network/
CLONE_NEWNET
(completed in Linux 2.6.29) viaip netns list
,/proc/net
,/sys/class/net
: network system resources: network devices, IP addresses, IP routing tables, port numbers, etc. - User/
CLONE_NEWUSER
(completed in Linux 3.8) viaid
,/proc/$PID/uid_map
,/proc/$PID/gid_map
: user and group ID number space isolation. UID+GIDs inside/outside the namespace - Cgroup/
CLONE_NEWCGROUP
(since Linux 4.6) via/sys/fs/cgroup/
,/proc/cgroups
,/proc/$PID/cgroup
: cgroups
Linux cgroups
- cpu/
CONFIG_CGROUP_SCHED
(since Linux 2.6.24) - cpuacct/
CONFIG_CGROUP_CPUACCT
(since Linux 2.6.24) - cpuset/
CONFIG_CPUSETS
(since Linux 2.6.24) - memory/
CONFIG_MEMCG
(since Linux 2.6.25) - devices/
CONFIG_CGROUP_DEVICE
(since Linux 2.6.26) - freezer/
CONFIG_CGROUP_FREEZER
(since Linux 2.6.28) - net_cls/
CONFIG_CGROUP_NET_CLASSID
(since Linux 2.6.29) - blkio/
CONFIG_BLK_CGROUP
(since Linux 2.6.33) - perf_event/
CONFIG_CGROUP_PERF
(since Linux 2.6.39) - net_prio/
CONFIG_CGROUP_NET_PRIO
(since Linux 3.3) - hugetlb/
CONFIG_CGROUP_HUGETLB
(since Linux 3.5) - pids/
CONFIG_CGROUP_PIDS
(since Linux 4.3)
COW filesystems
- AUFS
- btrfs
- Overlay Filesystem
- Unionfs
- ZFS on Linux
Tooling
namespaces and cgroups
- cinf
- nsenter
- unshare
- man lsns (also: announcement lsns)
- systemd-cgtop
- cgroup-utils
- yadutaf/ctop
See also …
namespaces and cgroups
- The Unofficial Linux Perf Events Web-Page
- Netdev 1.1 - Namespaces and CGroups, the basis of Linux containers, Rami Rosen, video (2016)
- Hands on Linux sandbox with namespaces and cgroups, Tristan Cacqueray (2015)
- Namespaces in operation part 2: the namespaces API, Michael Kerrisk (2013)
- Namespaces in operation part 1: namespaces overview, Michael Kerrisk (2013)
- Resource management: Linux kernel Namespaces and cgroups, Rami Rosen (2013)
- The Linux Programming Interface, Michael Kerrisk (2010)
filesystems
- Docker storage drivers, Docker docs
- Deep dive into Docker storage drivers, Jérôme Petazzoni (2015)
- THE /proc FILESYSTEM, Terrehon Bowden et al (1999 - 2009)
- Unioning file systems: Architecture, features, and design choices, Valerie Aurora, (2009)
- Copy-On-Write 101 – Part 1: What Is It?, Ville Laurikari, (2009)


The matter of this week is related with Computer-Controlled Cutting.
I think it is a powerful tool in order to build 3D models using 2D pieces. The process is not fairly direct and it requires interesting ways of approaching the issue.
Objectives:
-Cut something on the Vinyl-cutter
-Design, make, and document a parametric press-fit construction kit
VINYL-CUTTER
The first assignment for the week was to make something with the Vinyl Cutter Machine, I decided to cut my logo.
I used 2 programs for preparing the file, first I made the vector in Illustrator, but for some reason I couldn't open the file in the machine's program, it wasn't recognized in any of the formats I've tried.
How to MAKE it
At the FabLab Aldeias do Xisto we have a Roland G40
Process:
I used for preparing the file, first I made the vector in Illustrator
I used the Cutstudio to open the file from Illustrator in order to cut the black vinyl in the Roland cutter Machine
The production process
And I used gray vinyl, and the Roland Vinyl Cutter to make this task
The application process
And this is the final result!
The second project of the week was to design and prototype an object using laser cutting.
LASER CUTTING
This kind of matter are quite common for me and I feel comfortable enough with it.
How to MAKE it
At the FabLab Aldeias do Xisto we have a Spirit GLS 80Watt Laser. The machine has a work space of 900mm x 600mm.
First step, test tolerance.
I made a press-fit test kit. I did it in Corel draw
and Illustrator
Group Assignment
We started this assignment by searching some works done in pressfit, and we found some usefull links,did some tests and found a few pressfit pictures in the web that we started do draw in illustrator. We used 3mm plywood for this tests. We couldn't find good cardboard.
Drawing the group assignment
Lasercutting the pieces on our Spirit GLS
In the end, Each of us focused on one specific joint
aaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaa


(Privacy Policy and Summary)
Enacted on April 1, 2005
Revised on April 1, 2010
Toshiaki Higashihara
President & CEO
Hitachi, Ltd.
Hitachi, Ltd. (hereinafter referred to as "Hitachi") handles various information, including our technical information and information provided by customers, as a global supplier who can provide total solution. With this in mind, Hitachi has strived to establish and fully enforce an information management system in order to respect the value of the said information.
Considering such background, Hitachi will attempt to create rules and establish a management system for the personal information protection in Hitachi, as well as to set a privacy policy and spread it among board members and employees. Moreover, Hitachi will take measures to make the privacy policy easily accessible to general public.
Hitachi will strive to protect personal information appropriately based on this policy.
Hitachi will make sure that executive staff and workers recognize the importance of personal information protection, and will establish rules for personal information management to appropriately use and protect personal information and ensure that the management system is put in execution. These rules will be maintained and improved continually.
While carefully considering the personal information is entrusted to us in our company activities, Hitachi will handle such information appropriately by establishing a management system for personal information protection for each type of business, and also by following our rules for collecting, using or providing personal information. In addition, Hitachi will not use such information for purposes other than the original intent and will implement appropriate measures for it.
To ensure the correctness and safety of personal information, in accordance with the rules for information security, Hitachi will implement various measures such as managing access to personal information, restricting the means for transporting personal information outside the company and preventing incorrect access from outside the company, and strive to prevent the leakage, loss or destruction of personal information. In addition, when any problems regarding safety measures are found, Hitachi will identify the cause to take corrective measures.
Hitachi will follow the Japanese laws, guidelines and other norms for the handling of personal information. Also, Hitachi will conform our rules with personal information management to such laws, guidelines and other norms.
When a person makes a request to disclose, correct or delete his or her own personal information, seeks to prevent the use or provision of such information, or gives any complaints or requires consultation, Hitachi will respond with sincerity, respecting the person's rights related to that personal information.
Hitachi is granted the use of Privacy Mark, which is given by the Japan Institute for Promotion of Digital Economy and Community (JIPDEC) to organizations that properly handle personal information.
This document, "About Personal Information Protection", establishes the handling of all personal information by Hitachi in the company activities.
Hitachi protects and manages the personal information by establishing a manager on a department basis with the greatest care and the best effort based on the "Hitachi Privacy Policy". In this document, "Personal information" is the information below that can be used to identify specific persons.
When a person wants to request to disclose, correct, add, delete, stop usage, stop provision to a third party, or notify the purpose of usage of his/her personal information (hereinafter referred to as "disclose and so on") held by Hitachi, or wants to raise complaints, the person is requested to follow the predefined procedures to make such request.
For inquiries about this document except the request to disclose and so on of personal information and the raising complaints, please contact us in the following way.


--- layout: archive title: Zulip Chat Archive permalink: /stream/113489-new-members/topic/working.20with.20sets.html ---
If I define a reduced residue class as follows:
def reduced_residue_class (n: nat):={ k : nat | k < n \and k.coprime n }
is there a way to get the size of this set?
also I would like to get the product of all elements in the set
Well.... Lean doesn't know yet that the set is finite...
Even though it's obvious.
This might be one reason to choose
def rsc (n : nat) : finset nat := (finset.range n).filter $ assume k, k.coprime n
Then you can talk about finset.card _
afterwards
is there any way around this? maybe by adding an assumption that says its finite?
is there any way around this? maybe by adding an assumption that says its finite?
ok thanks
can I get the product of all elements in this set somehow?
also
lemma mem_rsc (n k : nat) : k \in rsc n \iff (k < n \and k.coprime n) := sorry
With the finset definition, the product is also easier.
def prod_rsc (n) : nat := (rsc n).prod id
what do I have to import for finset and prod?
You can't take the product until you define the multiplication.
Brian Jiang said:
what do I have to import for finset and prod?
algebra.big_operators
@Kevin Buzzard : How may I define this multiplication?
also, would it be possible to define another set that has all the values of rsc n
scaled by a factor of a?
Well you can do regular multiplication and then reduce mod n -- but then you have to prove that the result is coprime to n. If you want to roll your own then you will have to do work before you can even start multiplying.
If you want to learn how to prove theorems in Lean than you could try working on the natural number game.
{% endraw %}Last updated: Apr 24 2020 at 19:02 UTC


A jQuery plugin for displaying Bootstrap alerts via jQuery events.
<div data-alerts="alerts" data-titles='{"warning": "Warning!", "error": "Error!"}' data-ids="myid" data-fade="3000">
 <button id="warn-me" class="btn">Click to see a warning alert</button>
Priority: error/danger, warning, info/notice, success
Enable binding of an element via JavaScript:
$("#example").bsAlerts({"titles": {"warning": "Warning!"}});
Just add data-alerts="alerts"
to your element to bind automatically.

| Name | type | default | description |
|---|---|---|---|
| titles | object | {} | Optional title for each priority: error, warning, info, success |
| ids | string | '' | Comma separated list of alert ids to listen for. In addition to the standard events, events in the form 'set-alert-id-{alert_id}' will also be listened for. Works with jQuery-bsFormAlerts. |
| fade | integer | 0 | If set to an integer greater than 0, the alerts will be faded out and removed after the given number of milliseconds. |
| usebullets | boolean | true | If set to false, messages of a given priority will be wrapped in paragraph tags (default is an unordered list), and separate each message of a given priority added by two line break tags (default wraps each in list item tags). |
The bound element will listen for an add event that will send the alert data as an object. You can also pass an array of alerts, with any priority, and they will all be displayed in their respective color.
// send an error alert $(document).trigger("add-alerts", { message: "This is an error", priority: "error" });
// send an array of alerts $(document).trigger("add-alerts", [ { message: "This is an error", priority: "error" }, { message: "This is a warning", priority: "warning" }, { message: "This is success", priority: "success" } ]);
The bound element will listen for a clear event that will clear the alerts.
// clear all alerts $(document).trigger("clear-alerts");
The bound element will also listen for a set event with an id, if configured to do so. See ids in the Options above.
// send an alert with id='myid' $(document).trigger("set-alert-id-myid", { message: "Please enter at least 3 characters", priority: "error" });


Hello all! This is my first blog ever and I am excited and nervous about writing to everyone. Excited because I get to share with everyone my knowledge and energy, but nervous because writing is not my strong suit. Thats okay, this is a journey for us all and lets have some fun! Today I am going to touch on a couple subjects here and see if I can explain something in beginner terms to beginners, because I am just learning myself. I wanted to briefly explain version control and what it can do for you. Version control in it's simpliest nature is how one can track changes to their work overtime. That's it! Simple huh?
One of the tools for version control is git. I have found git to be relatively easy to learn, even though I know very little git, compared to other activities in my life. I have found that git allows me to work on something, say this blog, save it in the meantime and come back to it later. Once I add this to git and commit it for tracking I know it is safe until I come back. Git is also fun in the command line because I know I am changing the nature of my file when it changes the color of the text. For example, when I git status: my file shows green telling me to add it. Then when I add it or commit it the text will turn yellow. It's a little added sugar on top, I suppose. I'm sure I can change the color in bash to whatever I want, but at this point I'm not sure how. I will get back to you when I do know!.
Next on the list is storing all of our new found information from git onto a remote site so we can access it anywhere, and that place is GitHub. GitHub has this massive community that can help you with a project/s. That's what it's there for! The open source community there is one of the largest if not the largest around. GitHub was, for some reason, really hard for me to grasp at first but working with it for a few days now and I'm learning its not too bad. I am still working on it and will learn it better, but until then I'm just having fun. GitHub is very user friendly, it has big green buttons so you know where to go if you're pulling or merging a request! It's just a good place to store code because its quick to learn and the community there is awesome!! Well for now I must get ready for work so I will talk to you all again real soon!


A modern cross-platform JavaScript library & only 18 bytes
...or just 10 bytes minified
$.getElementById("demo1").addEventListener('click', function(){
alert('click');
});
console.log("Height: "+$.body.clientHeight);
console.log("Width: "+$.body.clientWidth);
More examples and documentation can be found here.
Sure... I built diy.js because I wanted the flexibility to do anything but without the expensive weight of other JavaScript libraries.
I've been developing diy.js for three years, about nine months of this was ensuring that diy.js was fully browser tested.
Testing is vital when you are running in many different environments. Thats why diy.js has 100% test coverage check it out.
It's right here — have fun.


{{newestStory.description}}
{{story.description}}
{{story.rank}} camper(s) like this story
Discuss
View


Additional information on the process to participate in Bio-Bridge Initiative as a provider of an opportunity will be made available soon. In the interim register below.


Business Intelligence
Case
Establish a common data warehouse and a set of financial KPIs across the organization for DAMCO.
The Benefits
Give users an overview and make the decision data-driven. Compare the performance of business units using a fact-based process.
The Challenges
Create a common semantic layer from a variety of data sources.
Technology
Microsoft SQL Manager
Microsoft SSIS
Microsoft SSAS
Microsoft SSIS


Colors Play with the colors! Pick one: Header Orange Off-White Blue Lime Green Aquamarine Gray Light Steel Blue Light Gray Tan Red Orange Yellow Gold White Body Orange Off-White Blue Lime Green Aquamarine Gray Light Steel Blue Light Gray Tan Red Orange Yellow Gold White Or randomize:


Avoid accessing or modifying security configuration objects.
Bean classes should not access or modify security configuration objects for security reasons.
REFERENCE
Enterprise JavaBeans Programming restrictions on EJB
by Sanjay Mahapatra -- JavaWorld August 2000


{% extends 'layout.html' %} {% block row_fluid %}
What you were looking for has been disabled by the administrator.


Open science ecosytsem
rOpenSci Software Review
Completely open source tools
Free to run
All reviews/conversations in the open
Reviews are/can be linked to code changes
Paired with submission to a journal - JOSS
Software Review: Rising Tide Raises All Boats
People really like software review
create a new repository
lay out rules/fit/etc.
have conversations
happier code
happier people


Our image classifier will predict whether or not your sample is damaged
"Select" an image and press "Predict" to view its result
Our image classifier will predict whether or not your sample is damaged
"Select" an image and press "Predict" to view its result


<EMAIL_ADDRESS>{{_ng_error}}
<EMAIL_ADDRESS>The next list reflected a list of dependencies of the plugin. If plugin depends on not many libraries/modules it will be able to work on many versions of a chipmunk.
| {{dependency.name}} | {{dependency.description}} | {{dependency.depended ? 'true' : '-'}} |


Colin Broderick, Dave Corley & Mark Whelan
http://github.com/maplesotho
#MapLesotho
Introduction - tell us about yourself
Briefing by the boss man (DeBigC)
House rules for the week
What we plan to do for this week
Your Name
First time you used OSM
Your District?
Something about it?
Your experiences using OSM so far?
Start Time @ 09h00 sharp.
Don't be late or we start without you.
Finish at 17h00 sharp....
Introductions
Set plan for the week
Reflection on LAP planning in Ireland
Installation check of software
QGIS Crashcourse
Projections in use in Lesotho
Exam
OSMose/KeepRight for 30 mins at the start of each day
Get set up with posm database
Make your first map
Demo and use of ML Analysis tool
Training of APPs from Berea + TT + Maseru District & City
Exam
OSMose for 30 mins at the start of each day
Knowing your data what are the limits
using tiled aerial imagery for our two study areas
Got LAA data we can overlay?
Exam
OSMose/KeepRight for 30 mins at the start of each day
Map layouts - let's make sexy ones.
What do I need in my planning report?
Exam
OSMose/KeepRight for 30 mins at the start of each day
The big EXAM
Semonkong
Motsekuoa
SSID: POSM
PASS: awesomeposm
http://github.com/entsoe-tso
http://github.com/rustyb
@rusty1052


Resources
Conference of the Parties (COP) documents on BBI:
COP 12
Decision XII/2B:
Review of progress in providing support in implementing the objectives of the Convention and the Strategic Plan for Biodiversity 2011-2020, and enhancement of capacity-building, technical and scientific cooperation and other initiatives
to assist implementation
UNEP/CBD/COP/12/INF/33:
“Bio-Bridge” An Initiative of the Republic of Korea In Support of the Convention’s Work on Technical and Scientific Cooperation
COP 13
UNEP/CBD/COP/13/INF/21:
Bio-Bridge Initiative Action Plan 2017-2020 and Report on Progress towards the Implementation of the Initiative
UNEP/CBD/COP/13/INF/22:
Stocktaking Summary of the Technical and Scientific Cooperation Needs of Parties, Previous Work Carried Out under the Convention and Initiatives Relevant to the Bio-Bridge Initiative
Subsidiary Body on Impmentation (SBI) documents on BBI:
SBI 1
UNEP/CBD/SBI/1/INF/19:
Progress towards the Implementation of the Bio-Bridge Initiative
UNEP/CBD/SBI/1/6:
Capacity-building, technical and scientific cooperation, technology transfer and the clearing-house mechanism
UNEP/CBD/SBI/1/6/ADD1:
Short-term action plan (2017-2020) to enhance and support capacity-building and technical and scientific cooperation for the implementation of the Strategic Plan for Biodiversity 2011-2020
Notifications on BBI:
2016
Notification 2016-097:
Invitation to submit comments on the draft Action Plan for the Bio-Bridge Initiative 2017-2020
Notification 2016-126:
Call for Requests for Assistance under the Bio-Bridge Initiative
Notification 2016-120:
Third Science for Biodiversity Forum, 1 - 2 December 2016, Cancun, Mexico
Bio-Bridge Initiative Action Plan 2017-2020
Action Plan 2017-2020
Invitation to submit comments on the draft Action Plan for the Bio-Bridge Initiative 2017-2020


The towns of Rapallo and Santa Margherita are both worth a stop. Santa Margherita being chic and fashionable, but still retaining its unspoilt charm. Rapallo is more bustling with its shops, restaurants and entertainment.
Clearance
Customs
Tel:+39 07 87 77 05 15
Docking
Porto Communale di Rapallo
Capo I Ferrari
, 16035 Rapallo
Tel:+39 (0)185 50583
Water, electricity, WCs and laundry. Maximum length 12 metres.


Magnolia ****
Rated on a 4-star scale Screening venue: Warner Village (Birkenhead Conway Park) Released in the UK by Entertainment Film Distributors on 24 March, 2000; certificate 18; 179 minutes; country of origin USA; aspect ratio 2.35:1
Directed by Paul Thomas Anderson; produced by Joanne Sellar. Written by Paul Thomas Anderson. Photographed by Robert Elswit; edited by Dylan Tichenor.
CAST..... Jason Robards..... Earl Partridge Julianne Moore..... Linda Partridge Tom Cruise..... Frank Mackey Philip Seymour Hoffman..... Phil Parma John C. Reilly..... Officer Kurring Melora Walters..... Claudia Gator Jeremy Blackman..... Stanley Spector Michael Bowen..... Rick Spector William H. Macy..... Donnie Smith Philip Baker Hall..... Jimmy Gator Melinda Dillon..... Rose Gator April Grace.....  They may not mean to, but they do. They fill you with the faults they had and add some extra, just for you." --Philip Larkin, "This be the Verse"
"If you refuse to let them go, behold, I will plague all your country." --Exodus, Chapter 8 Verse 2
Both these quotes have meaning in relation to "Magnolia", a film of bold dramatic strokes from which the sins of fathers, sons and lovers come pouring onto the audience in a torrent of stifling intensity. In most scenes it is raining. By the end of the movie, this water will stop, to make way for a biblical plague.
Because the film is a tapestry of pathetic Los Angeles lives, epic in length and emotion, we could compare it to Robert Altman's "Short Cuts" (1993). But the work, by "Boogie Nights" creator Paul Thomas Anderson, is not that distant or darkly comic; it's a penetrating tragedy comprised of painful, sweaty close-ups. Jason Robards and Philip Baker Hall both play influential showbiz players at different stages in terminal cancer, who want to repent for being lousy husbands and parents. Robards's son is Frank TJ Mackey (Tom Cruise), a self-help guru who feigns confidence to give dangerous single men lectures on how to be effective misogynists. Hall's daughter, played by Melora Walters, is less skilled at masking her emotional scars.
Robards produces and Hall presents a television game show entitled "What Do Kids Know?" One former star contestant, Donnie Smith (William H. Macy), has grown up into a dangerously insecure loser after being mistreated by his parents. A current one, Stanley Spector (Jeremy Blackman), looks like a candidate for the same path.
Around these characters are good people who understand the pain and want to help. John C. Reilly's widower cop will love and listen to Walters and Macy. Philip Seymour Hoffman, as Robards's nurse, may not succeed in reconciling the old man with anyone, but he can pray for and forgive him. Julianne Moore is like a one-woman Greek chorus representing everyone else in the cast; her character's role in the story is inconsequential, and her job is to bookend the scenes of others with tense looks, strained eyes and frantic breath. Like the film's constantly climactic music, she appears to be waiting for everything to come to a devastating halt.
Somehow hope and redemption shine through the film's closing moments, but even without it, "Magnolia" is compelling, not depressing, because Anderson moulds the material into a dreamlike flow. His camera spins and jolts with the freedom of the imagination, and transitions between situations are connected by audio-visual motifs. In one shot a pack of Camels sits on a bedside table. Cut to a pharmacy whose shelves are filled by nicotine replacement therapies. Bizet's "Carmen" is mentioned among one set of characters, and when we meet up with the next, an aria from the opera is blaring on the sound track.
Many contemporary films deal with loneliness, bitterness and despair -- "Short Cuts", "American Beauty" and "Happiness" are among the most acclaimed. "Magnolia" is better than all of them because its confidence and passion is so much louder.  But I don't go to the movies to feel unmoved.
COPYRIGHT(c) 2000 Ian Waldron-Mantgani
Please visit, and encourage others to visit, the UK Critic's website, which is located at http://members.aol.com/ukcritic
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


--- layout: default title: Digicam Print Channel ---
The Digicam Print Channel was a Japan-exclusive Channel that let you take pictures from the Photo Channel and order products like photo albums and business cards with them. Nintendo partnered with Fujifilm to make this happen.


| Html | Css | javascript | Php |
|---|---|---|---|
| E.E. Cummings | Tulips & Chimneys | $2,000.00 | $2,642.50 |
| Charles d'Orleans | Poemes | $5,866.00 | |
| T.S. Eliot | Poems 1909 - 1925 | $1,250.00 | $8,499.35 |
| Sylvia Plath | The Colossus | $1031.72 |
There are around 10,000 living species of birds that inhabit different ecosystems from the Arctic to the Antarctic. Many species undertake long distance annual migrations, and many more perform shorter irregular journeys.
The biggest way for me to stay motivated is think of a program that intrigues you but is just out of reach of your abilities. Do a step ladder of difficult programs that engage you. My best example, the one that really got me going, was my messages app. I knew python basics, but not enough to write anything significant. So I thought of something: an app that would query a website to check the status of something, and then send me a SMS based upon the result. From that, I had to learn how to interact with websites using JSON, and SMTP libraries for python. After I reached that goal, I actually just kept building on it. Now I wanted a GUI, so I learned a framework. I wanted to be able to interact with it via text message, so I learned IMAP libraries and parsing. I wanted a history of queries, so I learned to use a really simple database. I wanted to learn how to run it in the background, so I learned about services etc. Find a project that interests you that you can't do... and do it. line by line. Make it messy if you don't know where to start, and patch it up and streamline it later.
more about me? please.....
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
please, leave us a message below.


--- layout: post title: HTTP Splitting date: 2010-12-14 02:15:29.000000000 -08:00 categories: [] tags: - security status: publish type: post published: true ---
Tonight I am trying to install WebScarab so I can complete the webgoat tutorials (at least some of them).
I have to back track and install java on my laptop to run the installer (java jdk - web scarab - web goat is the stack so far).
I'd like to work through WebGoat and get to SQL injection attacks - I'd like to be able to see what that looks like, basically because this xkcd comic is hilarious: http://xkcd.com/327/.
Ack: webgoat died in java 6 with this exception from the installer:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at com.izforge.izpack.panels.ShortcutPanel.isValidated(ShortcutPanel.jav a:575) at com.izforge.izpack.installer.InstallerFrame.navigateNext(InstallerFra me.java:914) at com.izforge.izpack.installer.InstallerFrame$NavigationHandler.actionP erformed(InstallerFrame.java:957)
Easily solved - simply go to \Prgram Files\WebScarab and launch the webscarab.jar by hand - the only thing this stops is the shortcuts being created. So now I'm wondering about the wisdom of going with Java 6 AWT with this tool that is from 2007, but I'll give it a go.
Now I am running WebScarab, I decided to also install Wireshark to have around. Already had Firebug installed too.
So I just tested and webscarab appears to be working. It appears to be nicer than tcpmon from axis. I'm going to try it out - editing a request on-the-fly seems like a nice feature for debugging issues.
Okay, so I am just working through the HTTP splitting attack - this is using carriage return and line feeds to inject fake responses.
This can obviously be avoided by filtering input characters to exclude control characters. An important concern for internationalization.
I think the key idea is to fool the browser into doing a 302 redirect with a parameter that can contain an encoded line feed and "HTTP/1.1 200 OK" header. When the server writes out the Location: header for the redirect, we end up simulating a 200 OK on a new line. The browser interprets this as a second response and you can inject whatever content you like - add an accurate content-length and the browser renders it and whats more stops at the end of your content.
Example: (see also http://www.securiteam.com/securityreviews/5WP0E2KFGK.html):
someparameterval Content-Length: 0 HTTP/1.1 200 OK Content-Type: text/html Content-Length: 21 Hacked
One arranges for a 302 to happen where a parameter has a value like:
someparameterval%0d%0aContent-Length:%200%0d%0a%0d%0aHTTP/1.1%20200%20OK%0d%0aContent-Type:%20text/html%0d%0aContent-Length:%2022%0d%0a%0d%0aHacked
This ends up rendering a response like:
HTTP/1.1 302 Found Date: Tue, 14 Dec 2010 11:11:07 GMT Server: Apache/1.3.29 (Unix) mod_ssl/2.8.16 OpenSSL/0.9.7c Location: http://attackedhost.com/someurl?parameter=someparameterval Content-length: 0 HTTP/1.1 200 OK Content-length: 22 Hacked
...rest of 302 headers....
This attack vector supports others (cache poisoning for example uses a future Last-Modified header with this vector to fool browsers into caching a attack site). In a sense this attack is not "pure" - it relies on browsers being "naive" and starting processing of the second response in the middle of the 302 response. Less than satisfying....
One thought is that many companies protect request parameters but not response ones - we could attack from within a company by setting funny values in these parameters too on the server responses. That would be more interesting to protect against....


These days, in my spare time while on vacation, I decided to rewrite my home page. The task was not easy as I was doing it in a hotel in Lanzarote, without internet connection in my room, and using Hugo, a website framework, that I hadn’t used before.
Anyway, Hugo seems quite intuitive and is very fast to compile and run, so it is funny for trial-and-error. Also, there is a very nice Academic theme which facilitated the quick creation of the fist draft.
Once I did the first draft and started to add content, I noticed that I had a long list of publications that required some extra-information like the journal, year or authors, so I had to customize the academic theme.
In order to browse Hugo documentation while being offline, I found useful this project, which generated all Hugo documentation in a single HTML page.
It seems that the customization can be easily done by replacing the pages that are in the themes folder by the equivalent ones in the root folder.
I had to change the pages:
layouts/widgets/publication
: declares how to visualize publications in the home page. I added a link at the end to show all publications. I had also added some code to add filtering by tags, but the result is not nice, so I commented it. It seems that commenting code in HTML in Hugo requires to remove the{{
in the comments.layouts/partials/publication_li_simple.html
: defines how to visualize a single publication (I added there the authors, publication and year)layouts/section/publication.html
: declares how to filter publications by type and repeats the previous code. It would be better to use a partial, but I didn’t want to break things from the academic theme.
I also managed to integrate Travis with github so when I push some changes to github, it automatically deploys the content via Travis.
Notice that there are 2 branches, the source
branch contains the source code, and the master
branch contains the result (in Hugo, the result is by default created in the folder /public
)
The source code is located here and the resulting web page is here.


The Awesome Class¶
-
class
Cool\Namespace\
Awesome
¶ The awesome class does awesome things. Instantiate like so:
$awesome = new Awesome('param');
someStaticMethod¶
- static
Cool\Namespace\Awesome::
someStaticMethod
($someParam)¶This method is static. See the
.rst
source file for how this is defined. Also notice that this method appears in the TOC, there is no section heading in the actual body of the document. This is because of a customhidden
role which hides the heading in the body, but lets Sphinx render it in the TOC. If you just put a heading there without the “hidden” part, you’d get the same result, except that the heading would show in the content as well, thus duplicating the function name.
Parameters:
- $someParam (string) – A parameter needed by the method
Returns: void, or throws an \InvalidArgumentException if the param is invalid
Usage:
Awesome::someStaticMethod($someParam);
anotherMethod¶
Keep adding methods like this for everything you want to document. It is recommended to only document public methods like this. Private and protected methods should stay isolated and only documented in the source code.


Traditions and Hearthside Stories of West Cornwall, Vol. 2, by William Bottrell, [1873], at sacred-texts.com
He made but two morsels of a quarter of a pound of beef; and in bolting the last it stuck in his throat. In an instant he went blue in the face and fell on the floor. The landlord ran for a surgeon, and by good luck found one at home, the other side of the street. "Stand clear a bit, and open the man's trap," said the doctor. With much trouble the Zennor man's jaws were forced open, and the doctor feeling a portion of the meat pulled out a piece about six inches long.
The patient was soon restored and ready for another such meal.
 "Why bless ’e so I have.
[paragraph continues] I always keep my will in my pocket, and you shall see am of you mind to. I made ’n myself—no lawyers for me. Here a es." Saying this he drew from his pocket a sheet of paper, and gave it to the doctor, telling him he might keep it, if he had a mind to see how to make a will. He intended to make another the next Sunday, because he had more, things to bequeath now than when he made the testament, of which the following is a faithful copy:—
"I'll make my will while I am well. I will bestow my riches. I'll give to Ellek, * my eldest son, my best Coat, Jacket, and my Breeches. As for my watch et es in pawn else Elexander should have that. Neckey shall have the courage Horse, and Jan the little Sprat. Mary shall have the milking Cow, and Lystria shall have the Heifer. Fillis shall have the flock of Sheep, and wat can I do better? Old Polly shall have the Puss † of goold, and that will most maintain her. Sally shall have the old brass Pan, the Bucket, and the Strainer.
"Cousin Matthew Hollow,
"Uncle Philip Eddy, and
"John Quick, the Schoolmaster."
According to our intended arrangement the three foregoing stories should have preceded those of St. Just.
211:* Alexander.
211:† Purse.


Creates a custom list counter that accounts for nested list elements.
- Use `counter-reset` to initialize a variable counter (default `0`), the name of which is the value of the attribute (i.e. `counter`).
- Use `counter-increment` on the variable counter for each countable element (i.e. each `
`).
- Use `counters()` to display the value of each variable counter as part of the `content` of the `:before` pseudo-element for each countable element (i.e. each `
`). The second value passed to it (`'.'`) acts as the delimiter for nested counters.
- List item
- List item
-
List item
- List item
- List item
- List item


{%extends 'base.html'%} {%load ratings%} {{block.super}} {%block content%}
Found {{business.count}} results


Click here to download this week's dataset as a CSV
Click here to download this week's dataset as a Hyper Extract
Data Storytelling and Data
This week's viz is pretty simple. A map using the longitude and latitude provided in the dataset, a jitter plot showing how long ago dinosaurs lived, and a stacked bar showing the number of dinosaur discoveries by decade.
For the map, I used a custom map I created in Mapbox as my background map. This allowed my preferred color theme to persist through the viz. To ensure that I had each row of data from the dataset (each row equals one discovery), I made sure to bring in the key on the table, which was the Accepted Number. This resulted in one dot per discovery. I colored each dot by the geological time period. This required a bulky calculated field to first remove the 'Early'/'Middle'/'Late' qualifiers off the data in the [Early Interval] column, and secondly using a case statement to assign each of these modified intervals to the era - either Triassic, Jurassic or Cretaceous. This calculated field would be used throughout the other vizzes. I found the information on which era the data in the [Early Interval] column belonged to with a simple web search.
The jitter plot uses the INDEX() and modulus function to spread out my dots in the viz. To get the 'age' of the dinosaurs, I took the average of the ([Max Ma] + [Min Ma]) / 2. By bringing the [Accepted Name] column to the details card, this averaged the age by the Dinosaur. I then used SUM([Number of Records]) to drive the size.
My stacked bar graph at the bottom of the dashboard looks at how many discoveries by geological time period were made in each decade. This one actually surprised me. I expected that many of the early dinosaur discoveries would be of Cretaceous dinosaurs, as they are the most recent dinosaurs, and therefore closer to the surface when excavating. My theory is that though we don't see many documented discoveries of Cretaceous dinosaurs in the early days, humans were likely disregarding or missing the fossils they were uncovering.
The viz is pretty interactive, with a main filter on Country - built off a case statement that translated the country code - [Cc] to the country name. I also added a filter to allow the user to find a specific dinosaur. Thess filters drive all vizzes on the dashboard. Additionally, clicking on the jitter plot filters the map, showing the distinct locations where dinosaurs were found.
Does this viz inspire you to create your own? What kind of insights can you unearth? Take some time, and post your viz to Tableau Public, and Twitter with the hashtag #ThrowbackThursday, tagging @TThrowbackThurs.
Data Source
The dataset this week was sourced from the Paleobiology Database. Please be sure to cite the source on your viz.
I took the photo on this page at the Houston Museum of Natural Science in 2016.


it shoul dstill work... but these chains still had issues with stalling
should be ok now as I definatly am mining and staking all of them
CrisF23-Nov-18 10:34 AM
Not sure if related to the reset.
blackjok3r23-Nov-18 10:35 AM
I still cant see anyone in my mask something is definatly wrong atm
gt23-Nov-18 10:35 AM
cfek seems to be barely moving
blackjok3r23-Nov-18 10:35 AM
thats normal
the difficulty gfrom Alright staking with trillions of coins is through the roof
I just dont have enough to keep it moving atm
it should adjust
gt23-Nov-18 10:36 AM
i keep having needs to be funded but it should be
CrisF23-Nov-18 10:36 AM
curl_easy_perform() failed: Couldn't connect to server KMD.(<IP_ADDRESS>:7771 getinfo), retries: 4
Ahhh, do I need port 7771 open...
jorian23-Nov-18 10:37 AM
that means KMD is down
CrisF23-Nov-18 10:37 AM
yeah, ufw?
zatJUM23-Nov-18 10:37 AM
just 22 and 9997 ports
CrisF23-Nov-18 10:38 AM
Yeah, that's what I thought. They are good.
blackjok3r23-Nov-18 10:40 AM
komod is not running for you dude
try to start it manually
just ./komodod -stakednotary -pubkey=<pubkey>
CrisF23-Nov-18 10:40 AM
Yeah, wondering why.
blackjok3r23-Nov-18 10:40 AM
maybe crashed ??? I just started a fresh sync KMD here ... and it worked instantly
master branch
Bar_F1sh_Rel23-Nov-18 10:41 AM
Just restarted my notary - new pubkey, output looks ok
1
CrisF23-Nov-18 10:41 AM
Mine was going well, too.
blackjok3r23-Nov-18 10:41 AM
Do you have utxo @Bar_F1sh_Rel
do ./stats
Bar_F1sh_Rel23-Nov-18 10:42 AM
Hard to keep track - Ash on old windows phone!
blackjok3r23-Nov-18 10:42 AM
I think we should just need 2 more nodes with utxos and it will start working ... but i dont really know ... I onyl ahve the 1 node this time ... so I am rlying on you guys to help em work out why its broken
Once again, sorry for just hardforking the whiole netrwork with no notice .. this wil be hte last time
Bar_F1sh_Rel23-Nov-18 10:45 AM
Utxo's 20+ but no notarizations
blackjok3r23-Nov-18 10:45 AM
yeah its not notarising ...
you have KMD utxo ?
CrisF23-Nov-18 10:45 AM
Last time, where's the fun in that?
I should be up in a few
Bar_F1sh_Rel23-Nov-18 10:45 AM
48+
blackjok3r23-Nov-18 10:45 AM
ok .. there is only 3 things it can be ...
no utxo, bad netowkr connection (its not that I can see you call in my extra prints on node 0 )or the most likely,
we udated era too fast, and some nodes are seeing diffrent last notarisations to others, and they cant reach consensus.
in alst case, reayncing CFEK* chains, will fix it once updated to newest verison.
just wait for a few more ppl to get nodes up dated and we can see...
Bar_F1sh_Rel23-Nov-18 10:49 AM
Ok. Break over anyway - will be home and on a proper keyboard in about 3h
1
blackjok3r23-Nov-18 10:49 AM
Also I need to make change to iguana... for now its no problem... as we are only using CFEK.. will do that now though befor ei forget about it.
jorian23-Nov-18 10:49 AM
i have funds but not notarizign
port open
recvmask.20
blackjok3r23-Nov-18 10:52 AM
I have recv mask 23, me alright, and tonyL
I will resync my node ..
see what it does
likely also, maybe the seed nodes being all flat wrong is an issue.
nobody has updated them for a long time... I htink possibly my node is the only one that is right
If resync oesnt fix it ... I will nee to gather some IPs off you guys and update the seeds.
TonyL23-Nov-18 10:56 AM
There are CFEK, CFEKED, CFEKING and CFEKLF. What is the purpose of each chain?
blackjok3r23-Nov-18 10:56 AM
nothing really ... they aere to test MoMoM
TonyL23-Nov-18 10:56 AM
And as a suggestion maybe naming will be changed in future?
blackjok3r23-Nov-18 10:56 AM
started as one chain each with a diffrent fix and setting
TonyL23-Nov-18 10:56 AM
Since it's a lab now
blackjok3r23-Nov-18 10:57 AM
yes all new chains wil lbe LAB* or LABS*
CrisF23-Nov-18 10:57 AM
<IP_ADDRESS>
LAB looks better.
blackjok3r23-Nov-18 10:59 AM
we can add multiple names ... its very easy
gcharang23-Nov-18 10:59 AM
Deleteing the .komodo dir and starting again fixed that
"blocks": 0,
"longestchain": 0,
problem
blackjok3r23-Nov-18 10:59 AM
yes ... still dont get what its from ..(edited)
but that does always fix it
CrisF23-Nov-18 11:00 AM
LAB-FEK...
Alright23-Nov-18 11:00 AM
@TonyL we're going to try to keep CFEK network alive as a testnet
jorian23-Nov-18 11:01 AM
yeah or start animal names. something really distinguishing
labmonkey
labrat
labrabbit
CrisF23-Nov-18 11:01 AM
haha
blackjok3r23-Nov-18 11:02 AM
most of the totally disposable chains stuff is done ... at least I hope it is ...
gt23-Nov-18 11:02 AM
lablab
blackjok3r23-Nov-18 11:02 AM
the main thing we needed was MoMoM working perectly so ppl couldnt lose coins ... and that seems to be done. abut I need to retest ... I have an idea of how to fill blocks wiht migrates btw ...
1
like a migrate blaster
1
CrisF23-Nov-18 11:03 AM
I like the sounds of that!!
blackjok3r23-Nov-18 11:03 AM
Marketing guy aske dme about it ... and with the wallet cleaner, and the right logic in the scripts it seems quite easy
CMaurice23-Nov-18 11:03 AM
bags IA chain
blackjok3r23-Nov-18 11:04 AM
we cna all have a chain each... but keep in mind, adding more chains long term means you need more and more RAM ... for your notatry.
probably a good idea to keep initial chains small,... so notary stays profitable..
CMaurice23-Nov-18 11:05 AM
I only want it for the name LABIA
1
zatJUM23-Nov-18 11:05 AM
@blackjok3r Shouldn't port 7776 be open to
curl -s --url "http://<IP_ADDRESS>:7776"
in your scripts?
blackjok3r23-Nov-18 11:05 AM
NO!
thats iguanas RPC port(edited)
it MUST be closed
your only using it locally... opening it means ppl can issue commands to your iguana
or worse attack it in some way
zatJUM23-Nov-18 11:07 AM
ok!
Trying to find why I get this:
$ ./checkmasks
Seed recvmask: 0
[]
not:
[]
My recvmask: 0
[]
Best bestmask: null [null agree]
[]
My bestmask: 0
[]
blackjok3r23-Nov-18 11:08 AM
1) becasue that script doesnt work...
and 2) you dont ahve any info
waiting on my node to resync ... then oing to try and work out why some nodes are being excluded atm
2
CrisF23-Nov-18 11:23 AM
I'm seeing Alright, TonyL and greentea atm
jorian23-Nov-18 11:29 AM
CrisF23-Nov-18 11:30 AM
Are you still having a sync problem jorian?
jorian23-Nov-18 11:30 AM
no
did i have one?
CrisF23-Nov-18 11:32 AM
Oh, maybe someone else.
gcharang23-Nov-18 11:32 AM
I had it. Now its syncing
CrisF23-Nov-18 11:32 AM
Ah, good it's working.
gcharang23-Nov-18 11:33 AM
>I'm seeing Alright, TonyL and greentea atm
How do you see this list?


Oh yeah, typing with baby strapped on the front of me. Gotta love that Baby Bjorn.
7/10/2008, 8:27:24 PM
Favs: 0
Retweets: 0
link--- layout: tweet ---
Oh yeah, typing with baby strapped on the front of me. Gotta love that Baby Bjorn.
7/10/2008, 8:27:24 PM
Favs: 0
Retweets: 0
link


Main Game
Deck
Card Creation
Ability Descriptions
Immortal Warfare
Main Game
Sandbox Mode
New Card
End Turn
Directly Attack Opponent
New Card
End Turn
Directly Attack Opponent
Name:
♥:
⚔:
💧:
Order:
Abilities:
Add Ability
Remove Ability
Add Card To Deck
Abilities
Congratulations! The
player has won!!!
Play Again
Deck
Click any card to delete it


Checkout


Hi there
I'm a Moroccan based full stack developer focused on crafting clean & user‑friendly experiences, I am passionate about building excellent software that improves the lives of those around me.
I'm a Moroccan based full stack developer focused on crafting clean & user‑friendly experiences, I am passionate about building excellent software that improves the lives of those around me.
Application Development Service-Oriented Architecture (SOA) Enterprise Implementations Software Development Lifecycle (SDLC) Release Management B2B Integrations Project Management Offshore Development Operations QA & UAT Management Team Building & Leadership
blog content 1
blog content 2
blog content 3


My Brilliant Blog
Post title: Alpha post
Post
Well done! You successfully read this important alert message. You successfully read
this important alert message.
Post
Content from .
This is content from Alpha, which should be inserted.Post
Content from .
This is content from Beta, which should be inserted.Post
Content from .
Chapter 2
Chapter: 2
Post
Content from .
Chapter 1
Chapter: 1
Post
Content from .
Chapter 2
Chapter: 2
Post
Content from .
Chapter 3
Chapter: 3
Post
Content from .
Chapter 3
Chapter: 3
Post
Content from .
Chapter 1
Chapter: 1
Post
Content from .
Post
Content from .
Post
Content from .
This is content from Gamma, which should be inserted.This is content from the description property in the YFM of Gamma
Post
Content from Compose. Options hash cwd.
Post
Post
Post
This is content from the description property in the YFM of Gamma post
Post
Content from Compose. Options hash cwd.


<% if(url !== '/home') {%>
React Routing
<% } %>
Get Started
GitHub
<% if(url !== '/home') {%>
React Routing
Routing and navigation solutiong for React.js applications
<% } %>
How to Install
Basic Routing
Async Routes
Nested Routes
Integration with Flux
Server-side Rendering
Test-home-page
>Edit on GitHub
<%= body %> <% if(url !== '/') {%>
<% } %>


Many applications, especially games, need to play sounds in their entirety without needing to keep track of them. For example, a sound needs to be played when the player's space ship explodes, but this sound never needs to have its volume adjusted, or be rewound, or interrupted.
pyglet provides a simple interface for this kind of use-case. Call the play method of any Source to play it immediately and completely:
explosion = pyglet.media.load('explosion.wav', streaming=False)
explosion.play()
You can call play on any Source, not just StaticSource.
The return value of Source.play is a ManagedPlayer, which can either be discarded, or retained to maintain control over the sound's playback.


[Left window] View by a remote external observer; [Right window] View from location of the camera
Move object along curve
Move camera around scene


Part 1: Blockchain
- Slides: https://jonasnick.github.io/slides/2016-04-techlab.pdf
- Glossary: https://bitcoin.org/en/developer-documentation
Setup
- create new datadir "alpha_datadir"
- start daemon alpha daemone with
alphad -datadir=./alpha_datadir
alias a='alpha-cli -datadir=./alpha_datadir'
- This is a private altcoin network
Exercises
- What are the arguments of the
getrawtransaction
RPC?
- What is the current blockchain height?
- What is the block interval?
- When was the genesis block created?
- Connect to the faucet and receive coins.
- Make it rain (spend your coins).
Getting familiar
help
getinfo
getblockhash <block index>
getblock <block hash>
Receive coins
getnewaddress
- connect to faucet with
netcat -vv <IP_ADDRESS> 2062
- check
getbalance
Sending coins
sendtoaddress <address> <value>
- inspect transaction with
gettransaction <txid>
List your addresses