The viewers provide several special viewing
capabilities including Locale-specific viewing, Embedded maps, Smart Tag
parsing, and a tool panel that displays the group tree and the parameter panel.
Locale-specific viewing
To use this SDK to display reports in other
languages when using a web browser, the international fonts must be installed
on these machines:
The
Crystal Reports 2011 Report Application Server or Crystal Reports 2011
Processing Server. xxxxx
The
Java application server.
The
machine running the web browser.
Although some report contents (such as the
currency symbol and DateTime format) also rely on a locale setting, this
setting does not need to be the same as the locale setting on the Crystal
Reports 2011 Report Application Server or the Crystal Reports 2011 Processing
Server.
Note: The currency symbol is
determined by the locale setting on the server (not the user’s browser) to
ensure that different users see the same currency figures.
Tip: It is possible for the default
language setting of the web browser to be different from the system regional
setting. For example, the system regional setting may be Chinese, but if the
browser default language setting is English, the viewer is displayed in
English. To set the system regional setting or the web browser’s language
setting, consult the documentation for your operating system or web browser.
Embedded maps
The ability to view, and drill down on, embedded
maps is offered by several of the viewers. This feature requires the mapping
DLLs to be installed on the Crystal Reports 2011 Report Application Server or
Crystal Reports 2011 Processing Server.
Smart Tag parsing
Crystal Reports lets users take advantage of the
Smart Tags feature of Microsoft Office XP. With Smart Tags, users can copy a
chart, text object, or field object from Crystal Reports and then paste the
object as a Smart Tag into an Office XP application.
Note: The Smart Tag feature in
Crystal Reports supports Word XP, Excel XP and Outlook XP. For Outlook XP
support, Word XP must be set as the message editor.
The JSP page that is the target of a Smart Tag
contains code that uses the CrystalReportSmartTagInfoParser Object. When a user
clicks on the View the Report item in the Smart Tag Action menu, the Smart Tag
passes information to the JSP page on the server. The
CrystalReportSmartTagInfoParser Object then parses the information sent by the
Smart Tag and the appropriate logon and report information can then be used to
generate the report from within a web browser.
Tool panel
The tool panel appears on the left side of the
viewer and can display the group tree or the parameter panel. You can hide the
tool panel from the user programmatically.
Group tree
The group tree displays the headings for each
group in the report in a hierarchy. Lists of nested group headings can be
expanded or collapsed.
When the user clicks on a drilldown group, the
drilldown view of the report on the selected group opens. When the user clicks
on a group heading that does not represent a drilldown group, the viewer jumps
to the page of the report where the selected group data is displayed.
The group tree view is specified with the
CrToolPanelViewTypeEnum.groupTree
enumeration.
Parameter panel
The parameter panel allows users to set static
and dynamic parameters and to refresh the report. The parameter panel enables
users to interactively format and filter report data. The panel displays all
parameters that have been set to
Editable or
Read only.
If a parameter is set to
Editable,
you can add, delete, or modify parameter values directly in the text box on the
parameter panel.
Note: Advanced parameters include parameters
that accept multiple or range values, parameters with a dynamic list of values,
parameters that depend on other parameters, parameters with a large static list
of values, and editmasks.
When you modify the value of a data parameter,
the report refreshes and accesses the database to make the corresponding
changes. When you modify the value of a non-data parameter, the report is
formatted or filtered based on saved data within the report. The report does
not access the database.
The parameter panel view is specified with the
CrToolPanelViewTypeEnum.parameterPanel
enumeration.


| SECTION | Item or Ref ID | Value or text |
| Identification |
| TA code | A<IP_ADDRESS> |
| Entity ID number | THA:2450 |
| FMA identifier | FMA:55045 |
| Type of entity | Immaterial entity |
| Language |
| TA98 Latin preferred term | fissura tonsillaris |
| TA98 Latin official synonym | fissura intratonsillaris |
| TA98 English equivalent | tonsillar cleft |
| TA98 English synonym | intratonsillar cleft |
| Properties |
| Bilaterality | This entity has left and right instances. |
| Variant | This entity is inconstant. |
| Immaterial | This entity is an immaterial object (no mass). |
| Notes |
| TA98 footnote | (Fissura tonsillaris; fissura intratonsillaris) A deep cleft in the palatine tonsil which curves parallel to the convex dorsum of the tongue and retrogresses during childhood and puberty. It is not situated above the tonsil and thus the term fossa supratonsillaris, if used in this way, is a misnomer. The term properly refers only to that part of the tonsillar fossa lying above the palatine tonsil. |
| TA98 Hierarchy |
| A<IP_ADDRESS> |
| A<IP_ADDRESS> |
| A<IP_ADDRESS> |
| A<IP_ADDRESS> |
| A<IP_ADDRESS> |
| A<IP_ADDRESS> |
fissura tonsillaris
|
| FMA Taxonomy |
| FMA:62955 |
anatomical entity
|
| FMA:61775 |
physical anatomical entity
|
| FMA:67112 |
immaterial physical anatomical entity
|
| FMA:9657 |
anatomical line
|
| FMA:55045 |
tonsillar cleft
|
| Date: 29.01.2013 |


the work.
Vacation
A site showcasing fictional vacation packages to the Seyschelle Islands.
Built with html, css, and bootstrap.
Github RepoThe Best Dog
A practice website about a made up dog I think is great.
Built with html and css
Github Reposhimer.dev: is Dustin Herboldshimer, a designer and developer in Portland, Oregon.
He is available for hire.


Trait extended by matcher objects, which may appear after the word be
, that can match a value of the specified type.
The result of a Boolean
property match operation, such as one performed by a
BePropertyMatcher
,
which contains one field that indicates whether the match succeeded (i.e., the Boolean
property was true
) and one field that provides
the name of the property.
Trait extended by matcher objects, which may appear after the word be
, that can match against a Boolean
property.
This trait is part of the ScalaTest matchers DSL.
The result of a property match operation such as one performed by a
HavePropertyMatcher
,
which contains one field that indicates whether the match succeeded (i.e., the
property had its expected value), one field that provides
the name of the property, and two fields giving the expected and actual values.
Trait extended by matcher objects, which may appear after the word have
, that can match against a
property of the type specified by the HavePropertyMatcher
's second type parameter P
.
The result of a match operation, such as one performed by a Matcher
or
BeMatcher
, which
contains one field that indicates whether the match succeeded and four fields that provide
failure messages to report under different circumstances.
Trait extended by objects that can match a value of the specified type.
Trait that provides a domain specific language (DSL) for expressing assertions in tests
using the word must
.
Trait that provides a domain specific language (DSL) for expressing assertions in tests
using the word should
.
Companion object for trait BeMatcher
that provides a
factory method that creates a BeMatcher[T]
from a
passed function of type (T => MatchResult)
.
Companion object for the BePropertyMatchResult
case class.
Companion object for trait BePropertyMatcher
that provides a
factory method that creates a BePropertyMatcher[T]
from a
passed function of type (T => BePropertyMatchResult)
.
Companion object for the HavePropertyMatchResult
case class.
Companion object for trait HavePropertyMatcher
that provides a
factory method that creates a HavePropertyMatcher[T]
from a
passed function of type (T => HavePropertyMatchResult)
.
Companion object for the MatchResult
case class.
Companion object for trait Matcher
that provides a
factory method that creates a Matcher[T]
from a
passed function of type (T => MatchResult)
.
Companion object that facilitates the importing of MustMatchers
members as
an alternative to mixing it the trait.
Companion object that facilitates the importing of ShouldMatchers
members as
an alternative to mixing it the trait.
The name Matchers has been deprecated and will be used in a different way in a future version of ScalaTest. Please use ClassicMatchers instead.


Something Perversely Funny about "Mary" by Homer Yen (c) 1998
When it comes to matters of the opposite sex, there are two things that I've always believed in. First, you'll always go further when you pretend to be no one else but your true self.  "There's Something about Mary," in its own perversely funny and raunchy way, illustrates these ideas.
Ever since high school, small-town boy and eternal doofus Ted Stroehmann (Ben Stiller) has had a crush on Mary (Cameron Diaz). Mary is a vibrant, cheery and affable girl.   But it's just an appetizer to get you ready for the really weird stuff that will follow.
Thirteen years pass since Ted last saw Mary, but he has always carried a torch for his radiant high-school love. Taking some advice from his boss, he hires Pat Healy (Matt Dillon who looks like he was voted "Least Likely to Trust"), an investigator of sorts, to track down Mary and to report back on her whereabouts. Healy is immediately smitten with Mary. He discourages Ted about pursuing the matter, saying that she's now overweight and has gone to Japan as a mail-order bride. Healy wants the babe-alicious Mary to himself and moves down to Miami, uses his array of listening devices to learn more about her, and tells her what she wants to hear in order to capture her heart. Ted, however, follows his heart and travels down to Miami to find her nonetheless. The rest of the movie is a cute love story that focuses on Ted who tries to summon up enough courage to reintroduce himself into her life. Healy, however, looks for ways to neutralize his competition. And we are introduced to several other crazy characters who all have their eye on Mary.
Diaz is appealingly charming and Stiller possess good comic timing, but it is the relentless offering of gross-out humor and inane silliness that propels this movie. From the first face-curling moment, your defense mechanisms quickly jumps into place and you want to decree that you are above this ludicrous low-brow humor. "How does a film maker come up with this kind of material," you wonder. A lot of the jokes couldn't work if the camera work and the timing weren't perfect. But everything falls funnily into place. As the pranks and the jokes and the twisted humor begin to penetrate your defenses, you can't help but say: "That was gross - hahahaha." It was vulgar; it was tasteless; and it was sick. But I laughed...a lot.
Grade: B
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


The Challenge
I worked with Streami to design their demo product. Streami reduces international money transfer fees using blockchain technology. In the demo product, users choose one of Streami's fee options to send an international money transfer.
The company had wireframes designed when I joined. However, things were confusing. For example, I had difficulty understanding the ideas that the graphics were supposed to communicate and the copy was confusing.
Original wireframes
To fix the problems, I did an extensive interview with the team to understand what the original UI sought to achieve and evaluate whether the goals were valid. Based on the insights I gained, I redesigned the product so that 1) the product clearly communicates to users and 2) the product does a better job at helping the users’ decision process.
For example, Streami offers two fee options: 1) fast option where payment is sent immediately and users pay 1% of the payment amount 2) slow option where payment is sent in 24 hours and users pay 0.5 % of the payment amount.
In the original design, users were not able to see how much the fee exactly is given their payment amount until they click on each option. Users were also not able to see how each option compares to regular international money transfer methods (i.e., how cheaper and faster each option is than using banks) until they click on the option.
However, presenting both pieces of information before users choose the options allows users to more easily compare the options. So I designed the screens so that users can view the information without having to choose the options first.
The new design allows users to more easily compare the options.
Lastly, I worked on visual design to make things look cleaner and more aesthetically appealing.
Here are the final screens.


Please verify that I have downloaded my firmware and can upload it again if I need to revert my changes.
I connected my EmonTx v3.4 to a Raspberry Pi on which I had installed avrdude (sudo apt-get install -y avrdude).
I ran the following command:
avrdude -v -p atmega328p -c arduino -b 115200 -P /dev/ttyUSB0 -U flash:r:emontx_backup.hex:i
And I want to make sure I will be able to put it back in with a command like:
avrdude -v -p atmega328p -c arduino -b 115200 -P /dev/ttyUSB0 -U flash:w:emontx_backup.hex
The output I got was as follows:
avrdude: Version 6.1, compiled on Jul 7 2015 at 10:29:47 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2014 Joerg Wunsch System wide configuration file is "/etc/avrdude.conf" User configuration file is "/home/pi/.avrduderc" User configuration file does not exist or is not a regular file, skipping Using Port : /dev/ttyUSB0 Using Programmer : arduino Overriding Baud Rate : 115200 AVR Part : ATmega328P Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff flash 65 6 128 0 yes 32768<PHONE_NUMBER> 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : Arduino Description : Arduino Hardware Version: 3 Firmware Version: 4.4 Vtarget : 0.3 V Varef : 0.3 V Oscillator : 28.800 kHz SCK period : 3.3 us avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.00s avrdude: Device signature = 0x1e950f avrdude: safemode: lfuse reads as 0 avrdude: safemode: hfuse reads as 0 avrdude: safemode: efuse reads as 0 avrdude: reading flash memory: Reading | ################################################## | 100% 3.67s avrdude: writing output file "emontx_backup.hex" avrdude: safemode: lfuse reads as 0 avrdude: safemode: hfuse reads as 0 avrdude: safemode: efuse reads as 0 avrdude: safemode: Fuses OK (E:00, H:00, L:00) avrdude done. Thank you.
Help with backing up EmonTx firmware
Submitted by baldockery on Thu, 24/03/2016 - 03:48Please verify that I have downloaded my firmware and can upload it again if I need to revert my changes.
I connected my EmonTx v3.4 to a Raspberry Pi on which I had installed avrdude (sudo apt-get install -y avrdude).
I ran the following command:
And I want to make sure I will be able to put it back in with a command like:
The output I got was as follows:


A bot that shows how to handle natural language using the Cognitive Services LUIS API.
Here are some handy links to get started:


Release Log¶
NetworkX 2.0¶
Release date: 20 September 2017
Support for Python 3.6 added, drop support for Python 3.3.
See Migration guide from 1.X to 2.0.
Release notes¶
NetworkX 1.11¶
Release date: 30 January 2016
Support for Python 3.5 added, drop support for Python 3.2.
Highlights¶
Pydot features now use pydotplus. Fixes installation on some machines and test with appveyor. Restores default center and scale of layout routines. Fixes various docs including no symbolic links in examples. Docs can now build using autosummary on readthedocs.org.
NetworkX 1.10¶
Release date: 2 August 2015
Support for Python 2.6 is dropped in this release.
Highlights¶
- Connected components now return generators
- new functions including
- enumerate_all_cliques, greedy_coloring, edge_dfs, find_cycle immediate_dominators, harmonic_centrality
- Hopcraft–Karp algorithm for maximum matchings
- optimum branchings and arborescences.
- all_simple_paths
- pyparsing dependence removed from GML reader/parser
- improve flow algorithms
- new generators related to expander graphs.
- new generators for multipartite graphs, nonisomorphic trees, circulant graphs
- allow graph subclasses to use dict-like objects in place of dicts
- added ordered graph subclasses
- pandas dataframe read/write added.
- data keyword in G.edges() allows requesting edge attribute directly
- expanded layout flexibility for node subsets
- Kanesky’s algorithm for cut sets and k_components
- power function for graphs
- approximation of node connectivity
- transitive closure, triadic census and antichains
- quotient graphs and minors
- longest_path for DAGS
- modularity matrix routines
API changes¶
NetworkX 1.9.1¶
Release date: 13 September 2014
Bugfix release for minor installation and documentation issues.
NetworkX 1.9¶
Release date: 21 June 2014
Support for Python 3.1 is dropped in this release.
Highlights¶
- Completely rewritten maximum flow and flow-based connectivity algorithms with backwards incompatible interfaces
- Community graph generators
- Stoer–Wagner minimum cut algorithm
- Linear-time Eulerian circuit algorithm
- Linear algebra package changed to use SciPy sparse matrices
- Algebraic connectivity, Fiedler vector, spectral ordering algorithms
- Link prediction algorithms
- Goldberg–Radzik shortest path algorithm
- Semiconnected graph and tree recognition algorithms
API changes¶
NetworkX 1.8¶
Release date: 28 July 2013
Highlights¶
- Faster (linear-time) graphicality tests and Havel-Hakimi graph generators
- Directed Laplacian matrix generator
- Katz centrality algorithm
- Functions to generate all simple paths
- Improved shapefile reader
- More flexible weighted projection of bipartite graphs
- Faster topological sort, descendants and ancestors of DAGs
- Scaling parameter for force-directed layout
Bug fixes¶
- Error with average weighted connectivity for digraphs, correct normalized laplacian with self-loops, load betweenness for single node graphs, isolated nodes missing from dfs/bfs trees, normalize HITS using l1, handle density of graphs with self loops
- Cleaner handling of current figure status with Matplotlib, Pajek files now don’t write troublesome header line, default alpha value for GEXF files, read curved edges from yEd GraphML
For full details of the issues closed for this release (added features and bug fixes) see: https://github.com/networkx/networkx/issues?milestone=1&page=1&state=closed
API changes¶
NetworkX 1.7¶
Release date: 4 July 2012
Highlights¶
- New functions for k-clique community finding, flow hierarchy, union, disjoint union, compose, and intersection operators that work on lists of graphs, and creating the biadjacency matrix of a bipartite graph.
- New approximation algorithms for dominating set, edge dominating set, independent set, max clique, and min-weighted vertex cover.
- Many bug fixes and other improvements.
For full details of the tickets closed for this release (added features and bug fixes) see: https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.7
API changes¶
NetworkX 1.6¶
Release date: 20 November 2011
Highlights¶
New functions for finding articulation points, generating random bipartite graphs, constructing adjacency matrix representations, forming graph products, computing assortativity coefficients, measuring subgraph centrality and communicability, finding k-clique communities, and writing JSON format output.
New examples for drawing with D3 Javascript library, and ordering matrices with the Cuthill-McKee algorithm.
More memory efficient implementation of current-flow betweenness and new approximation algorithms for current-flow betweenness and shortest-path betweenness.
Simplified handling of “weight” attributes for algorithms that use weights/costs/values. See Version 1.6 notes and API changes.
Updated all code to work with the PyPy Python implementation http://pypy.org which produces faster performance on many algorithms.
For full details of the tickets closed for this release (added features and bug fixes) see: https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.6
API changes¶
NetworkX 1.5¶
Release date: 4 June 2011
For full details of the tickets closed for this release see: https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.5
Highlights¶
New features¶
- Algorithms for
generating
andanalyzing
bipartite graphsMaximal independent set
algorithmErdős-Gallai graphical degree sequence test
Negative edge cycle test
- More memory efficient
Dijkstra path length
with cutoff parameterWeighted clustering coefficient
- Read and write version 1.2 of
GEXF reader
formatNeighbor degree correlation
that handle subsets of nodesIn-place node relabeling
- Many ‘weighted’ graph algorithms now take optional parameter to use specified edge attribute (default=’weight’) (ticket https://networkx.lanl.gov/trac/ticket/509)
- Test for
distance regular
graphs- Fast
directed Erdős-Renyi graph
generator- Fast
expected degree graph
generatorNavigable small world
generatorWaxman model
generatorGeographical threshold graph
generatorKarate Club, Florentine Families, and Davis' Women's Club
graphs
API changes¶
Bug fixes¶
- Fix edge handling for multigraphs in networkx/graphviz interface (ticket https://networkx.lanl.gov/trac/ticket/507)
- Update networkx/pydot interface for new versions of pydot (ticket https://networkx.lanl.gov/trac/ticket/506) (ticket https://networkx.lanl.gov/trac/ticket/535)
- Fix negative cycle handling in Bellman-Ford (ticket https://networkx.lanl.gov/trac/ticket/502)
- Write more attributes with GraphML and GML formats (ticket https://networkx.lanl.gov/trac/ticket/480)
- Handle white space better in read_edgelist (ticket https://networkx.lanl.gov/trac/ticket/513)
- Better parsing of Pajek format files (ticket https://networkx.lanl.gov/trac/ticket/524) (ticket https://networkx.lanl.gov/trac/ticket/542)
- Isolates functions work with directed graphs (ticket https://networkx.lanl.gov/trac/ticket/526)
- Faster conversion to numpy matrices (ticket https://networkx.lanl.gov/trac/ticket/529)
- Add graph[‘name’] and use properties to access Graph.name (ticket https://networkx.lanl.gov/trac/ticket/544)
- Topological sort confused None and 0 (ticket https://networkx.lanl.gov/trac/ticket/546)
- GEXF writer mishandled weight=0 (ticket https://networkx.lanl.gov/trac/ticket/550)
- Speedup in SciPy version of PageRank (ticket https://networkx.lanl.gov/trac/ticket/554)
- Numpy PageRank node order incorrect + speedups (ticket https://networkx.lanl.gov/trac/ticket/555)
NetworkX 1.4¶
Release date: 23 January 2011
New features¶
k-shell,k-crust,k-corona
read GraphML files from yEd
read/write GEXF format files
find cycles in a directed graph
DFS
andBFS
algorithmschordal graph functions
Prim's algorithm for minimum spanning tree
r-ary tree generator
rich club coefficient
- NumPy matrix version of
Floyd's algorithm for all-pairs shortest path
read GIS shapefiles
functions to get and set node and edge attributes
- and more, see https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.4
API changes¶
gnp_random_graph()
now takes a directed=True|False keyword instead of create_usinggnm_random_graph()
now takes a directed=True|False keyword instead of create_using
NetworkX 1.3¶
Release date: 28 August 2010
See: https://networkx.lanl.gov/trac/timeline
New features¶
- Works with Python versions 2.6, 2.7, 3.1, and 3.2 (but not 2.4 and 2.5).
Minimum cost flow algorithms
Bellman-Ford shortest paths
GraphML reader and writer
More exception/error types
- Updated many tests to unittest style. Run with: “import networkx; networkx.test()” (requires nose testing package)
- and more, see https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.3
API changes¶
minimum_spanning_tree() now returns a NetworkX Graph (a tree or forest)
NetworkX 1.2¶
Release date: 28 July 2010
See: https://networkx.lanl.gov/trac/timeline
New features¶
Ford-Fulkerson max flow and min cut
Closeness vitality
Eulerian circuits
Functions for isolates
Simpler s_max generator
- Compatible with IronPython-2.6
- Improved testing functionality: import networkx; networkx.test() tests entire package and skips tests with missing optional packages
- All tests work with Python-2.4
- and more, see https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.2
NetworkX 1.1¶
Release date: 21 April 2010
See: https://networkx.lanl.gov/trac/timeline
New features¶
Algorithm for finding a basis for graph cycles
Blockmodeling
Assortativity and mixing matrices
in-degree and out-degree centrality
Attracting components
andcondensation
.Weakly connected components
Simpler interface to shortest path algorithms
Edgelist format to read and write data with attributes
Attribute matrices
GML reader for nested attributes
- Current-flow (random walk)
betweenness
andcloseness
.Directed configuration model
, anddirected random graph model
.- Improved documentation of drawing, shortest paths, and other algorithms
- Many more tests, can be run with “import networkx; networkx.test()”
- and much more, see https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.1
API changes¶
Returning dictionaries¶
Several of the algorithms and the degree() method now return dictionaries keyed by node instead of lists. In some cases there was a with_labels keyword which is no longer necessary. For example,
>>> G=nx.Graph()
>>> G.add_edge('a','b')
>>> G.degree()
{'a': 1, 'b': 1}
Asking for the degree of a single node still returns a single number
>>> G.degree('a')
1
The following now return dictionaries by default (instead of lists) and the with_labels keyword has been removed:
Graph.degree()
,MultiGraph.degree()
,DiGraph.degree()
,DiGraph.in_degree()
,DiGraph.out_degree()
,MultiDiGraph.degree()
,MultiDiGraph.in_degree()
,MultiDiGraph.out_degree()
.clustering()
,triangles()
node_clique_number()
,number_of_cliques()
,cliques_containing_node()
eccentricity()
The following now return dictionaries by default (instead of lists)
pagerank()
hits()
Adding nodes¶
add_nodes_from
now accepts (node, attrdict)
two-tuples
>>> G = nx.Graph()
>>> G.add_nodes_from([(1, {'color': 'red'})])
Bug fixes¶
- Support graph attributes with union, intersection, and other graph operations
- Improve subgraph speed (and related algorithms such as connected_components_subgraphs())
- Handle multigraphs in more operators (e.g. union)
- Handle double-quoted labels with pydot
- Normalize betweenness_centrality for undirected graphs correctly
- Normalize eigenvector_centrality by l2 norm
read_gml()
now returns multigraphs
NetworkX 1.0.1¶
Release date: 11 Jan 2010
See: https://networkx.lanl.gov/trac/timeline
Bug fix release for missing setup.py in manifest.
NetworkX 1.0¶
Release date: 8 Jan 2010
See: https://networkx.lanl.gov/trac/timeline
New features¶
This release has significant changes to parts of the graph API to allow graph, node, and edge attributes. See http://networkx.lanl.gov/reference/api_changes.html
- Update Graph, DiGraph, and MultiGraph classes to allow attributes.
- Default edge data is now an empty dictionary (was the integer 1)
- Difference and intersection operators
- Average shortest path
- A* (A-Star) algorithm
- PageRank, HITS, and eigenvector centrality
- Read Pajek files
- Line graphs
- Minimum spanning tree (Kruskal’s algorithm)
- Dense and sparse Fruchterman-Reingold layout
- Random clustered graph generator
- Directed scale-free graph generator
- Faster random regular graph generator
- Improved edge color and label drawing with Matplotlib
- and much more, see https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.0
Examples¶
- Update to work with networkx-1.0 API
- Graph subclass example
NetworkX 0.99¶
Release date: 18 November 2008
See: https://networkx.lanl.gov/trac/timeline
New features¶
This release has significant changes to parts of the graph API. See http://networkx.lanl.gov/reference/api_changes.html
- Update Graph and DiGraph classes to use weighted graphs as default Change in API for performance and code simplicity.
- New MultiGraph and MultiDiGraph classes (replace XGraph and XDiGraph)
- Update to use Sphinx documentation system http://networkx.lanl.gov/
- Developer site at https://networkx.lanl.gov/trac/
- Experimental LabeledGraph and LabeledDiGraph
- Moved package and file layout to subdirectories.
Bug fixes¶
- handle root= option to draw_graphviz correctly
Examples¶
- Update to work with networkx-0.99 API
- Drawing examples now use matplotlib.pyplot interface
- Improved drawings in many examples
- New examples - see http://networkx.lanl.gov/examples/
NetworkX 0.37¶
Release date: 17 August 2008
See: https://networkx.lanl.gov/trac/timeline
NetworkX now requires Python 2.4 or later for full functionality.
New features¶
- Edge coloring and node line widths with Matplotlib drawings
- Update pydot functions to work with pydot-1.0.2
- Maximum-weight matching algorithm
- Ubigraph interface for 3D OpenGL layout and drawing
- Pajek graph file format reader and writer
- p2g graph file format reader and writer
- Secondary sort in topological sort
Bug fixes¶
- Better edge data handling with GML writer
- Edge betweenness fix for XGraph with default data of None
- Handle Matplotlib version strings (allow “pre”)
- Interface to PyGraphviz (to_agraph()) now handles parallel edges
- Fix bug in copy from XGraph to XGraph with multiedges
- Use SciPy sparse lil matrix format instead of coo format
- Clear up ambiguous cases for Barabasi-Albert model
- Better care of color maps with Matplotlib when drawing colored nodes and edges
- Fix error handling in layout.py
Examples¶
- Ubigraph examples showing 3D drawing
NetworkX 0.36¶
Release date: 13 January 2008
See: https://networkx.lanl.gov/trac/timeline
New features¶
- GML format graph reader, tests, and example (football.py)
- edge_betweenness() and load_betweenness()
Bug fixes¶
- remove obsolete parts of pygraphviz interface
- improve handling of Matplotlib version strings
- write_dot() now writes parallel edges and self loops
- is_bipartite() and bipartite_color() fixes
- configuration model speedup using random.shuffle()
- convert with specified nodelist now works correctly
- vf2 isomorphism checker updates
NetworkX 0.35.1¶
Release date: 27 July 2007
See: https://networkx.lanl.gov/trac/timeline
Small update to fix import readwrite problem and maintain Python2.3 compatibility.
NetworkX 0.35¶
Release date: 22 July 2007
See: https://networkx.lanl.gov/trac/timeline
New features¶
- algorithms for strongly connected components.
- Brandes betweenness centrality algorithm (weighted and unweighted versions)
- closeness centrality for weighted graphs
- dfs_preorder, dfs_postorder, dfs_tree, dfs_successor, dfs_predecessor
- readers for GraphML, LEDA, sparse6, and graph6 formats.
- allow arguments in graphviz_layout to be passed directly to graphviz
Bug fixes¶
- more detailed installation instructions
- replaced dfs_preorder,dfs_postorder (see search.py)
- allow initial node positions in spectral_layout
- report no error on attempting to draw empty graph
- report errors correctly when using tuples as nodes #114
- handle conversions from incomplete dict-of-dict data
NetworkX 0.34¶
Release date: 12 April 2007
See: https://networkx.lanl.gov/trac/timeline
New features¶
- benchmarks for graph classes
- Brandes betweenness centrality algorithm
- Dijkstra predecessor and distance algorithm
- xslt to convert DIA graphs to NetworkX
- number_of_edges(u,v) counts edges between nodes u and v
- run tests with python setup_egg.py test (needs setuptools) else use python -c “import networkx; networkx.test()”
- is_isomorphic() that uses vf2 algorithm
Bug fixes¶
- speedups of neighbors()
- simplified Dijkstra’s algorithm code
- better exception handling for shortest paths
- get_edge(u,v) returns None (instead of exception) if no edge u-v
- floyd_warshall_array fixes for negative weights
- bad G467, docs, and unittest fixes for graph atlas
- don’t put nans in numpy or scipy sparse adjacency matrix
- handle get_edge() exception (return None if no edge)
- remove extra kwds arguments in many places
- no multi counting edges in conversion to dict of lists for multigraphs
- allow passing tuple to get_edge()
- bad parameter order in node/edge betweenness
- edge betweenness doesn’t fail with XGraph
- don’t throw exceptions for nodes not in graph (silently ignore instead) in edges_* and degree_*
NetworkX 0.33¶
Release date: 27 November 2006
See: https://networkx.lanl.gov/trac/timeline
New features¶
draw edges with specified colormap
more efficient version of Floyd’s algorithm for all pairs shortest path
use numpy only, Numeric is deprecated
include tests in source package (networkx/tests)
include documentation in source package (doc)
- tests can now be run with
>>> import networkx >>> networkx.test()
Bug fixes¶
- read_gpickle now works correctly with Windows
- refactored large modules into smaller code files
- degree(nbunch) now returns degrees in same order as nbunch
- degree() now works for multiedges=True
- update node_boundary and edge_boundary for efficiency
- edited documentation for graph classes, now mostly in info.py
Examples¶
- Draw edges with colormap
NetworkX 0.32¶
Release date: 29 September 2006
See: https://networkx.lanl.gov/trac/timeline
New features¶
- Update to work with numpy-1.0x
- Make egg usage optional: use python setup_egg.py bdist_egg to build egg
- Generators and functions for bipartite graphs
- Experimental classes for trees and forests
- Support for new pygraphviz update (in nx_agraph.py) , see http://networkx.lanl.gov/pygraphviz/ for pygraphviz details
Bug fixes¶
- Handle special cases correctly in triangles function
- Typos in documentation
- Handle special cases in shortest_path and shortest_path_length, allow cutoff parameter for maximum depth to search
- Update examples: erdos_renyi.py, miles.py, roget,py, eigenvalues.py
Examples¶
- Expected degree sequence
- New pygraphviz interface
NetworkX 0.31¶
Release date: 20 July 2006
See: https://networkx.lanl.gov/trac/timeline
New features¶
- arbitrary node relabeling (use relabel_nodes)
- conversion of NetworkX graphs to/from Python dict/list types, numpy matrix or array types, and scipy_sparse_matrix types
- generator for random graphs with given expected degree sequence
Bug fixes¶
- Allow drawing graphs with no edges using pylab
- Use faster heapq in dijkstra
- Don’t complain if X windows is not available
Examples¶
- update drawing examples
NetworkX 0.30¶
Release date: 23 June 2006
See: https://networkx.lanl.gov/trac/timeline
New features¶
- update to work with Python 2.5
- bidirectional version of shortest_path and Dijkstra
- single_source_shortest_path and all_pairs_shortest_path
- s-metric and experimental code to generate maximal s-metric graph
- double_edge_swap and connected_double_edge_swap
- Floyd’s algorithm for all pairs shortest path
- read and write unicode graph data to text files
- read and write YAML format text files, http://yaml.org
Bug fixes¶
- speed improvements (faster version of subgraph, is_connected)
- added cumulative distribution and modified discrete distribution utilities
- report error if DiGraphs are sent to connected_components routines
- removed with_labels keywords for many functions where it was causing confusion
- function name changes in shortest_path routines
- saner internal handling of nbunch (node bunches), raise an exception if an nbunch isn’t a node or iterable
- better keyword handling in io.py allows reading multiple graphs
- don’t mix Numeric and numpy arrays in graph layouts and drawing
- avoid automatically rescaling matplotlib axes when redrawing graph layout
Examples¶
- unicode node labels
NetworkX 0.29¶
Release date: 28 April 2006
See: https://networkx.lanl.gov/trac/timeline
New features¶
- Algorithms for betweenness, eigenvalues, eigenvectors, and spectral projection for threshold graphs
- Use numpy when available
- dense_gnm_random_graph generator
- Generators for some directed graphs: GN, GNR, and GNC by Krapivsky and Redner
- Grid graph generators now label by index tuples. Helper functions for manipulating labels.
- relabel_nodes_with_function
Bug fixes¶
- Betweenness centrality now correctly uses Brandes definition and has normalization option outside main loop
- Empty graph now labeled as empty_graph(n)
- shortest_path_length used python2.4 generator feature
- degree_sequence_tree off by one error caused nonconsecutive labeling
- periodic_grid_2d_graph removed in favor of grid_2d_graph with periodic=True
NetworkX 0.28¶
Release date: 13 March 2006
See: https://networkx.lanl.gov/trac/timeline
New features¶
- Option to construct Laplacian with rows and columns in specified order
- Option in convert_node_labels_to_integers to use sorted order
- predecessor(G,n) function that returns dictionary of nodes with predecessors from breadth-first search of G starting at node n. https://networkx.lanl.gov/trac/ticket/26
Examples¶
- Formation of giant component in binomial_graph:
- Chess masters matches:
- Gallery https://networkx.github.io/documentation/latest/auto_examples/index.html
Bug fixes¶
- Adjusted names for random graphs.
- erdos_renyi_graph=binomial_graph=gnp_graph: n nodes with edge probability p
- gnm_graph: n nodes and m edges
- fast_gnp_random_graph: gnp for sparse graphs (small p)
- Documentation contains correct spelling of Barabási, Bollobás, Erdős, and Rényi in UTF-8 encoding
- Increased speed of connected_components and related functions by using faster BFS algorithm in networkx.paths https://networkx.lanl.gov/trac/ticket/27
- XGraph and XDiGraph with multiedges=True produced error on delete_edge
- Cleaned up docstring errors
- Normalize names of some graphs to produce strings that represent calling sequence
NetworkX 0.27¶
Release date: 5 February 2006
See: https://networkx.lanl.gov/trac/timeline
New features¶
- sparse_binomial_graph: faster graph generator for sparse random graphs
- read/write routines in io.py now handle XGraph() type and gzip and bzip2 files
- optional mapping of type for read/write routine to allow on-the-fly conversion of node and edge datatype on read
- Substantial changes related to digraphs and definitions of neighbors() and edges(). For digraphs edges=out_edges. Neighbors now returns a list of neighboring nodes with possible duplicates for graphs with parallel edges See https://networkx.lanl.gov/trac/ticket/24
- Addition of out_edges, in_edges and corresponding out_neighbors and in_neighbors for digraphs. For digraphs edges=out_edges.
Examples¶
- Minard’s data for Napoleon’s Russian campaign
Bug fixes¶
- XGraph(multiedges=True) returns a copy of the list of edges for get_edge()
NetworkX 0.26¶
Release date: 6 January 2006
New features¶
- Simpler interface to drawing with pylab
- G.info(node=None) function returns short information about graph or node
- adj_matrix now takes optional nodelist to force ordering of rows/columns in matrix
- optional pygraphviz and pydot interface to graphviz is now callable as “graphviz” with pygraphviz preferred. Use draw_graphviz(G).
Examples¶
- Several new examples showing how draw to graphs with various properties of nodes, edges, and labels
Bug fixes¶
- Default data type for all graphs is now None (was the integer 1)
- add_nodes_from now won’t delete edges if nodes added already exist
- Added missing names to generated graphs
- Indexes for nodes in graphs start at zero by default (was 1)
NetworkX 0.25¶
Release date: 5 December 2005
New features¶
- Uses setuptools for installation http://peak.telecommunity.com/DevCenter/setuptools
- Improved testing infrastructure, can now run python setup.py test
- Added interface to draw graphs with pygraphviz https://networkx.lanl.gov/pygraphviz/
- is_directed() function call
Examples¶
- Email example shows how to use XDiGraph with Python objects as edge data
Documentation¶
- Reformat menu, minor changes to Readme, better stylesheet
Bug fixes¶
- use create_using= instead of result= keywords for graph types in all cases
- missing weights for degree 0 and 1 nodes in clustering
- configuration model now uses XGraph, returns graph with identical degree sequence as input sequence
- fixed Dijkstra priority queue
- fixed non-recursive toposort and is_directed_acyclic graph
NetworkX 0.24¶
Release date: 20 August 2005
Bug fixes¶
- Update of Dijkstra algorithm code
- dfs_successor now calls proper search method
- Changed to list comprehension in DiGraph.reverse() for python2.3 compatibility
- Barabasi-Albert graph generator fixed
- Attempt to add self loop should add node even if parallel edges not allowed
NetworkX 0.23¶
Release date: 14 July 2005
The NetworkX web locations have changed:
http://networkx.lanl.gov/ - main documentation site http://networkx.lanl.gov/svn/ - subversion source code repository https://networkx.lanl.gov/trac/ - bug tracking and info
Important Change¶
The naming conventions in NetworkX have changed. The package name “NX” is now “networkx”.
The suggested ways to import the NetworkX package are
- import networkx
- import networkx as NX
- from networkx import *
New features¶
- DiGraph reverse
- Graph generators
- watts_strogatz_graph now does rewiring method
- old watts_strogatz_graph->newman_watts_strogatz_graph
Examples¶
Documentation¶
- Changed to reflect NX-networkx change
- main site is now https://networkx.lanl.gov/
Bug fixes¶
- Fixed logic in io.py for reading DiGraphs.
- Path based centrality measures (betweenness, closeness) modified so they work on graphs that are not connected and produce the same result as if each connected component were considered separately.
NetworkX 0.22¶
Release date: 17 June 2005
New features¶
- Topological sort, testing for directed acyclic graphs (DAGs)
- Dijkstra’s algorithm for shortest paths in weighted graphs
- Multidimensional layout with dim=n for drawing
- 3d rendering demonstration with vtk
- Graph generators
- random_powerlaw_tree
- dorogovtsev_goltsev_mendes_graph
Examples¶
- Kevin Bacon movie actor graph: Examples/kevin_bacon.py
- Compute eigenvalues of graph Laplacian: Examples/eigenvalues.py
- Atlas of small graphs: Examples/atlas.py
Documentation¶
- Rewrite of setup scripts to install documentation and tests in documentation directory specified
Bug fixes¶
- Handle calls to edges() with non-node, non-iterable items.
- truncated_tetrahedral_graph was just plain wrong
- Speedup of betweenness_centrality code
- bfs_path_length now returns correct lengths
- Catch error if target of search not in connected component of source
- Code cleanup to label internal functions with _name
- Changed import statement lines to always use “import NX” to protect name-spaces
- Other minor bug-fixes and testing added


|
Atom highlighted by mouse over:
Bond highlighted by mouse over: |
Atom colors: | Bond colors: | Palette colors: |
Note: All atom, bond and molecule indices start at 1.
public void setAtomToHighLight(int molIndex, int atomIndex)
The hightlight is temporary.
public void setCallBack(String callbackName, JavaScriptObject callbackFunction)
Generic call back. The callback function is a JavaScript function that receives an instance of JSMEevent.
See {@link #getAlldefinedCallBackNames()} for all predefined callback names.
@param callbackName
@param callbackFunction.
public void setAtomBackgroundColors(int molIndex, String atomAndColorCSV)
atomAndColorCSV must be an integer between 0 and 6. 0 means no background color. molIndex can be 0.
public void resetAtomColors(int molIndex)


by Kayman Carrington
Posted on April 7, 2016
We have been learning logarithms for a couple of days
”log” is logarithms for short, by definition “the logarithm is the inverse operation to exponentiation. That means the logarithm of a number is the exponent to which another fixed value, the base, must be raised to produce that number.”You can put logarithms in the calculator.
There are 3 main parts to a logarithm a exponent, a base, and a fixed value.
There are many ways to put logarithms in the calculator. By pressing “Log” on the calculator you have discovered a shortcut to actually typing it in. Then all you would have to do is type in your numbers.
...by shortening the labours doubled the life of the astronomer. On the benefit of Napier's logarithms.
”Logs” or logarithms are used to make exponent equations sinple.


Why is the method signature for the equals method in a Hokie class:
boolean equals(Object obj)
and not:
boolean equals(Hokie obj)
So that it overrides the equals method defined for the Object class
- So that it works the same as the == operator
- So that two Objects can be considered equal without concern over their class
- So that it overloads any equals methods defined for the superclasses of the Hokie class.
There are no hints for this question


Remember that using an unencrypted WiFi network means anyone in range can read your communication. Hence, we strongly recommend using TLS for accessing the gokrazy web interface and doing updates.
To make gokrazy connect to a WiFi network, first include the
github.com/gokrazy/wifi
package in your gokr-packer
command line, e.g.:
gokr-packer \
-tls=self-signed \
-update=yes \
github.com/gokrazy/hello \
github.com/gokrazy/breakglass \
github.com/gokrazy/serial-busybox \
github.com/gokrazy/wifi
Then, configure the wifi
program by creating the file wifi.json
on the
permanent data partition:
# The following assumes you already created a file system
# on the permanent data partition. Otherwise, please use:
# sudo mkfs.ext4 /dev/disk/by-partuuid/2e18c40c-04
sudo mount /dev/disk/by-partuuid/2e18c40c-04 /mnt
echo '{"ssid": "I/O Tee"}' | sudo tee /mnt/wifi.json
sudo umount /mnt
After starting gokrazy, the wifi
program will connect to the WiFi network I/O Tee
:
In case you have trouble getting your Raspberry Pi to connect to your network, this is how I set up my TP-LINK TL-WDR4300 with OpenWrt 19.07:
The MAC address filter isn’t a security measure, but prevents others from accidentally joining this open network.


*About 0.4MT of CO2 is absorbed with 1 acre of carbon sequestrated agriculture.
*About 0.0025MT of CO2 is absorbed with 1 acre of forests.
{{country.co2_mt}}
{{country.eta || 'N/A'}}


Local Map of GPS
Select
IMAGE TOPIC
to display
Location Marker
Click on Location to Add Marker
Clear Map :
Set
YAW
value using the slider to hover
Value:
(deg)


first page
aaa bbb
list1
list2
second page
before code block
code block aaa
after code block
third page
a


File Upload
This controls provides an easy way to upload files as part of the form you submit. It encodes file with base64 encoding, same as email attachments. This method simplifies file uploads, but become inefficient if file size grows over 50mb or so.


--- layout: default-wide permalink: /404.html title: 404 Not Found --- 404 Sorry, we can't find the page you are looking for.


Kelvin Fletcher shocks fans with painful bruises from Strictly rehearsals
He made it through this weekend
by Rebecca CarterKelvin Fletcher has showed off his painful-looking bruises from his Strictly Come Dancing rehearsals.
The former Emmerdale actor, 35, shared a photo to Instagram at the weekend showing the bruises on his thighs.
Standing in the mirror, Kelvin sported a pair of stripey pants as his muscly thighs were covered in huge red marks.
Read more: Strictly Come Dancing viewers in tears as Kelvin Fletcher pays emotional tribute to his wife
Kelvin captioned the post: "Rugby? No. Paintball? No. Dancing? Yes."
His professional partner Oti Mabuse commented: "Don’t be a queen about it... get dressed and let’s go dance."
Former Coronation Street actor Ryan Thomas wrote: "How's that happened?" followed by a laughing face emoji.
Fans were also baffled over what had happened, with many squirming over the injuries.
One person said: "Holy crap! You're really suffering. Total respect."
Another wrote: "Ouch!!!!!"
A third added: "They look bad! How on earth has that happened?!"
Kelvin made it through to the quarter finals next weekend after he and Oti bagged 38 points out of 40 for their Street/Commercial performance.
After making it through, Oti shared a photo of herself and Kelvin to Instagram and said she's "so proud and excited to start working on next week's musical".
She wrote: "Teamfloti!!!!! Wow thank you sooooooooooooooo much for EVERYTHING!
Read more: Strictly Come Dancing: Kelvin Fletcher and Karim Zeroual top the leaderboard
"We are through to musicals week the quarter final and we couldn’t have done it without you... so proud and excited to start working on next weeks musical. I’m still screaming THANK YOU!!!!! (sic)"
Saffron Barker and AJ Pritchard were sent home this weekend after finding themselves in the bottom two alongside Karim Zeroual and Amy Dowden.
A teary Saffron said during last night's results show: "I've had the time of my life and it's all down to AJ."
Leave us a comment on our Facebook page @EntertainmentDailyFix and let us know what you think of this story.


Our students Apply skills they've want to learn on the real world project getting their name out there and the gaining experties in the field
Our students Apply skills they've want to learn on the real world project getting their name out there and the gaining experties in the field
Our students Apply skills they've want to learn on the real world project getting their name out there and the gaining experties in the field


--- layout: default title: "Touch \"slide to unlock\" in Mobile Safari" ---
I've been reading a bit about implementing touch interfaces recently at work. I didn't realize that, for the most part, it's as easy as attaching Javascript touch events to DOM elements - just like you would with any other events in Javascript. The other thing that is a major help with Mobile Safari development is using the new CSS3 properties for animations and such. Thankfully, since you're primarily tagerting Mobile Safari/Webkit, you don't need to worry too much about cross-browser issues.
Last week, Chris Coyier wrote an article over on CSS Tricks about recreating the iphone "slide to unlock" text in Webkit/CSS3. I thought this would be a perfect opportunity to play around and take it one step further to add touch support for iphone and ipad (again, just as an experiment).
Check out the finished demo on ipad, iphone or ipod touch.
The markup is pretty much the same as Chris'. I DID add an id to the arrow slider so that my Javascript would have a DOM hookup.

 slide to unlock

I copied pretty much all of Chris' CSS as well. I did however remove some of the work he did to get the cool animated text highlight since it was messing with some of the Webkit animations I added (and it wasn't really the goal of my experiment). Here is the CSS I've added:
#well { -webkit-transition: opacity 0.4s ease-out; }
This takes care of the fade out animation once you've slid it far enough to unlock. Technically, we'll handle the slide back animation for when you haven't slid the slider far enough in CSS as well, but we'll get to that in the Javascript part.
Here's my final combined CSS:
/* CSS-Tricks Example by Chris Coyier http://css-tricks.com */ * { margin: 0; padding: 0; } html { background: black; } body { font: 14px Georgia, serif; background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0, #3b3b3b),color-stop(1, #000000)); background-repeat: no-repeat; min-height: 350px; color:#fff; } #page-wrap { width: 720px; margin: 0 auto; padding-top: 100px; } #well { padding: 14px 20px 20px 20px; -webkit-border-radius: 30px; -moz-border-radius: 30px; border-radius: 30px; background: -moz-linear-gradient(top, #010101, #181818); background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #010101),color-stop(1, #181818)); border: 2px solid #454545; overflow: hidden; -webkit-transition: opacity 0.4s ease-out; } h2 { background: -moz-linear-gradient(left, #4d4d4d, 0.4, #4d4d4d, 0.5, white, 0.6, #4d4d4d, #4d4d4d); background: -webkit-gradient(linear,left top,right top,color-stop(0, #4d4d4d),color-stop(0.4, #4d4d4d),color-stop(0.5, white),color-stop(0.6, #4d4d4d),color-stop(1, #4d4d4d)); -moz-background-clip: text; -webkit-background-clip: text; /* -moz-text-fill-color: transparent; -webkit-text-fill-color: transparent; */ -webkit-animation: slidetounlock 5s infinite; font-size: 80px; font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; font-weight: 300; padding: 0; width: 200%; } h2 img { vertical-align: middle; }
Now for the Javascript fun:
function $(id){ return document.getElementById(id); } $('slider').addEventListener('touchmove', function(event) { event.preventDefault(); var el = event.target; var touch = event.touches[0]; curX = touch.pageX - this.offsetLeft - 73; if(curX <= 0) return; if(curX > 550){ $('well').style.opacity = 0; } el.style.webkitTransform = 'translateX(' + curX + 'px)'; }, false); $('slider').addEventListener('touchend', function(event) { this.style.webkitTransition = '-webkit-transform 0.3s ease-in'; this.addEventListener( 'webkitTransitionEnd', function( event ) { this.style.webkitTransition = 'none'; }, false ); this.style.webkitTransform = 'translateX(0px)'; }, false);
To capture touch events in Webkit, you'll mostly be working with the touchstart, touchmove and touchend events. After attaching the Javascript touch events, we just have to position the slider button based on the page coordinates of your finger, and trigger our CSS3 animations. I've offset the x-axis position an additional 73px (half of our slider image) to position the touch point for the slider in the middle of the image.
We only neeed to worry about the movement along the x-axis, so we use the translateX function with the -webkit-transform property. The nice thing about Safari is that it will trigger animations automatically when your declared properties are changed - in this case "opacity". These implicit animations also only apply to certain properties.
To get the button to slide back to the starting position when the user releases their finger, we use the touchend event to add the -webkit-transition property to our button. Unfortunately, to avoid funkiness from conflicting events, we need to programmatically apply and remove the transition in the touchend event. We do this by attaching a webkitTransitionEnd event to the object and then setting the CSS property to "none".
This was a fun little experiment to get started using Mobile Safari's touch capabilities. Currently, I've only gotten this working on iphone, ipod touch and ipad. I may play around with trying to get it to work on Android, so if anyone has any suggestions please let me know.


\[ \newcommand{\Prob}{\operatorname{P}} \newcommand{\E}{\operatorname{E}} \newcommand{\Var}{\operatorname{Var}} \newcommand{\Cov}{\operatorname{Cov}} \newcommand{\se}{\operatorname{se}} \newcommand{\re}{\operatorname{re}} \newcommand{\ybar}{{\overline{Y}}} \newcommand{\phat}{{\hat{p}}} \newcommand{\that}{{\hat{T}}} \newcommand{\med}{{\tilde{Y}}} \]
crabs_data <-
read_csv(
file = "http://grahamst.at/projects/STAT_541/STAT_541_Assignments/data/Week_05_Data_4.09.csv"
) %>%
mutate(
satell_bool = if_else(satell > 0, 1, 0)
,c1 = if_else(color == 1, 1, 0 )
,c2 = if_else(color == 2, 1, 0 )
,c3 = if_else(color == 3, 1, 0 )
,color = color + 1
)
## Parsed with column specification:
## cols(
## color = col_integer(),
## spine = col_integer(),
## width = col_double(),
## satell = col_integer(),
## weight = col_double()
## )
logit_reg_4.09a <- glm(satell_bool ~ c1 + c2 + c3, data = crabs_data, family = "binomial")
summary(logit_reg_4.09a)
##
## Call:
## glm(formula = satell_bool ~ c1 + c2 + c3, family = "binomial",
## data = crabs_data)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1.6651 -1.3370 0.7997 0.7997 1.5134
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -0.7621 0.4577 -1.665 0.095910 .
## c1 1.8608 0.8087 2.301 0.021393 *
## c2 1.7382 0.5123 3.393 0.000692 ***
## c3 1.1299 0.5509 2.051 0.040289 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 225.76 on 172 degrees of freedom
## Residual deviance: 212.06 on 169 degrees of freedom
## AIC: 220.06
##
## Number of Fisher Scoring iterations: 4
\[ \ln\left( \theta \right) = -0.7621 + 1.8608c_{1} + 1.7382c_{2} + 1.1299c_{3} \] That is, on average for a medium light crab, the log odds in favour increase by 1.8608 compared to a dark crab, based on the sample. Or the average odds in favour increase by a multiplicative factor of \(e^{1.8608} = 6.4286\), based on the sample.
pchisq(
q = logit_reg_4.09a$null.deviance - logit_reg_4.09a$deviance
,df = logit_reg_4.09a$df.null - logit_reg_4.09a$df.residual
,lower.tail = FALSE
)
## [1] 0.003346919
We therefore reject our null hypothesis that the models have similar levels of deviance, and accept the alternative that they differ, based on the sample. That is, colour does play a role in predicting if a crab has satellites.
logit_reg_4.09c <- glm(satell_bool ~ color, data = crabs_data, family = "binomial")
summary(logit_reg_4.09c)
##
## Call:
## glm(formula = satell_bool ~ color, family = "binomial", data = crabs_data)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1.9103 -1.2719 0.8142 0.8142 1.3937
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.0781 0.7577 4.062 4.86e-05 ***
## color -0.7147 0.2095 -3.412 0.000645 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 225.76 on 172 degrees of freedom
## Residual deviance: 213.30 on 171 degrees of freedom
## AIC: 217.3
##
## Number of Fisher Scoring iterations: 4
\[ \ln\left( \theta \right) = 3.0781 - 0.7147Colour \] As you move each step up the colour scale, with 2 being medium light, and 5 being dark, on average the log odds in favour decrease by 0.7147, or the odds decrease by a multiplicative factor of \(e^{-0.7147} = 0.4893\), based on the sample.
pchisq(
q = logit_reg_4.09c$null.deviance - logit_reg_4.09c$deviance
,df = logit_reg_4.09c$df.null - logit_reg_4.09c$df.residual
,lower.tail = FALSE
)
## [1] 0.0004156143
Therefore we reject the null hypothesis that the models explain the same amount of variance, and accept that the more complicated model is better based on the sample.
The advantage of quantitative colour, is we set the \(df\) in the likelihood ratio test to 1, giving a more powerful test, but if there is a non-linear relationship between colour and the log odds in favour (polynomial, exponential, etc), this model may not capture it.
\[ \frac{\theta_{\text{Spouse}}}{\theta_{\text{Alone}}} = 2.02, \frac{\theta_{\text{Others}}}{\theta_{\text{Alone}}} = 1.71 \implies \frac{\theta_{\text{Spouse}}}{\theta_{\text{Others}}} = \frac{2.02}{1.71} = 1.18 \] \[ \frac{\theta_{\text{Medium Income}}}{\theta_{\text{Low Income}}} = 0.72, \frac{\theta_{\text{High Income}}}{\theta_{\text{Low Income}}} = 0.41 \implies \frac{\theta_{\text{High Income}}}{\theta_{\text{Medium Income}}} = \frac{0.41}{0.72} = 0.57 \]
myers_data <-
tibble(
Personality = c(
rep("ESTJ", times = 10 + 67)
,rep("ESTP", times = 8 + 34)
,rep("ESFJ", times = 5 + 101)
,rep("ESFP", times = 7 + 72)
,rep("ENTJ", times = 3 + 20)
,rep("ENTP", times = 2 + 16)
,rep("ENFJ", times = 4 + 27)
,rep("ENFP", times = 15 + 65)
,rep("ISTJ", times = 17 + 123)
,rep("ISTP", times = 3 + 49)
,rep("ISFJ", times = 6 + 132)
,rep("ISFP", times = 4 + 102)
,rep("INTJ", times = 1 + 12)
,rep("INTP", times = 5 + 30)
,rep("INFJ", times = 1 + 30)
,rep("INFP", times = 6 + 73)
)
,Alcohol = c(
rep(c(1, 0), times = c(10, 67))
,rep(c(1, 0), times = c(8, 34))
,rep(c(1, 0), times = c(5, 101))
,rep(c(1, 0), times = c(7, 72))
,rep(c(1, 0), times = c(3, 20))
,rep(c(1, 0), times = c(2, 16))
,rep(c(1, 0), times = c(4, 27))
,rep(c(1, 0), times = c(15, 65))
,rep(c(1, 0), times = c(17, 123))
,rep(c(1, 0), times = c(3, 49))
,rep(c(1, 0), times = c(6, 132))
,rep(c(1, 0), times = c(4, 102))
,rep(c(1, 0), times = c(1, 12))
,rep(c(1, 0), times = c(5, 30))
,rep(c(1, 0), times = c(1, 30))
,rep(c(1, 0), times = c(6, 73))
)
) %>%
# If the stated letter appears in the personality column, place a 1,
# otherwise place a 0.
mutate(
`E/I` = if_else(grepl(pattern = "E", x = Personality), 1, 0)
,`S/N` = if_else(grepl(pattern = "S", x = Personality), 1, 0)
,`T/F` = if_else(grepl(pattern = "T", x = Personality), 1, 0)
,`J/P` = if_else(grepl(pattern = "J", x = Personality), 1, 0)
)
myers_data
## # A tibble: 1,050 x 6
## Personality Alcohol `E/I` `S/N` `T/F` `J/P`
## <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 ESTJ 1 1 1 1 1
## 2 ESTJ 1 1 1 1 1
## 3 ESTJ 1 1 1 1 1
## 4 ESTJ 1 1 1 1 1
## 5 ESTJ 1 1 1 1 1
## 6 ESTJ 1 1 1 1 1
## 7 ESTJ 1 1 1 1 1
## 8 ESTJ 1 1 1 1 1
## 9 ESTJ 1 1 1 1 1
## 10 ESTJ 1 1 1 1 1
## # ... with 1,040 more rows
logit_reg_4.16a <- glm(
Alcohol ~ `E/I` + `S/N` + `T/F` + `J/P`
,data = myers_data
,family = "binomial"
)
summary(logit_reg_4.16a)
##
## Call:
## glm(formula = Alcohol ~ `E/I` + `S/N` + `T/F` + `J/P`, family = "binomial",
## data = myers_data)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -0.7179 -0.4775 -0.4036 -0.3279 2.5069
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -2.4668 0.2429 -10.154 < 2e-16 ***
## `E/I` 0.5550 0.2170 2.558 0.01053 *
## `S/N` -0.4292 0.2340 -1.834 0.06663 .
## `T/F` 0.6873 0.2206 3.116 0.00184 **
## `J/P` -0.2022 0.2266 -0.893 0.37209
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 646.83 on 1049 degrees of freedom
## Residual deviance: 627.49 on 1045 degrees of freedom
## AIC: 637.49
##
## Number of Fisher Scoring iterations: 5
\[ \ln\left( \theta \right) = -2.4668 + 0.5550\text{E/I} - 0.4292\text{S/N} + 0.6873\text{T/F} - 0.2022\text{J/P} \] Where the first letter for each coefficient is coded as a 1, and the second letter as a 0.
predict(
object = logit_reg_4.16a
,newdata =
tibble(
`E/I` = 1
,`S/N` = 1
,`T/F` = 1
,`J/P` = 1
)
,type = "response")
## 1
## 0.135186
predict(
object = logit_reg_4.16a
,newdata =
tibble(
`E/I` = 1
,`S/N` = 0
,`T/F` = 1
,`J/P` = 0
)
,type = "response")
## 1
## 0.2271486
It is the response that has all the positive coefficients set to 1, and the negative coefficients set to 0.
logit_reg_4.17a <- glm(
Alcohol ~ `E/I` + `T/F`
,data = myers_data
,family = "binomial"
)
summary(logit_reg_4.17a)
##
## Call:
## glm(formula = Alcohol ~ `E/I` + `T/F`, family = "binomial", data = myers_data)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -0.5923 -0.4515 -0.4480 -0.3388 2.4027
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -2.8291 0.1955 -14.470 < 2e-16 ***
## `E/I` 0.5805 0.2160 2.687 0.00721 **
## `T/F` 0.5971 0.2152 2.774 0.00554 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 646.83 on 1049 degrees of freedom
## Residual deviance: 632.74 on 1047 degrees of freedom
## AIC: 638.74
##
## Number of Fisher Scoring iterations: 5
predict(
object = logit_reg_4.17a
,newdata =
tibble(
`E/I` = 0
,`T/F` = 0
)
,type = "response")
## 1
## 0.05576985
\[ e^{\beta_{\text{E/I}}} = e^{0.5805} = 1.7869 \] The odds in favour on average increases by a mulitplicative factor 1.7869 for extroverted personalities vs. introverted personalities, based on the sample.
confint(object = logit_reg_4.17a, level = 0.95) %>%
exp %>%
round(4)
## Waiting for profiling to be done...
## 2.5 % 97.5 %
## (Intercept) 0.0396 0.0853
## `E/I` 1.1722 2.7400
## `T/F` 1.1907 2.7747
With 95% confidence, the true value of the conditional odds ratio between E/I and the response lies between 1.1722 and 2.7400 based on the sample.
\[ \beta_{\text{I/E}} = -\beta_{\text{E/I}} = -0.5805 \implies e^{\beta_{\text{I/E}}} = \frac{1}{e^{\beta_{\text{E/I}}}} = e^{-0.5805} = 0.5596 \] 95% CI for the conditional odds ratio between I/E and the response: \[ \left[\frac{1}{2.7400}, \frac{1}{1.1722} \right] = [0.3650, 0.8531] \] With 95% confidence, the true value of the conditional odds ratio between I/E and the response lies between 0.3650 and 0.8531 based on the sample.
logit_reg_4.17e <- glm(
Alcohol ~ `T/F`
,data = myers_data
,family = "binomial"
)
summary(logit_reg_4.17e)
##
## Call:
## glm(formula = Alcohol ~ `T/F`, family = "binomial", data = myers_data)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -0.5112 -0.5112 -0.3917 -0.3917 2.2829
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -2.5291 0.1500 -16.862 < 2e-16 ***
## `T/F` 0.5601 0.2139 2.619 0.00883 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 646.83 on 1049 degrees of freedom
## Residual deviance: 640.02 on 1048 degrees of freedom
## AIC: 644.02
##
## Number of Fisher Scoring iterations: 5
anova(logit_reg_4.17e, logit_reg_4.17a, test = "Chisq")
## Analysis of Deviance Table
##
## Model 1: Alcohol ~ `T/F`
## Model 2: Alcohol ~ `E/I` + `T/F`
## Resid. Df Resid. Dev Df Deviance Pr(>Chi)
## 1 1048 640.02
## 2 1047 632.74 1 7.2847 0.006955 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Using the likelihood ratio test, comparing the two models, a p-value of 0.006955 is observed. So at \(\alpha=0.05\) the null hypothesis of equivalent explained variance is rejected, and it can be assumed that E/I plays a statistically significant effect based on the sample.
logit_reg_4.19 <- function(Gender, Religion, Political){
log_odds <-
-0.11 +
if_else(Gender == "M", 0.0, 0.16) +
if_else(Religion == "J", 0.0, if_else(Religion == "C", -0.66, -0.57)) +
if_else(Political == "I", 0.0, if_else(Political == "R", -1.67, 0.84))
log_odds
}
\[ OR_{\text{Gender}} = e^{\hat{\beta}_{1}^{G} - \hat{\beta}_{2}^{G}} = e^{0.16 - 0} = 1.1735 \] Holding all else equal, the odds of supporting legalized abortion increases on average by a multiplicative factor of 1.1735 for females vs. males.
log_odds_MCR <- logit_reg_4.19(Gender = "M", Religion = "C", Political = "R")
prob_MCR <- exp(log_odds_MCR)/(1 + exp(log_odds_MCR))
prob_MCR
## [1] 0.08017291
log_odds_FJD <- logit_reg_4.19(Gender = "F", Religion = "J", Political = "D")
prob_FJD <- exp(log_odds_FJD)/(1 + exp(log_odds_FJD))
prob_FJD
## [1] 0.7088902
\[ \hat{\beta}_{2}^{G} = 0.16 \implies OR_{\text{Gender}} = e^{\hat{\beta}_{1}^{G} - \hat{\beta}_{2}^{G}} = e^{0 - 0.16} = 0.8521 \] Holding all else equal, the odds of supporting legalized abortion decreases on average by a multiplicative factor of 0.8521 for males vs. females.
\[ \hat{\beta}_{1}^{G} + \hat{\beta}_{2}^{G} = 0, \hat{\beta}_{1}^{G} - \hat{\beta}_{2}^{G} = 0.16 \implies \hat{\beta}_{1}^{G} = 0.08, \hat{\beta}_{2}^{G} = -0.08 \implies \] \[ OR_{\text{Gender}} = e^{0.08-(-0.08)} = e^{0.16} = 1.1735 \]
The odds in favour of getting condoms increases on average by a multiplicative factor of 4.04 for those who wached the video, vs. those who didn’t based on the sample. With 95% confidence the true value of said odds ratio is between 1.17 and 13.9.
\[ \ln\left( \theta_{\text{Condoms}} \right) = \hat{\beta_{0}} + \ln 4.04x_{\text{Group}} + \ln 1.38x_{\text{Gender}} + \ln 5.82x_{\text{SES}} + \ln 3.22x_{\text{Num. of Partners}} \implies \] \[ \ln\left( \theta_{\text{Condoms}} \right) = \hat{\beta_{0}} + 1.40x_{\text{Group}} + 0.32x_{\text{Gender}} + 1.76x_{\text{SES}} + 1.17x_{\text{Num. of Partners}} \]
\[ \hat{\beta}_{\text{Gender}} = \frac{\ln 1.23 + \ln 12.88}{2} = 1.3813 \approx 1.38 \neq \ln 1.38 = 0.3221 \implies \] \[ OR_{\text{Gender}} = e^{1.38} = 3.9803 \approx 3.98 \] Therefore, if the confidence interval is correct the log odds ratio for gender must be 1.38, giving an estimated odds ratio of 3.98.


--- title: Dallas investor Centennial Real Estate makes billion-dollar mall buy class: latest-news parent: Latest News categories: ---
A Dallas real estate investment company has made one of the largest shopping center buys in the country this year, acquiring five regional malls in a deal valued at more than $1 billion. Centennial Real Estate Co. teamed up with USAA Real Estate and Montgomery Street Partners to purchase the malls from Australia-based Westfield Corp.
The purchase includes shopping centers in California, Illinois, Connecticut and Washington State.
“These are excellent malls – high quality regional centers in major markets,” said Steven Levin, Centennial Real Estate’s chief executive officer. “They are in irreplaceable locations where you can’t build today. “They provide a tremendous opportunity for us.”
The shopping centers contain more than 6 million square feet of space and are 97 percent leased. Levin said previous owner Westfield made significant upgrades to the properties but decided to reduce its U.S. holdings.
“We started working with them about a year ago,” Levin said. “This sale took a long time.”
The acquisition marks a huge increase in activity for Centennial, which has been in business since 1997. The company already owned two shopping malls in Colorado and California.
In the Dallas area, Centennial owns smaller shopping centers in Allen, Richardson, Colleyville, Flower Mound, Dallas and Mesquite. Levin said the shopping malls the firm just purchased have already made the transition for a new generation of shoppers.
“Malls are not just about shopping anymore,” he said. “The really good malls are also about dining, entertainment, fitness and a variety of uses to make people go there. “These are malls that have been really well maintained and brought into the current evolution of where the business is going.”
He said its Centennial’s first such deal with San Antonio-based USAA Real Estate.
“They are spectacular financial partners and we hope to do more with them.”


Wearable devices promise to be one of the next leading technologies, however they still struggle to emerge from the research laboratories. Perhaps it would be interesting to explore new ways to look at these kind of devices: aim of this paper is to discuss a new design space for wearable devices where they are not useful only to the wearer but also to an occasional glancer.
The design space has been obtained through two field studies which gave an understanding of what kind of information should be conveyed in a wearable device and how it should be displayed. Finally it is also presented a possible implementation of those concepts through the developing of a prototype.


|
Carlyle GroupThe Carlyle Group is a private equity fund, sort of like a invitation-only mutual fund, formed in a 1987 meeting between David Rubenstein and William Conway Jr. at the Carlyle Hotel in Washington. Its assets are around $12 billion, which is actually quite a lot of money to control if you demand profits on it. Those profits thus far have been about 35% per year, very impressive. Carlyle is the 11th largest defense contractor in the United States, and has numerous ventures everywhere -- for instance, a $50M/yr contract training the Saudi Arabia National Guard.What makes Carlyle a bit different than ordinary funds is that certain people of influence use their extra-fund connections to benefit the greater good of the fund. Foremost among these is Frank Carlucci, and if you wondered why an $11 billion Crusader defense system is still alive after being dis-recommended by the Pentagon, you need only look this far. Bailed out Euro Disney. Conspiracy nutjobs see the Carlyle Group as something evil. It's just about money, that's all. Partners and Former Partners
|


BERKSHIRE HATHAWAY INC. 3555 Farnam Street Suite 1440 Omaha, NE 68131 Official Home Page
FOR A NEW CAR INSURANCE RATE QUOTE THAT COULD SAVE YOU SUBSTANTIAL MONEY WWW.GEICO.COM OR CALL 1-888-395-6349, 24 HOURS A DAY
If you have any comments about our WEB page, you can either write us at the address shown above or email us at<EMAIL_ADDRESS>However, due to the limited number of personnel in our corporate office, we are unable to provide a direct response.
Legal Disclaimer
Copyright 1978-2014 Berkshire Hathaway Inc.


CORONAVIRUS STATS
COUNTRY
NUM DEATHS
NUM INFECTED
NUM CURED
Country name
Search
NAME
VALUE
REGION
NUM DEATHS
NUM INFECTED
NUM CURED


Change Log
- Removed restriction preventing multiple postings for a position within a location
- Updated styling for informative messages, to differentiate from titles and headings
- Updated informative messages to be more consistent and prominent
- Updates message in Settings to provide more helpful information when the Job Groups setting is disabled
- Added CSS classes to Job Details module so that each part of the module can be styled independently
- Added logic to differentiate the emails sent when an application is update, versus when it is first submitted
- Fixed a blank error message
- Fixed a bug where the mode of the Rich Text Editor couldn't be changed when adding a position
- Fixed a bug where URLs in emails were relative to the site (i.e., didn't contain the host)
- More details can be found on the Engage: Employment Change Log


This is interpreted as a command name ending with '/'. Double check syntax.
df/
df /
ShellCheck found a command name that ends with /
. Since directories are not valid commands, this is always wrong.
The most common reason is bad quoting or escaping, such as in the example where a space was missing between a command and its argument.
None


The PlotDevice Database library offers a very easy way to store data and browse through it. The commands are simple and straightforward (no knowledge of SQL is needed) but the database-capabilities limited. The library builds upon PySQLite, and the data itself is stored in a portable SQLite database. This means the database is just another file in your project folder that you can copy and redistribute along with your PlotDevice-scripts.
If you need a viewer application for the SQLite database you can download the free SQLite Database Browser and bundle it with your
project. There’s also a Firefox
extension.
| database.zip (140KB) Last updated for NodeBox 1.9.2 Author: Tom De Smedt |
Put the downloaded database folder in ~/Library/Application Support/PlotDevice/
or in the same folder as your script so PlotDevice can find the library. Then import the library
in your script:
database = ximport("database")
db = database.create(name, overwrite=True)
db = database.connect(name)
The create() command starts a new database file with the given name in the current folder (a .db file extension is added automatically). The connect() command opens an existing database file. Both commands return a Database object which you can use in your script to create tables or retrieve data.
A database is organised in tables that hold different records of data. For example, a persons table could store name, address, age and email information for each person in the table.
db.create_table(name, fields=[], key="id")
db.create_index(table, field, unique=False, ascending=True)
Once you have a Database object returned from create() or open() you can use its create_table() method to start new tables. You need to supply a name for the table and list of fields in the table. The optional key parameter defines the name of an id-field. An id stores a unique number for each record of data.
Aside from the id-field you can create your own indexes on a table with the create_index() method. Indexes in a database makes things go faster: if we are going to perform a lot of search queries on the age field in the persons table it’s a good idea to index that field. When you define the unique parameter as True, the indexed field must be a unique value for each record in the table.
book = database.create("book") book.create_table("pages", ["title", "text", "image", "pagenumber"]) book.create_index("pages", "title")
Find out what tables are in the database with a for-loop:
for table in book: print table.name >>> pages
Once the database has one or more tables you can retrieve these as Table objects. Table objects have various methods to add, edit and retrieve data.
table = db.table_name
table = db[table_name]
You can retrieve a Table object by accessing the database as a list or by directly typing the name of the table after the dot:
book = database.create("book") book.create_table("pages", ["title", "text", "image", "pagenumber"]) pages = book["pages"] pages = book.pages # this is even easier
table.append(fields)
table.edit(id, fields)
table.remove(id, operator="=", key=None)
The append() method adds a new record with the given fields of data to the table. The fields can be a dictionary or a number of parameters specifying the names of the fields and the data in each field. You don’t need to supply a value for the id-field - this is a number that is automatically incremented.
book = database.create("book") book.create_table("pages", ["title", "text", "image", "pagenumber"]) book.pages.append({ "title": "Chapter One", "text": "A short intro on databases in PlotDevice", "pagenumber": 2 })
Here we used a dictionary to supply the field data, but named parameters are even easier:
book.pages.append(title="Chapter Two", text="", pagenumber=3)
Editing works in a similar way. You can supply fields to update as a dictionary or as named
parameters:
book.pages.edit(1, pagenumber=1)
The remove() method deletes the record with the given id from the table. The operator parameter allows you to specify a different comparison than =, >= or < for example. The key parameter allows you to specify a different field to search in.
# Delete the record with id 2: book.pages.remove(2) # Delete all pages beyond the first: book.pages.delete(2, comparison=">=", key="pagenumber")
Find out what fields are in the table with the fields() method:
print book.pages.fields() >>> ["id", "title", "text", "image", "pagenumber"]
table.find(q, operator="=", fields="*", key=None)
table.all()
The find() method returns records from the table that match a given query. By default, it returns the record whose id is equal to q. The operator parameter allows you to specify a different comparison. The key parameter allows you to specify a different field to search in.
By default, all fields from the record are returned, or you can define a list of field names
in the fields parameter.
The q parameter can contain an asterisk (*) at the start or at the end as a wildcard character.
book = db.connect("book") r = book.pages.find("Chapter *" key="title") for record in r: print record >>> (1, u'Chapter One', u'A short intro on databases in PlotDevice', None, 2) >>> (2, u'Chapter Two', u'', None, 3) # As you see the returned value is a list of tuple-values, # which is easy to unpack: for id, title, text, image, pagenumber in r: print title >>> Chapter One >>> Chapter Two
You can also query fields directly. For example, this does exactly the same as above:
r = book.pages.title("Chapter *")
To get all the records in the table you can use the all() method.
It’s faster to write records to disk in batches of, say, 10 000, than writing each record to the database file individually. Automated scripts that process a lot of records can make use of the commit() method for a significant speed increase:
db.commit(each=0)
When called without parameters, commits any pending transactions. A transaction is a call to a table’s append(), edit() or remove() method, or the database’s sql() method.
When commit() is called with the each parameter, sets the batch size. By default, transactions are committed instantly, but if you plan to add a lot of records at the same time it’s better to commit them in batch.
Do not forget to close the database when you are done with it. This commits any pending transaction that have not yet been written to disk.
db.close()
db.dump()
The dump() method generates an XML-file with all the database’s contents. XML is a standardized format to hold data. It’s pretty human readable and supported by many applications.
book = database.connect("book") book.dump() xml = open("book.xml").read() print xml
db.sql(query)
Executes an SQL-statement on the database. For example, a SELECT-query returns the list of records found.
book = db.connect("book") book.sql("select * from pages")


Stage 0 - HTML basics
The World Wide Web consist of HTML, Images, Videos, Pictures, Music, and Plain Text.
The web mainly consist of HTML, which stands for HyperText Markup Language.
To create webpages with all the nice designs and embedded files, you must put HTML tags in < name > to specify
what you want the computer to do with the webpage.
Some Examples of HTML tags are:
 - This tag makes everything BOLD
 - This tag makes everything Italic
 - This tag creates Hyperlinks

 - This tag defines the area of a paragraph

 - When using this tag, it creates a break
so you go to the next line
Their are plenty much more complex tags to throw in at a later point.
Tags can also be open <> or closed </>. When a tag is open then the text after
will remain in bold, only when you close the tag will the effects cease to continue.
The basic structure of the web is:
-The Browser
-The Internet- World's largest Cloud Network
-HTTP - Main protocol of the web
-Servers - They are computers designed to hold the searchable information.


Pat's Salmon Cookies: Sales Data
Enter New Cookie Store:
Location Name:
Minimum Customers Per Hour:
Maximum Customers Per Hour:
Average Cookie Per Customer:


Class CakeTestCase
Short description for class.
- SimpleTestCase
- UnitTestCase
- CakeTestCase
Direct known subclasses
AclComponentTest, AclNodeTest, DboSourceTest, EmailTest, FormHelperTest, ModelEngineTest, ModelTest, NumberTreeCase, PagesControllerTest, RegisterControllerTest, RegistrationRestControllerTest, RequestHandlerComponentTest, AuthTest, SanitizeTest, ScaffoldViewTest, ScheduleTestCase, SecurityComponentTest, SessionComponentTest, TranslateTest, UserRestControllerTest, ZazzleStorefrontControllerTest, CakeSchemaTest, ComponentTest, ControllerTest, CookieComponentTest, DboMssqlTest, DboMysqlTest, DboPostgresTest
Package: cake\cake\tests\lib
Copyright: Copyright 2005-2008, Cake Software Foundation, Inc.
License: The Open Group Test Suite License
Located at cake/tests/lib/cake_test_case.php
Copyright: Copyright 2005-2008, Cake Software Foundation, Inc.
License: The Open Group Test Suite License
Located at cake/tests/lib/cake_test_case.php
public
|
|
public
|
|
public
|
|
public
|
|
public
|
#
startController(
Callback issued when a controller's action is about to be invoked through testAction(). |
public
|
#
endController(
Callback issued when a controller's action has been invoked through testAction(). |
public
mixed
|
#
testAction( string $url, array $params = array() )
Executes a Cake URL, optionally getting the view rendering or what is returned when params['requested'] is set. |
public
|
|
public
|
|
public
|
|
public
|
|
public
array
|
|
public
|
|
public
|
SimpleTestCase(),
_isTest(),
assert(),
createInvoker(),
dump(),
error(),
exception(),
fail(),
getAssertionLine(),
getLabel(),
getSize(),
run(),
setUp(),
skip(),
skipIf(),
skipUnless(),
tearDown(),
tell()
|
public
array
|
$methods | array('start', 'end', 'startcase', 'endcase', 'starttest', 'endtest') |
#
Methods used internally. |
public
boolean
|
$__truncated | true |
$_label,
$_observers,
$_reporter,
$_should_skip
|


| Number of Classes | Line Coverage | Mutation Coverage |
|---|---|---|
| 4 | 71% | 54% |
| Name | Line Coverage | Mutation Coverage |
|---|---|---|
| AsyncByteArrayScanner.java | 72% |
54% |
| AsyncByteBufferScanner.java | 71% |
55% |
| AsyncByteScanner.java | 56% |
35% |
| AsyncStreamReaderImpl.java | 78% |
60% |


All the rom and CSV file processing check for only one column: "name", which is the game zip file name, without the extension (example: "altbeast").
That's it. All other columns are ignored, and are for your usage only, to filter using Excel or a similar tool. You can do whatever you want, as long as the file is a valid CSV (all lines have the same columns number, etc).
The "name" column doesn't have to be the first column and can be anywhere, as long as it has the column header.


We are experts on Google Cloud Platform. who have amassed a wealth of experience on projects right at the top of the Google Cloud Playlist
We help you create solutions today that adapt for tomorrow with Microfsoft Azure . Invent with purpose.
Better business outcomes with your data. Whether its migrating to the Cloud, Advanced Analytics or Architecture and Design, the Cloud Parlour is your place to be. We are partners who tailor solutions to the need.
We look at your current environment and evaluate what is required to truely unlock the power of Cloud
We've been involved in some of the most interesting Cloud Migrations. Move your business critical systems, apps and databases rapidly and seamlessly.
We take Cloud Security seriously. We've gone through the effort of training our people on industry best practices, complicance, data protection and policy management
Truely unlcok the power of your data. Our PHD Bods help you put the algorithm to the data!
Manual work is the thing of past. Automate your infrastructure, operations, pipelines and processes to reap the benefits of the Cloud. Technologies like Kubernetes, Composer, Terraform and Ansible help you really run it like a boss!


Services
-
Custom Software Development
Custom software serves the unique processes of your business, solves your specific problems, satisfies your exclusive needs and makes your workflows easier, faster, and more efficient.
Pricing: $1000 - $3000
-
Software Consulting Services
With deep experience in software engineering, we provide a wide range of consulting services undertaking a comprehensive analysis of your existing system, mapping out your plan on the introduction of new components, and guiding you in the complex software world.
Pricing: $500 - $1000
-
Web Portal Development
For over 4 years, SIMPLEX’s team of 50+ experts in UI design, web portal development, and testing has been building up competencies to become the right partner for your web portal project.
Pricing: $600 - $800


--- title: "Fuel prices in New South Wales - Part 2" author: "Remko Duursma" date: 2018-01-24 categories: ["R"] tags: ["spatial", "temporal"] description: "A closer look at the remarkable oscillation in fuel prices in Sydney" ---
It is no secret that gasoline and diesel prices at the pump vary from day to day and from one place to the next. Few people are aware though that a typical pattern in fuel prices looks like this:
Newspaper articles have written about this pattern, web services exist that show where you are on the cycle, and you can compare main cities across Australia. In Sydney, the cycle is about 30 days long (more about that later), and the timing of the spike increase in fuel (which takes only 2-3 days) varies little from pump to pump.
I have lots of questions about this cycle! This post will take the next step in analyzing a large open source dataset on fuel prices across New South Wales. Read my previous post about obtaining and cleaning the dataset and some broad spatial patterns, and visit this github repository for an R package with the cleaned dataset (and some basic spatial attributes of the stations).
From this point on I will focus largely on service stations in the greater Sydney area. The reason is that the reporting frequency on fuel prices is higher than remote NSW - usually daily -and because there are lots of service stations in Sydney alone (>750). This analysis - that I work on in my free time - is still well in the exploratory data analysis stage. I have many ideas for follow-up analyses, modelling, and so on - but these will depend on how much time I will have to spend on this topic!
This is an R blog, so all the below will not just show results but also the code used to generate them. You can find this reproducible document by following this direct link..
The data are stored in this R package (not on CRAN), once installed we can do:
library(fuelpricensw)
library(dplyr)
# Merge spatial attributes
fuel <- left_join(fuel, fuelstations, by = "Address")
The first step is to select all Sydney stations. I did this by drawing an awkward polygon that captures most the of more densely populated bits (because ‘Greater Sydney’ shapefiles include lots of national parks, many more remote areas, etc.), and deciding whether some station falls in the polygon.
library(ggmap)
library(sp)
# Map tile for background.
syd_map <- ggmap::get_map(c(lon = 151, lat=-33.8), zoom=10)
# Manually entered polygon for 'Sydney', excluding blue mountains etc.
syd_vert <- read.table(text="
lon lat
150.65 -34.1
150.65 -33.55
150.9 -33.55
151 -33.7
151.35 -33.7
151.27 -34.15
150.95 -33.95
150.8 -34.1",header=TRUE)
# Select stations in this polygon
in_syd <- sp::point.in.polygon(fuelstations$lon, fuelstations$lat,
syd_vert$lon, syd_vert$lat)
locsyd <- fuelstations[in_syd == 1,]
# Also add Brand (BP, shell, etc) to the locations dataframe.
fuelkey <- dplyr::select(fuel, Address, Brand, Postcode) %>% distinct
locsyd <- left_join(locsyd, fuelkey, by="Address")
# Sydney data
fuelsyd <- filter(fuel, Address %in% locsyd$Address)
A simple map shows the service stations, using the excellent ggmap
.
ggmap(syd_map) +
geom_polygon(aes(x=lon,y=lat), data=syd_vert, alpha=0.2) +
geom_point(aes(x=lon, y=lat), data=locsyd, size=0.8, col="red") +
labs(x="", y="")
Next we are going to summarize the fuel price cycles into timings of ‘price hikes’ (the sudden increase in price), the time between cycles (time to reach the minimum counting from the maximum), the time between the minimum and the maximum, the rate of decrease of price between the cycles, and so on.
To do this, I am going to approximate the fuel price timeseries by a saw pattern - by only considering the minimum and maximum fuel prices reached for each cycle. See the below figure for a few examples.
The code I developed for this analysis is quite long, and pretty terrible. One issue is that the data have to be cleaned in a variety of ways (short spikes in the data mess up any simple approach).
In the following I will only consider one of 11 fuel types, U91 (Unleaded petrol, 91 octane), the most commonly reported fuel in the database.
# ... U91 only
fuelu91syd <- filter(fuelsyd, FuelCode == "U91")
# List of dataframes, one timeseries for each service station.
# I still prefer this approach over purrr or whatever.
fuelu91syds <- split(fuelu91syd, fuelu91syd$Address)
We then apply our custom magic function to the timeseries for each of 773 service stations in Sydney.
# Using dplyr we can write some seriously concise code.
# Using fct_lump, combine rare brands into 'Other'
cycsyd <- lapply(fuelu91syds, make_cycledf) %>%
bind_rows %>%
left_join(locsyd, by="Address") %>%
filter(ndata_cycle > 5, price_hike > 5) %>%
mutate(Brand2 = forcats::fct_lump(as.factor(Brand), 6))
Here’s one of them:
The red points are the peak prices, just after the price hike has occurred, the blue symbols the minimum price reached during this cycle - just before the price hike.
Finally I prepare a dataset with the cycles themselves summarized, simply by averaging price hikes, median prices at the minimum of the cycles, and so on.
cycsyd_a <- group_by(cycsyd, Address) %>%
summarize(price_hike_median = median(price_hike, na.rm=T),
price_peak_median = median(price_peak, na.rm=T),
price_low_median = median(price_low, na.rm=T),
ndays_cycle_median = median(ndays_cycle),
dpricedt = mean(dpricedt),
lon = mean(lon), lat=mean(lat),
nr_5km = mean(nr_5km),
Brand = first(Brand),
Brand2 = first(Brand2),
Postcode = first(Postcode)
)
Now we can investigate the average ‘bottom prices’ (blue dots in the figure above), and the average ‘peak prices’ across Sydney, grouped by the different brands of service stations. Here I use the fun ggridges
packages to make semi-overlapping grouped density plots.
library(reshape2)
library(forcats)
library(ggridges)
brand_colours <- RColorBrewer::brewer.pal(7,"Set3")
datsub <- dplyr::select(cycsyd_a, Brand2, price_peak_median, price_low_median) %>%
melt(id.var = "Brand2") %>%
mutate(variable = fct_recode(variable, "peak"="price_peak_median",
"low"="price_low_median"),
Brand2 = reorder(as.factor(Brand2), value, median))
ggplot(datsub, aes(y=Brand2)) +
geom_density_ridges(aes(x=value, fill=paste(Brand2, variable)),
color="dimgrey", alpha=0.8) +
theme_tufte() +
labs(x="Price (c)", y="") +
ggtitle("Bottom price Peak price") +
theme(legend.position="none") +
scale_fill_manual(values=rep(brand_colours, each=2))
## Picking joint bandwidth of 0.909
The results quite clearly show that Metro Fuel is the cheapest of the lot, as well as Independent, which makes up a large chunk of the ‘Other’ category in the figure. Prices are otherwise remarkably similar between the brands associated with large corporations.
That’s it for now. Next up is a closer look at the timing of price hikes. Stay tuned!


{%extends 'base.html'%} {%block content%}
{{neighbourhood.name}}({{neighbourhood.location}})
{{neighbourhood.description.capitalize}}
Police Department: {{neighbourhood.police_dept}}
Health Department: {{neighbourhood.health_dept}}


Client
Product Bottling Speed Counter
Status:
Product:
Filling Line:
Start Time:
End Time:
Total Unit Count:
Total Time:
Total Average (btl/min):
Running Average (btl/min):
Running Average Period:
Start
Stop


Iran successfully tests new missile defense system
by News DeskBEIRUT, LEBANON (6:20 P.M.) – Iran on Friday successfully tested a new home-made missile defense system.
Dubbed the Khordad-15, the system, which was first introduced in June this year, was successfully tested on Friday during a military exercise in the Samnan province, the Mehr news agency reported.
The new missile defense system is able to detect various targets, including military aircraft and drones.
This new missile system can track enemy aircraft up to 150 km away and they can follow them for up to 120 km.
The system is also capable of detecting blurred targets within an 85 km radius and hitting within a range of 45 km. In addition, it can intercept six objects simultaneously.
The defense system’s movements allow military personnel to prepare air defenses to hit targets in less than 5 minutes.


This is a simple website to create URLs that follow the Zoom URL scheme. You can save the converted URL in your calendar, notes, etc. Clicking them should open the Zoom app directly, so you don’t need to open your browser.
If your meeting doesn’t have a password, just leave it blank.
Copy to Clipboard Automatically
Audio and Video
The username will be updated the next time you create a link above. To add it to the current link, just click 'Create' again.


plants
Desert Cactus
$45.00
-
+
Small Grass
$45.00
-
+
Lily
$45.00
-
+
Red Flower
$45.00
-
+
Checkout


Favorite Places
Here are some of my favorite places I have been on my travels.
In the continental US:
New York
Portland
San Francisco
Seattle
My favorite restaurants
My favorite restaurant in the US is Raoul's in NYC. Check out
their menu.