Creation of dynamic websites using javascript and frameworks, bootstrap, Materialize, etc. Clean and intuitive design, come view my work!
Audio production songwriting, editing, recording, mixing and mastering. Video production and video editing. See my projects!
Experience in early education government regulatory affairs. I know how to cut through red tape and navigate bureaucracies!
A web app, using multiple APIs to allow users to rate by dishes offered by restaurants.
Train schedule website using moment.js and javascript to dynamically list train times based inputs.
Need an expensive tool just for a short while. Find people near you who are renting out their tools.
Light installation as a part of the Baltimore Light City Festival.


| Contents | Previous | Next |
The Java Management Extensions Instrument and Agent Specification defines the concept of connectors. A connector makes a Java Management Extensions (JMX) technology MBean server accessible to remote Java technology-based clients. The client end of a connector exports essentially the same interface as the MBean server.
A connector consists of a connector client and a connector server. A connector server is attached to an MBean server and listens for connection requests from clients. A connector client is responsible for establishing a connection with the connector server. A connector client will usually be in a different Java Virtual Machine (Java VM) from the connector server, and will often be running on a different machine.
Many different implementations of connectors are possible. In particular, there are many possibilities for the protocol used to communicate over a connection between client and server.
A connector server usually has an address, used to establish connections between connector clients and the connector server. Alternatively, some connectors can provide connection stubs to establish connections. The way in which connections are established depends on the discovery and lookup technology that you use (see Chapter 6, "Discovery and Lookup Services").
This chapter outlines the different types of connector defined by the JMX Remote API specification and the protocols they use, in the following sections:
The JMX Remote API standard defines a standard protocol based on RMI. The RMI connector must be present in every implementation of the JMX Remote API.
The RMI connector supports the Java Remote Method Protocol (JRMP) transport, and optionally, the Internet Inter-Object Request Broker (ORB) Protocol (IIOP) transport.
The RMI connector over JRMP provides a simple mechanism for securing and authenticating the connection between a client and a server. This mechanism provides a basic level of security for environments using the RMI connector. Note that the generic JMXMP connector provides a more advanced level of security.
You can improve on the basic security mechanism of the RMI connector over JRMP by using an RMI socket factory so that the connection between client and server uses the Secure Socket Layer (SSL).
An optional part of the JMX Remote API, which is not included in the Java SE platform, is a generic connector. This connector can be configured by adding pluggable modules to define the following:
The JMX Messaging Protocol (JMXMP) connector is a configuration of the generic connector where the transport protocol is based on TCP and the object wrapping is native Java serialization. Security is more advanced than for the RMI connector. Security is based on the Java Secure Socket Extension (JSSE), the Java Authentication and Authorization Service (JAAS), and the Simple Authentication and Security Layer (SASL).
The generic connector and its JMXMP configuration are optional, which means that they are not always included in an implementation of the JMX Remote API. The Java SE platform does not include the optional generic connector.
While the RMI connector must be present in every implementation of the JMX Remote API, you can also implement a connector based on a protocol that is not defined in the JMX Remote API standard. A typical example of this is a connector based on a protocol that uses HTTP/S. Other protocols are also possible. The JMX specification describes how to implement a connector based on a user-defined protocol.
| Contents | Previous | Next |


Valkyria Chronicles 4 Gives Away All Its DLC For Free
by Luke PlunkettThe Steam version of Valkyria Chronicles 4 has just been updated to give everyone who owns the game all of its DLC for nothing.
Previously there had been six different updates you could buy, ranging from extra story missions to...a way to unlock swimsuit costumes.
The update simply transforms everybody’s copy of the game to the Complete Edition, which included all DLC for free to begin with. It’s live now, so you should be able to play right away.


Webpack
Webpack is a utility for bundling javascript code. This allows use to organize
our code into multiple files and use require()
and import
in javascript
meant to run in the browser.
Webpack works by resolving dependincies and concatenating javascript files into
a single bundle.js
.
Run webpack by typing npm run build
. bundle.js
will appear in ./dist/
.
Webpack Dev Server
webpack-dev-server
is a package for running a javascript development server.
Start the server by typing npm start
. Any changes you make will cause the
server to rebuild your bundle and reload your browser tab.
Hot reload
When you make changes to a file in the dependency tree of your bundle entrypoints, webpack should automatically rebuild the bundle and reload the page it is serving. If the automatic rebuild isn't triggering, it may be due to your OS limiting the number of files that can be "watched". Restarting VSCode helps sometimes, or you can increase the number of files to watch.
Bundling
The dev server will serve a generated html page. It is currently configured to
use ./web_component/HelloAxios.html
as a template to generate the page.
The files specified in module.exports.entry.components
are the target files
to bundle, and will have <script>
tags automatically inserted into the
generated page.
Any components you are developing should be specified as entrypoints for webpack.
The first file in the list is used to set up axios
for testing. There are two
files in ./util/
for setup. ./util/enableTestingHooks.js
will activate
testing mode, which will intercept requests and serve phony responses. This
allows us to test frontend API use without a backend server, which significantly
Request Proxying
The dev server is configured to proxy requests to another server if they can't
be served from the base directory. The proxy targets are defined in
webpack.config.js
:module.exports.devServer.proxy
.
This setup allows us to avoid CORS issues with our backend server.


Prince Andrew gives a 'no questions vetted' interview about his relationship with paedophile Jeffrey Epstein
It will be the first time the Duke of York has answered questions on his relationship with Epstein since 2015
by Emma Bowden PA, Victoria JonesPrince Andrew has given a "no questions vetted" interview about his relationship with paedophile Jeffrey Epstein.
It will be the first time the Duke of York has answered questions on his relationship with Epstein since 2015, when he used a public appearance at Davos in Switzerland to deny the claims.
The interview with Newsnight presenter Emily Maitlis is set to be shown on BBC Two this Saturday.
Maitlis described it on Twitter as a "no holds barred" interview, filmed at Buckingham Palace on Thursday.
The Duke has faced questions about his links with the disgraced financier, who was found dead in his prison cell in New York earlier this year where he was being held on sex trafficking charges.
An accuser of Epstein claims she was forced into a sexual encounter with the duke - an allegation he denies.
Virginia Giuffre is one of 16 women who say they were abused by Epstein, and she has previously claimed in court papers that she was forced to have sex with Andrew as a 17-year-old.
Her allegations, which Andrew denies, were struck from US civil court records in 2015 after a judge said they were "immaterial and impertinent".
Buckingham Palace has branded the allegations "false and without any foundation" and "any suggestion of impropriety with underage minors" by the duke was "categorically untrue".
The palace has previously contested reports about Andrew's relationship with Epstein, including a private jet flight they are said to have shared with Mrs Giuffre, then known as Virginia Roberts.
Dogged by accusations of a lack of judgment about his links with Epstein, Andrew has previously denied he ever suspected "any behaviour of the sort" the financier.
Andrew said in a statement on August 24: "At no stage during the limited time I spent with him did I see, witness or suspect any behaviour of the sort that subsequently led to his arrest and conviction."
He said he had "tremendous sympathy" for Epstein's victims, and reiterated that it was a "mistake" seeing the 66-year-old after the American's release from an 18-month prison term in 2010 for prostituting minors.
Epstein was found hanged in his cell on August 10 in New York while facing fresh charges of sex trafficking and conspiracy to traffic minors for sex.
The interview, recorded at Buckingham Palace on Thursday, will air on BBC Two at 9pm on Saturday.


| 1 | package fr.sii.ogham.testing.assertion.internal.matcher; | |
| 2 | ||
| 3 | import org.hamcrest.Matcher; | |
| 4 | import org.springframework.context.ApplicationContext; | |
| 5 | ||
| 6 | /** | |
| 7 | * Make assertions on Spring | |
| 8 | * | |
| 9 | * @author Aurélien Baudet | |
| 10 | * | |
| 11 | */ | |
| 12 | public class SpringContextAssertions { | |
| 13 | /** | |
| 14 | * Ensure that provided object is the same instance as the bean available in | |
| 15 | * Spring context. | |
| 16 | * | |
| 17 | * <p> | |
| 18 | * If no bean is declared, then it will fail. | |
| 19 | * | |
| 20 | * <p> | |
| 21 | * If a bean is declared but not same instance, then it will fail. | |
| 22 | * | |
| 23 | * | |
| 24 | * @param <T> | |
| 25 | * the type of the expected object | |
| 26 | * @param context | |
| 27 | * the Spring context (used to retrieve bean instance) | |
| 28 | * @param beanClass | |
| 29 | * the class of the bean to match | |
| 30 | * @return the matcher | |
| 31 | */ | |
| 32 | public static <T> Matcher<T> isSpringBeanInstance(ApplicationContext context, Class<?> beanClass) { | |
| 33 |
1
1. isSpringBeanInstance : replaced return value with null for fr/sii/ogham/testing/assertion/internal/matcher/SpringContextAssertions::isSpringBeanInstance → RUN_ERROR |
return new IsSpringBeanInstance<>(context, beanClass); |
| 34 | } | |
| 35 | ||
| 36 | private SpringContextAssertions() { | |
| 37 | super(); | |
| 38 | } | |
| 39 | } | |
Mutations | ||
| 33 |
1.1 |


{% extends 'layout-full.html' %} {% import 'atoms/checkbox.html' as checkbox %} {% import 'atoms/radio-button.html' as radio %} {% import 'atoms/tag.html' as tag %} {% import 'regulations3k/regulations3k-search-bar.html' as search_bar %} {% import 'regulations3k/regulations3k-search-result-item.html' as search_item %} {% import 'molecules/pagination.html' as pagination with context %} {% from 'organisms/expandable.html' import expandable with context %} {# HEAD items #} {% block title -%} Regulations Search | Consumer Financial Protection Bureau {%- endblock title %} {% block desc -%} Our vision is a consumer finance marketplace that works for American consumers, responsible providers, and the economy as a whole. {%- endblock desc %} {% block og_image -%} {# Optional property if you want to use Twitter's large card format https://developer.twitter.com/en/docs/tweets/optimize-with-cards/overview/summary-card-with-large-image #} {%- endblock og_image %} {% block og_desc -%} {{ self.desc() }} {%- endblock og_desc %} {% block preload %} {{ super() }} {%- endblock %} {% block css -%} {{ super() }} {%- endblock css %} {# BODY items #} {% block body_classes %} {{ super() }} {% endblock body_classes %} {% block content_main_modifiers -%} content__1-3 {%- endblock %} {% block content_main scoped %}
Search for terms in the sections, interpretations, and appendices in the Bureau regulations we currently have online.
Search for a term above, then filter the results to find what you’re looking for.


Trees and forests are important for our environment and essential natural resources.
Save trees, save the Earth.
Sound Effects by Mixkit.co
"A nation that destroys its soils destroys itself. Forests are the lungs of our land, purifying the air and giving fresh strength to our people."
― Franklin D. Roosevelt
"The trees encountered on a country stroll
Reveal a lot about that country’s soul…
A culture is no better than its woods."
― W. H. Auden
"To be without trees would, in the most literal way, to be without our roots."
― Richard Mabey


--- layout: page title: Lean Prover Zulip Chat Archive permalink: archive/113488general/27419tidynonempty.html ---
@Scott Morrison, could tidy know about doing cases on nonempty? Or maybe it belongs inside solve_by_elim?
cases
nonempty
solve_by_elim


Press this box to start
| Policy | Permitted Construction Timing | No Work Rule | Change in Construction Duration | One-off Charge |
|---|---|---|---|---|
| Status Quo | 7am-7pm | No work on Sunday and Public Holidays | No Change | $0 |
| 1 | 8am-6pm | No work on Saturday, Sunday and Public Holidays | Increase by 3 months | $100 |
| 2 | 9am-5pm | No work on Saturday, Sunday, eve of Public Holidays and Public Holidays | Increase by 12 months | $200 |


His Holiness the Dalai Lama with members of the bipartisan US Congressional Delegation at his residence in Dharamsala, HP, India on May 9, 2017. Photo by Tenzin Choejor/OHHDL
Time Line of Dalai Lama's Life:
- 07/06/1935: Born in Taktser, Amdo, Tibet
- 02/22/1940: Enthronement Ceremony
- 1940: Begins monastic education at the age of five
- 1942: Receives Vows of Novice Monk from Taktra Rinpoche
- 11/17/1950: Assumes full temporal (political) power after China's invasion of Tibet in 1949
- 12/16/1950: Departs Lhasa for Dromo because of Chinese threat
- 1954: Receives Gelong Ordination from Ling Rinpoche
- 1954: Confers 1st Kalachakra Initiation in Norbulingka Palace, Lhasa
- 1954-1955: Visits China for peace talks and meets with Mao Zedong and other Chinese leaders, including Chou En-Lai, Chu Teh and Deng Xiaoping
- 1956-1957: Visits India to participate in 2500th Buddha Jayanti celebrations
- 1959: Receives Geshe Lharampa Degree during Monlam Ceremonies in Lhasa
- 03/10/1959: Tens of thousands of Tibetans gathered in front of Norbulingka Palace, Lhasa to prevent His Holiness from going to a performance at the Chinese Army Camp in Lhasa. Tibetan People's Uprising begins in Lhasa.
- 03/15/1959: Artillery Shells fired from Chinese troops land outside Norbulingka Palace
- 03/17/1959: Escapes at night from Norbulingka Palace in Lhasa
- 03/31/1959: Enters India from Tibet after a 14-day harrowing escape
- 1963: Presents a draft democratic constitution for Tibet. First exile Tibetan Parliament (Assembly of Tibetan People's Deputies) established in Dharamsala.
- 1967: First visits abroad (since coming into exile) to Japan and Thailand
- 1973: First visit to the West (Italy, Switzerland, The Netherlands, Belgium, Ireland, Norway, Sweden, Denmark, UK, West Germany & Austria)
- 1979: First contact with the Government of the People's Republic of China established since coming into exile in 1959
- 1987: Delivers historic Five Point Peace Plan for Tibet in Washington, D.C. to members of the U.S. Congress
- 12/10/1989: Awarded the 1989 Nobel Prize for Peace in Oslo, Norway
- 1992: Initiates a number of additional major democratic steps, including the direct elections of Kalons (Ministers) by the Assembly of Tibetan People's Deputies and the establishment of a judiciary branch. Previously Kalons appointed directly by His Holiness.
- 2011: On March 14 His Holiness the Dalai Lama sends a letter to the Assembly of Tibetan People's Deputies (Tibetan Parliament in exile) requesting them to devolve his temporal power. On May 29 His Holiness signs into law the formal transfer of his temporal power to the democratically elected leader. This brings to an end the 368-year old tradition of the Dalai Lamas being both spiritual and temporal head of Tibet.
"This is my simple religion. There is no need for temples; no need for complicated philosophy. Our own brain, our own heart is our temple; the philosophy is kindness."
-His Holiness the 14th Dalai Lama
You can learn more about the 14th Dalai Lama by going to Wikipedia or Dalailama.com
coded by Rinchen


Defines an AdeniumControl message.
Defines and handles "spark broadcast variables".
The Adenium context includes "spark context", "spark direct stream", "engine configuration".
The Adenium context includes "spark context", "spark direct stream", "engine configuration". AdenuimContext creates spark context, spark direct stream, and zookeeper client. spark direct stream can be created from a specific offset of kafka topic and provides a method for it.
It monitors the control commands of Adenium Framework and performs control actions according to messages.
Defines an AdeniumControl message.


HatPosition
Enum
Namespace: Imagini
Declared in: Imagini
No description provided
Enumeration
Underlying type: byte
Values:
- Centered = SDL_HAT_CENTERED
- Up = SDL_HAT_UP
- Right = SDL_HAT_RIGHT
- Down = SDL_HAT_DOWN
- Left = SDL_HAT_LEFT
- RightUp = Right | Up
- RightDown = Right | Down
- LeftUp = Left | Up
- LeftDown = Left | Down
Back to index


Here are all of the projects that can be used made by Asher Seiling
AP Hug Vocab Database
Test Maker
Tic Tac
Password Generator


~[wc:commonscripts]
~[wc:teachers_header_fr_css]
~[studenttitlephoto]
Student Profile ~[studentalert]
~[wc:teachers_footer_fr_css]


touched_files = self._get_touched_files()
if self._show_files:
for path in touched_files:
yield path
else:
touched_targets = set()
for path in touched_files:
self._load_build_files(path)
help="Show changed files instead of the targets that own them.")
def console_output(self, _):
if self.get_options().files:
for f in sorted(self._changed_files()):
yield f
else:


Unable to find any rasters matching "{{$ctrl.search}}".
Please refresh the page and try again.
If the problem persists, please contact {{$ctrl.BUILDCONFIG.APP_NAME}} support.
When users share rasters with this organization, they'll be visible here.
Rasters shared with this organization will be accessible to all members of this organization.


I love dancing!
During my internships, I taught students and adults dance at the
Fustion Cardio Toronto.
I also love to perform at social events with dancers from my school.
During school terms, I taught students at the University of Waterloo PAC Studio.


by Josh Ouyang and check my github to explorer.
Don't make students have no time for sports! “Life is movement!” Voltaire
“Life is movement!” Voltaire


The setItemClickAction()
method allows you to define an
action
that will be performed when a table row is double-clicked. If such action is not defined, the table will attempt to
find an appropriate one in the list of its actions in the following order:
The action assigned to the Enter key by the shortcut
property
The edit
action
The view
action
The setEnterPressAction()
allows to you define an action executed when Enter is pressed.
If such action is not defined, the table will attempt to find an appropriate one in the list of its actions in the
following order:
The action defined by the setItemClickAction()
method
The action assigned to the Enter key by the shortcut
property
The edit
action
The view
action


In previous chapters, we learnt that the Capital Asset Pricing Model (CAPM) treats the market return as the only factor affecting the return of any asset. This chapter will generalize CAPM to multi-factor models of the following form:
\[ R = \alpha + \beta_1 f_1 + \beta_2 f_2 + \dots + \beta_n f_n \]
where each \(f_i\) is a factor.
Fama-French Three-Factor Model
This model was proposed in 1993 by Eugene Fama and Kenneth French to describe stock returns.[ref] Fama, E F; French, K R (1993). Common risk factors in the returns on stocks and bonds. Journal of Financial Economics. 33: 3. CiteSeerX <IP_ADDRESS>.5892 Freely accessible. doi:10.1016/0304-405X(93)90023-5[/ref]
The 3-factor model is
\[ R = \alpha + \beta_m MKT + \beta_s SMB + \beta_h HML \]
where
- MKT is the excess return of the market.[ref]mba.tuck.dartmouth.edu/pages/faculty/ken.french/Data_Library/f-f_factors.html[/ref] It's the value-weighted return of all CRSP firms incorporated in the US and listed on the NYSE, AMEX, or NASDAQ minus the 1-month Treasury Bill rate.
- SMB (Small Minus Big) measures the excess return of stocks with small market cap over those with larger market cap.
- HML (High Minus Low) measures the excess return of value stocks over growth stocks. Value stocks have high book to price ratio (B/P) than growth stocks.
Data on these factors can be downloaded from French's website.
Model test
To test the 3-factor model, we use it to predict returns on NASDAQ US Small Cap Index and NASDAQ US Large Cap Index. We estimate the model with daily returns in the past 6 years.
Results for US Small Cap returns:
The coefficient of SMB is positive, so when small caps outperform large caps, the Small Cap Index will have higher returns, which is not surprising. By comparing the t statistics of those factors, we know that MKT and SMB are more important factors driving the Small Cap Index.
Results for US Large Cap returns:
As expected, the coefficient of SMB is negative for the Large Cap Index. The coefficient of HML is quite low, which suggests that value and growth stocks take approximately the same weight in the Large Cap Index.
Factor Returns
How do we find out the returns on a single factor? We can do so by constructing a tracking portfolio and computing its returns. For example, if we want a tracking portfolio of the HML factor, we only need to find 4 stocks to construct a portfolio that has MKT and SMB coefficients of 0 and HML coefficient of 1.
Consider stocks A, B, C, and D whose returns can be explained by the 3-factor model:
\[ R_A = \alpha_1 + \beta_{11} MKT + \beta_{12} SMB + \beta_{13} HML \]
\[ R_B = \alpha_2 + \beta_{21} MKT + \beta_{22} SMB + \beta_{23} HML \]
\[ \vdots \]
Let their weights in the tracking portfolio be \(w_A,w_B,w_C,w_D\). We write the coefficients into a matrix:
\[ \Sigma = \begin{pmatrix}
\alpha_1 & \beta_{11} & \beta_{12} & \beta_{13} \\
\alpha_2 & \beta_{21} & \beta_{22} & \beta_{23} \\
\alpha_3 & \beta_{31} & \beta_{32} & \beta_{33} \\
\alpha_4 & \beta_{41} & \beta_{42} & \beta_{43}
\end{pmatrix} \]
The tracking portfolio is determined by the solution to these linear equations:
\[ w^T \Sigma = \begin{pmatrix} 0 \\ 0 \\ 0 \\ 1 \end{pmatrix} \]
Economic interpretation: The 3 Fama-French factors represent "systematic risk" which cannot be reduced by diversification. Investors earn those factor returns for taking such risks. Any idiosyncratic risk, or firm-specific risk, can be diversified away and so investors are not paid to take such risks.
Other Factors
The Fama-French 5-Factor model comprises two more factors:
- RMW (Robust Minus Weak) measures the excess returns of firms with high operating profit margins over those with lower profits.
- CMA (Conservative Minus Aggressive) measures the excess returns of firms investing less over those investing more.
RMW was proposed by Novy-Marx (2013)[ref]Robert Novy-Marx (2013) The Other Side of Value: The Gross Profitability Premium Journal of Financial Economics 108 (1), 1-28. Retrieved from rnm.simon.rochester.edu/research/OSoV.pdf[/ref] who wrote that:
"Controlling for gross profitability explains most earnings related anomalies, and a wide range of seemingly unrelated profitable trading strategies."
CMA was proposed by Fama and French (2014)[ref]Fama, E F; French, K R (2015). A Five-Factor Asset Pricing Model. 116: 1–22. doi:10.1016/j.jfineco.2014.10.010. Retrieved from www8.gsb.columbia.edu/programs/sites/programs/files/finance/Finance%20Seminar/spring%202014/ken%20french.pdf[/ref] who pointed out that:
"A five-factor model directed at capturing the size, value, profitability, and investment patterns in average stock returns is rejected on the GRS test, but for applied purposes it provides an acceptable description of average returns."
Finally, momentum is another commonly used factor. It captures excess returns of stocks with highest returns over those with lowest returns
Summary
In this chapter we expand Capital Asset Pricing Model (CAPM) into multi-factor models: the Fama-French factor models in particular. They are the most empirically successful multi-factor models by far, and are commonly used in practice.
Algorithm
Multi-factor strategies are stock picking strategies. Here we try to implement a 2013 paper published by AQR Capital Management.[ref]AQR (2013). A New Core Equity Paradigm: Using Value, Momentum, and Quality to Outperform Markets. Retrieved from www.aqr.com/~/media/files/papers/aqr-a-new-core-equity-paradigm.pdf[/ref]
The paper recommends picking stocks by their value, quality (profitability) and momentum.
The empirically successful measure of value is book-to-price ratio (B/P), but other measures can be used simultaneously to form a more robust and reliable view of a stock's value. The paper uses 5 measures: book-to-price, earnings-to-price ratio (EPS), forecasted EPS, cash flow-to-enterprise value and sales-to-enterprise value.
The paper suggested a few quality measures: total profit over assets, gross margin and free cash flow over assets.
There are also various measures of momentum. 1-year momentum, fundamental momentum and returns around earnings announcement are good choices.
In our backtested strategy, we used operating profit margin to measure quality, P/B value to measure value, and 1-month momentum. The portfolio was rebalanced every 2 months and our backtest period runs from Jan 2012 to Jan 2015.
You can build your own version by changing the factor, the weight of each factor, and the rebalance period based on the backtested strategy.


Name:
Directions:
---------
butter
flour
milk
eggs
Ingredient:
Qty:
---------
count
dozen
Dash
Pinch
Teaspoon
Tablespoon
Fluid ounce
Cup
Pint
Quart
Gallon
Quantity:
---------
butter
flour
milk
eggs
Ingredient:
Qty:
---------
count
dozen
Dash
Pinch
Teaspoon
Tablespoon
Fluid ounce
Cup
Pint
Quart
Gallon
Quantity:
New Ingredient
---------
butter
flour
milk
eggs
Ingredient:
Qty:
---------
count
dozen
Dash
Pinch
Teaspoon
Tablespoon
Fluid ounce
Cup
Pint
Quart
Gallon
Quantity:
X


organized by: {{assessment.facilitator.full_name}} on {{assessment.created_at | amDateFormat:'MMMM Do, YYYY'}}
Root Cause
Engage in a "root cause" discussion to answer potential follow up questions like:
Review
Review this report with others in your organization to clarify, review, gather more evidence, etc. You can start by sharing this report with specific colleagues.
Prioritize
Prioritize your PD strategy based on the strengths and weaknesses identified in the Readiness Assessment. Clarify how your organization will build upon strengths and improve upon weaknesses.
Find Out More Information
Identify areas where you need to learn more detailed information, or conduct a "deep dive diagnostic". For example, if your Data Infrastructure category scored low, perhaps doing a more exhaustive analysis of your Data Infrastructure will help prioritize your PD strategic plan.
Future Vision
This should include a roadmap of the first 100 days of PDredesign.


--- title: Blogdown Essentials with the Hugo-Academic Theme author: Alex Wold date: '2021-06-11' slug: blogdown-essentials-with-the-hugo-academic-theme categories: - Blogdown tags: - Latex - Plots - Images subtitle: '' summary: '' authors: [] lastmod: '2021-06-11T02:06:57-05:00' featured: no image: caption: '' focal_point: '' preview_only: no projects: [] ---
The Hugo-Academic Theme provides an exhaustive array of widget-empowered functionality that’s perfect for publishing academic work. This theme establishes a solid foundation within the R ecosystem that enables its users to profit from its clean and responsive architecture. Therefore, we’ll use and expand this interface to present our work regarding NIU’s accountancy-driven Artificial Intelligence Research (AIR) Lab.
The Hugo-Academic framework offers an impressive library of features, but it doesn’t give us everything we need right out of the box. Fortunately, the developers built this theme with flexibility in mind, and we’ll take advantage of its adaptable nature to provide two key operations: Plotting and \(\LaTeX\).
When rendering plots from .Rmd chunks, knitr tends to write them to the figure/
path relative to the working directory; however, Hugo assumes all of this content resides in the static/
folder. Luckily, we can describe most charts and graphs as static web assets, since they’re just images. Therefore, we only have to set the appropriate knitr chunk option to properly post the correct output.
knitr::opts_chunk$set(fig.path = "static")
The plots should now appear on the page.
By default, Hugo-Academic disables math related rendering, so the website won’t correctly display \(\LaTeX\) script on any posted pages. Thankfully, this theme provides a convenient switch so we don’t have to override or rework any of the template files. In the [params]
section of the config.toml
file or in the params.toml
file itself (within the root directory), we can just set math option to true.
# Enable LaTeX math rendering? true/false
# If false, you can enable math on a per page basis as needed.
math = true
\(\LaTeX\) should render correctly now, just make sure not to include a space between the activation symbols.
For example:
$\sqrt{7x+9}$
renders \(\sqrt{7x+9}\)
but $ \sqrt{7x+9} $
renders nothing.


Strong Earthquake on the Border between Thailand and Laos
A strong earthquake was reported on the border between Thailand and Laos, AFP reports. The 6.1-magnitude quake was strongly felt in Laos capital - Vientiane in the early hours of the morning.
The epicentrе of the quake was about 220 kilometers northwest of the capital city.
Residents of Vientiane wrote on social media that after the first, powerful earthquake at 6:50 local time, they also felt a second one. The most powerful earthquake was felt even in Bangkok, more than 600 kilometers from the epicentre.
Authorities in Thailand said they would send inspectors to check the condition of temples and monuments in the northern part of the country.
No injuries or property damage were reported.


We invite you to leave behind the worries and concerns of every day life and join us in the celebration of our marriage.
This is an opportunity for us to share not only in the joy of our love but also to reaffirm and appreciate the love and the friendship we experience in our own lives.
May we all celebrate by being fully present during our short time together.
Packing Tip : Please don't forget to bring your dancing shoes
Marriage
Date: 2nd May, 2018 Location: Green palm, Rourkela, Odisha, India Time: 8PM - 3AM
Reception Party
Date: 4th May, 2018 Location: Green Garden, Rourkela, Odisha, India Time: 8PM - 1AM
RSVP
Please let us know your presence
Please feel free to contact me at the details below


Processes should be in place to keep the staff informed of the latest discovered security vulnerabilities. Such processes may involve signing up for a mailing list and visiting web-sites focused on security.
The information security community is very active on-line and provides many valuable resources for tracking the latest discovered vulnerabilities. Potential attackers monitor these resources, so it is important to mitigate these new threats before they are exploited.
Interview the responsible personnel and ask them what resources they use to keep track of the newly discovered security vulnerabilities.
Add a requirement to the information security policy for the responsible staff members to use outside resources to stay informed about the latest discovered security vulnerabilities. Instruct the staff to review on-line security vulnerability tracking resources periodically. Instruct at least one staff member to sign up for the BugTraq mailing list and other similar mailing lists as appropriate.


This is a dc.js example showing how GeoJson Polygon can be associated with crossfilter dimension and group using a choropleth chart. Different regions can be colored differently based on different calculation (amount raised). Like any other dc.js chart a choropleth chart can then be mixed with other dc.js chart or your own custom d3 drawing. In this example we have shown how it can work with multiple bubble chart.
Public data source BuzzData.com.


WITNESS LIST Urban Affairs Committee March 31, 1999-2:00P HB 2063 For: Webster, Jeff (City of San Antonio) HB 2177 For: Eckels, Robert (Self and County Judge/Harris County) Against: Parker, Annise (City of Houston /City Council Member) HB 2178 For: Eckels, Robert (Self and County Judge / Harris County) Speck, Sue (City of Hedwig Village/Mayor) Against: Parker, Annise (City of Houston/ City Council Member) HB 2210 For: Richards, Judy (City Council/Duncanville) Saltsgiver, Janet (Self and Historic Preservation/Rock Church Cemetary Association/Meek Family Association) Against: Carroll, B.F. Hank (Self and Texas Cemetaries Association) Clayton, John (Self and Texas Cemetary Association) Fields, Jess (Texas Cemetary Association) HB 2314 For: Bailey, Ken (Texas State Association of Fire Fighters) HB 2350 For: Carrington, Edwina (Self and Texas Housing Finance Corp./Texas Affiliation of Affordable Housing Providers) Ferguson, Frances (Texas Association of Community Development Corporations) Henneberger, John (Texas Low Income Housing Information Service) Mintz, David (Texas Apartment Association) On: Hoffpauir, Keith (Texas Department of Housing and Community Affairs/Housing Trust Fund) Tamayo, George (Comptroller's Office) HB 2351 For: Carrington, Edwina (Self and Texas Housing Finance Corp./Texas Affiliation of Affordable Housing Providers) Ferguson, Frances (Texas Association of Community Development Corporations) Henneberger, John (Texas Low Income Housing Information Service) Lee, Randy (Stewart Title Guaranty Co.) Mintz, David (Texas Apartment Association) On: Hoffpauir, Keith (Texas Department of Housing and Community Affairs/ Housing Trust Fund) HB 2434 For: Townsend, Marvin (Texas Municipal League - Intergovernmental Risk Pool) HB 2563 For: Huarta, Julian (Central Texas Mutual Housing Association) McGuigan, Jane (Tarrant County Together) HB 3428 For: Drusina, Edward (City of El Paso) Rocha, Susan (City of Lubbock) Spurlock, Michael (El Paso Water Utilities Public Service Board) Against: Stagner, Steve (Consulting Engineers Council of Texas) HB 3605 For: Gill, Virginia (Lackland Terrace Neighborhood Organization) Sales, Johnny (Self and Chuck Wagon Express/Cable Westwood N.A.) Webster, Jeff (City of San Antonio) On: Rutledge, Tom (Texas Land Title Association) HB 3705 For: Malone, Reba (Self and Past Chairman -American Public Transit Association) Milam, John (VIA Metropolitan Transit) Tankerson, Richard (VIA Metropolitan Transit) Tarrer, Jr., Lewis (VIA Metropolitan Transit)


| Package | Description |
|---|---|
| com.sun.jini.outrigger |
This is an implementation of a JavaSpaces technology-enabled service.
|
| Modifier and Type | Field and Description |
|---|---|
private OutriggerServerImpl |
OutriggerServerWrapper.delegate
The object being delegated to
|
private OutriggerServerImpl |
TransitionWatchers.server
The server we are working for
|
private OutriggerServerImpl |
TakeMultipleWatcher.server
The OutriggerServerImpl we are part of.
|
private OutriggerServerImpl |
ExpirationOpQueue.server
The server we are working for
|
private OutriggerServerImpl |
AvailabilityRegistrationWatcher.server
The OutriggerServerImpl we are part of.
|
private OutriggerServerImpl |
TxnMonitor.space
The space we belong to.
|
private OutriggerServerImpl |
EntryHolderSet.space |
private OutriggerServerImpl |
EntryHolder.space
The server we are working for
|
| Modifier and Type | Method and Description |
|---|---|
(package private) OutriggerServerImpl |
WatchersForTemplateClass.getServer()
Return the
OutriggerServerImpl this
handle is part of. |
(package private) OutriggerServerImpl |
TransitionWatchers.getServer()
Return the
OutriggerServerImpl this
TransitionWatchers object is part of. |
(package private) OutriggerServerImpl |
TemplateHandle.getServer()
Return the
OutriggerServerImpl this
handle is part of. |
(package private) OutriggerServerImpl |
SingletonQueryWatcher.getServer()
Method to give sub-classes access to OutriggerServerImpl
Assumes caller owns lock on
this and that
this watcher has not been removed. |
(package private) OutriggerServerImpl |
TxnMonitor.space()
Return the space we're part of.
|
| Modifier and Type | Method and Description |
|---|---|
(package private) void |
Txn.abort(OutriggerServerImpl space)
Abort the transaction.
|
void |
TransactableReadIfExistsWatcher.abort(TransactableMgr mgr,
OutriggerServerImpl space)
If a transaction ends in the middle of a query we want
to throw an exception to the client making the query
(not the
Txn calling us here.) |
void |
TransactableEventWatcher.abort(TransactableMgr mgr,
OutriggerServerImpl space)
Just need to terminate this registration.
|
void |
TransactableAvailabilityWatcher.abort(TransactableMgr mgr,
OutriggerServerImpl space)
Just need to terminate this registration.
|
void |
Transactable.abort(TransactableMgr mgr,
OutriggerServerImpl space)
Abort this object's part of the transaction.
|
void |
TakeMultipleWatcher.abort(TransactableMgr mgr,
OutriggerServerImpl space)
If a transaction ends in the middle of a query we want
to throw an exception to the client making the query
(not the
Txn calling us here.) |
void |
TakeIfExistsWatcher.abort(TransactableMgr mgr,
OutriggerServerImpl space)
If a transaction ends in the middle of a query we want
to throw an exception to the client making the query
(not the
Txn calling us here.) |
void |
EntryHandle.abort(TransactableMgr mgr,
OutriggerServerImpl space) |
void |
ConsumingWatcher.abort(TransactableMgr mgr,
OutriggerServerImpl space)
If a transaction ends in the middle of a query we want
to throw an exception to the client making the query
(not the
Txn calling us here.) |
(package private) boolean |
TxnState.abort(TransactableMgr mgr,
OutriggerServerImpl space,
EntryHandle owner)
Abort this object's part of the transaction.
|
(package private) void |
StorableAvailabilityWatcher.cleanup(OutriggerServerImpl server,
boolean expired)
Overridden by subclasses if there is any cleanup work they need
to do as part of
cancel or
removeIfExpired . |
(package private) void |
AvailabilityRegistrationWatcher.cleanup(OutriggerServerImpl server,
boolean expired)
Overridden by subclasses if there is any cleanup work they need
to do as part of
cancel or
removeIfExpired . |
(package private) void |
Txn.commit(OutriggerServerImpl space)
Having prepared, roll the changes
forward.
|
void |
TransactableReadIfExistsWatcher.commit(TransactableMgr mgr,
OutriggerServerImpl space)
This should never happen since we always return
NOTCHANGED from prepare . |
void |
TransactableEventWatcher.commit(TransactableMgr mgr,
OutriggerServerImpl space)
This should never happen since we always return
NOTCHANGED from prepare . |
void |
TransactableAvailabilityWatcher.commit(TransactableMgr mgr,
OutriggerServerImpl space)
This should never happen since we always return
NOTCHANGED from prepare . |
void |
Transactable.commit(TransactableMgr mgr,
OutriggerServerImpl space)
Commit this object's part of the transaction.
|
void |
TakeMultipleWatcher.commit(TransactableMgr mgr,
OutriggerServerImpl space)
This should never happen since we always return
NOTCHANGED from prepare . |
void |
TakeIfExistsWatcher.commit(TransactableMgr mgr,
OutriggerServerImpl space)
This should never happen since we always return
NOTCHANGED from prepare . |
void |
EntryHandle.commit(TransactableMgr mgr,
OutriggerServerImpl space) |
void |
ConsumingWatcher.commit(TransactableMgr mgr,
OutriggerServerImpl space)
This should never happen since we always return
NOTCHANGED from prepare . |
(package private) boolean |
TxnState.commit(TransactableMgr mgr,
OutriggerServerImpl space,
EntryHandle owner)
Commit this object's part of the transaction.
|
(package private) int |
Txn.prepare(OutriggerServerImpl space)
Prepare for transaction commit.
|
int |
TransactableReadIfExistsWatcher.prepare(TransactableMgr mgr,
OutriggerServerImpl space)
If a transaction ends in the middle of a query we want
to throw an exception to the client making the query
not the
Txn calling us here.) |
int |
TransactableEventWatcher.prepare(TransactableMgr mgr,
OutriggerServerImpl space)
Just need to terminate this registration and return
NOTCHANGED . |
int |
TransactableAvailabilityWatcher.prepare(TransactableMgr mgr,
OutriggerServerImpl space)
Just need to terminate this registration and return
NOTCHANGED . |
int |
Transactable.prepare(TransactableMgr mgr,
OutriggerServerImpl space)
Prepare to commit this object's part of the transaction.
|
int |
TakeMultipleWatcher.prepare(TransactableMgr mgr,
OutriggerServerImpl space)
If a transaction ends in the middle of a query we want
to throw an exception to the client making the query
(not to the
Txn calling us here.) |
int |
TakeIfExistsWatcher.prepare(TransactableMgr mgr,
OutriggerServerImpl space)
If a transaction ends in the middle of a query we want
to throw an exception to the client making the query
not the
Txn calling us here.) |
int |
EntryHandle.prepare(TransactableMgr mgr,
OutriggerServerImpl space)
Methods required by the Transactable interface
|
int |
ConsumingWatcher.prepare(TransactableMgr mgr,
OutriggerServerImpl space)
If a transaction ends in the middle of a query we want
to throw an exception to the client making the query
not the
Txn calling us here.) |
(package private) int |
TxnState.prepare(TransactableMgr mgr,
OutriggerServerImpl space,
EntryHandle owner)
Prepare to commit this object's part of the transaction.
|
| Constructor and Description |
|---|
EntryHolder(OutriggerServerImpl space,
Hashtable idMap)
Create a new
EntryHolder with the shared
idMap , and which will hold classes of the given
className . |
EntryHolderSet(OutriggerServerImpl space) |
ExpirationOpQueue(OutriggerServerImpl server)
Create a new
ExpirationOpQueue that
will handle lease expiration logging for the
specified server. |
TransitionWatchers(OutriggerServerImpl server)
Create a new
TransitionWatchers object
for the specified server. |
TxnMonitor(OutriggerServerImpl space,
Configuration config)
Create a new TxnMonitor.
|
Copyright 2007-2013, multiple authors.
Licensed under the Apache License, Version 2.0, see the NOTICE file for attributions.


[% title = "WangEmu Quickstart Guide" -%] [% updated = "April 16, 2019" -%]
This is a brief how-to guide in getting up and running quickly with WangEmu. There are many configuration options and two major operating modes; besides, being a faithful emulator, WangEmu is bounded by the complexity that was inherent in the Wang 2200 system itself.
The first two sections, of course, are largely irrelevant if this help is being run from WangEmu's help file itself of course.
The WangEmu program and an associated files are distributed as a zip file called something like wangemu_3.0.zip. The files contained in the zip file are all tucked into a directory called WangEmu3.0. Thus when you unpack, the location you specify for saving the zip file contents will receive that folder, not the myriad files contained within. This file can be unzipped to any location as WangEmu doesn't care where it runs from.
The resulting directory structure looks this:
WangEmu3.0/ disks/ -- wang virtual disk images *.wvd html/ -- help files *.html scripts/ -- scripts *.w22 src/ -- source code *.cpp *.h *.rc build.txt -- rough guide to building the emulator from source code.txt -- description of the program structure LICENSE -- the code is provided under an MIT license README.md -- markdown README from github project description makefile -- for building on OSX relnotes.txt -- release notes wangemu.sln -- MS Visual Studio 2017 build file wangemu.vcxproj -- MS Visual Studio 2017 build file wangemu.exe -- the application
You don't need to know anything about the source code or the build files. They are there in case you are curious and want to have a look, or if you are ambitious and want to make changes to the emulator.
[% ELSE; %]The application and its associated files are distributed in a standard .dmg file called "WangEmu_3.0.dmg". Place this file anywhere, for example right on the desktop. Wherever the file is located, double click the icon and a virtual disk drive image will appear mounted on the desktop. Double click on that image and inside is a folder called "WangEmu3.0". Double click on the folder to see the contents.
[% END; %]The folders called disks and scripts contain programs that can be loaded by the emulator to give you something to play with right off the bat.
The application can be run by double clicking on the executable called "WangEmu" in the folder that was created when the downloaded file was unpacked.
The first time WangEmu is run, an warning message will appear:
[% img("ini_warning.png") %]
This is normal and can be ignored. It is simply indicating that the file containing the user's preferences couldn't be found. If this message appears after the emulator is configured, it is an indication that something is amiss, such as the file couldn't be saved after the first run because the user doesn't have write permission.
The default configuration is to have
Every time WangEmu exits, all the users preferences are saved in a file called wangemu.ini. It is an ASCII text file, but it should not be directly edited otherwise the configuration might get corrupted; if so, delete the file and reconfigure the emulator as if it was the first time the emulator was run. This file is located in [% os_pick("the same directory as the executable", "~/Library/Preferences") %].
The default configuration comes up in 2200T mode, which has Wang BASIC in ROM. The emulator is ready to run programs.
If the user prefers a 2200 VP configuration running Wang BASIC-2, a few more steps are required.
From the Configure menu item, select Configure System.... There is a choice box in the upper left corner that reads "CPU: 2200T". Change that to read "CPU: 2200VP". You can also adjust how much RAM the system is configured for in the pulldown box just below the CPU choice. Click the OK button.
Also, you have the option of picking other CPU types: MVP-C, or MicroVP. One of these is required if you want to run an MVP operating system. If this is the case, you will also need to unmap the 6367 keyboard controller and the 6312A CRT controller. Instead, pick a 2236 MXD terminal controller, at address /000.
Unlike the first generation machines, the VP series didn't have BASIC in ROM. Instead, the BASIC-2 microcode had to be loaded from disk. The same is true for the emulator.

At this point you may type some commands or enter an entire program. WangEmu comes with some program sources to demonstrate some features of Wang BASIC or to simply allow having some fun.
To load a script (which works by reading an ASCII file and having the emulator pretend the user is a really fast typist), follow these steps.
You can create your own script files with any text editor that can produce an ASCII file. Simply type in the program and use the File/Script... feature.


Merge 2 configurations.
Returns every path as a set of key to value pairs, by recursively iterating through the config objects.
Retrieves a configuration value as a Boolean
.
Retrieves a configuration value as a Boolean
.
For example:
val configuration = Configuration.load() val isEnabled = configuration.getString("engine.isEnabled")
A configuration error will be thrown if the configuration value is not a valid Boolean
.
Authorized vales are yes/no or true/false.
a configuration value
Retrieves a configuration value as a List of Boolean
.
Retrieves a configuration value as a List of Boolean
.
For example:
val configuration = Configuration.load() val switches = configuration.getBooleanList("board.switches")
The configuration must be provided as:
board.switches = [true, true, false]
A configuration error will be thrown if the configuration value is not a valid Boolean
.
Authorized vales are yes/no or true/false.
Retrieves a configuration value as Bytes
.
Retrieves a configuration value as Bytes
.
For example:
val configuration = Configuration.load() val maxSize = configuration.getString("engine.maxSize")
The configuration must be provided as:
engine.maxSize = 512k
Retrieves a configuration value as a List of Bytes
.
Retrieves a configuration value as a List of Bytes
.
For example:
val configuration = Configuration.load() val maxSizes = configuration.getBytesList("engine.maxSizes")
The configuration must be provided as:
engine.maxSizes = [512k, 256k, 256k]
Retrieves a sub-configuration, i.
Retrieves a sub-configuration, i.e. a configuration instance containing all keys starting with a given prefix.
For example:
val configuration = Configuration.load() val engineConfig = configuration.getSub("engine")
The root key of this new configuration will be ‘engine’, and you can access any sub-keys relatively.
a new configuration
Retrieves a List of sub-configurations, i.
Retrieves a List of sub-configurations, i.e. a configuration instance for each key that matches the path.
For example:
val configuration = Configuration.load() val engineConfigs = configuration.getConfigList("engine")
The root key of this new configuration will be "engine", and you can access any sub-keys relatively.
Retrieves a configuration value as a Double
.
Retrieves a configuration value as a Double
.
For example:
val configuration = Configuration.load() val population = configuration.getDouble("world.population")
A configuration error will be thrown if the configuration value is not a valid Double
.
a configuration value
Retrieves a configuration value as a List of Double
.
Retrieves a configuration value as a List of Double
.
For example:
val configuration = Configuration.load() val maxSizes = configuration.getDoubleList("engine.maxSizes")
The configuration must be provided as:
engine.maxSizes = [5.0, 3.34, 2.6]
Retrieves a configuration value as an Int
.
Retrieves a configuration value as an Int
.
For example:
val configuration = Configuration.load() val poolSize = configuration.getInt("engine.pool.size")
A configuration error will be thrown if the configuration value is not a valid Int
.
a configuration value
Retrieves a configuration value as a List of Integer
.
Retrieves a configuration value as a List of Integer
.
For example:
val configuration = Configuration.load() val maxSizes = configuration.getIntList("engine.maxSizes")
The configuration must be provided as:
engine.maxSizes = [100, 500, 2]
Gets a list value (with any element type) as a ConfigList, which implements java.
Gets a list value (with any element type) as a ConfigList, which implements java.util.List<ConfigValue>.
For example:
val configuration = Configuration.load() val maxSizes = configuration.getList("engine.maxSizes")
The configuration must be provided as:
engine.maxSizes = ["foo", "bar"]
Retrieves a configuration value as a Long
.
Retrieves a configuration value as a Long
.
For example:
val configuration = Configuration.load() val duration = configuration.getLong("timeout.duration")
A configuration error will be thrown if the configuration value is not a valid Long
.
a configuration value
Retrieves a configuration value as a List of Long
.
Retrieves a configuration value as a List of Long
.
For example:
val configuration = Configuration.load() val maxSizes = configuration.getLongList("engine.maxSizes")
The configuration must be provided as:
engine.maxSizes = [10000000000000, 500, 2000]
Retrieves a configuration value as Milliseconds
.
Retrieves a configuration value as Milliseconds
.
For example:
val configuration = Configuration.load() val timeout = configuration.getMilliseconds("engine.timeout")
The configuration must be provided as:
engine.timeout = 1 second
Retrieves a configuration value as List of Milliseconds
.
Retrieves a configuration value as List of Milliseconds
.
For example:
val configuration = Configuration.load() val timeouts = configuration.getMillisecondsList("engine.timeouts")
The configuration must be provided as:
engine.timeouts = [1 second, 1 second]
Retrieves a configuration value as Nanoseconds
.
Retrieves a configuration value as Nanoseconds
.
For example:
val configuration = Configuration.load() val timeout = configuration.getNanoseconds("engine.timeout")
The configuration must be provided as:
engine.timeout = 1 second
Retrieves a configuration value as List of Nanoseconds
.
Retrieves a configuration value as List of Nanoseconds
.
For example:
val configuration = Configuration.load() val timeouts = configuration.getNanosecondsList("engine.timeouts")
The configuration must be provided as:
engine.timeouts = [1 second, 1 second]
Retrieves a configuration value as a Number
.
Retrieves a configuration value as a Number
.
For example:
val configuration = Configuration.load() val counter = configuration.getNumber("foo.counter")
A configuration error will be thrown if the configuration value is not a valid Number
.
a configuration value
Retrieves a configuration value as a List of Number
.
Retrieves a configuration value as a List of Number
.
For example:
val configuration = Configuration.load() val maxSizes = configuration.getNumberList("engine.maxSizes")
The configuration must be provided as:
engine.maxSizes = [50, 500, 5000]
Retrieves a ConfigObject for this path, which implements Map<String,ConfigValue>
Retrieves a ConfigObject for this path, which implements Map<String,ConfigValue>
For example:
val configuration = Configuration.load() val engineProperties = configuration.getObject("engine.properties")
The configuration must be provided as:
engine.properties = {id: 1, power: 5}
Retrieves a configuration value as a List of ConfigObject
.
Retrieves a configuration value as a List of ConfigObject
.
For example:
val configuration = Configuration.load() val engineProperties = configuration.getObjectList("engine.properties")
The configuration must be provided as:
engine.properties = [{id: 5, power: 3}, {id: 6, power: 20}]
Retrieves a configuration value as a String
.
Retrieves a configuration value as a String
.
This method supports an optional set of valid values:
val config = Configuration.load() val mode = config.getString("engine.mode", Some(Set("dev","prod")))
A configuration error will be thrown if the configuration value does not match any of the required values.
valid values for this configuration
a configuration value
Retrieves a configuration value as a List of String
.
Retrieves a configuration value as a List of String
.
For example:
val configuration = Configuration.load() val names = configuration.getStringList("names")
The configuration must be provided as:
names = ["Jim", "Bob", "Steve"]
Creates a configuration error for this configuration.
Creates a configuration error for this configuration.
For example:
val configuration = Configuration.load() throw configuration.globalError("Missing configuration key: [yop.url]")
the error message
the related exception
a configuration exception
Returns available keys.
Returns available keys.
For example:
val configuration = Configuration.load() val keys = configuration.keys
the set of keys available in this configuration
Creates a configuration error for a specific configuration key.
Creates a configuration error for a specific configuration key.
For example:
val configuration = Configuration.load() throw configuration.reportError("engine.connectionUrl", "Cannot connect!")
the error message
the related exception
a configuration exception
Returns sub-keys.
Returns sub-keys.
For example:
val configuration = Configuration.load() val subKeys = configuration.subKeys
the set of direct sub-keys available in this configuration
the underlying Config implementation
A full configuration set.
The underlying implementation is provided by https://github.com/typesafehub/config.
the underlying Config implementation


My bookings
Destination: [[${booking.trip.title}]]
Booking reference
123456
Booking status
PENDING
Trip date
2016-15-20
Booking date
2016-15-20
Number of persons
25
Trip length
25


"LOOKING FOR MR. GOODBAR" (USA, 1977) A Film Review by James Kendrick **1/2 (out of ****)
Director: Richard Brooks || Screenplay: Richard Brooks (based on the novel by Judith Rossner) || Stars: Diane Keaton (Theresa Dunn), Tuesday Weld (Katherine Dunn), William Atherton (James), Richard Kiley (Mr. Dunn), Richard Gere (Tony), Alan Feinstein (Martin), Tom Berenger (Gary), Priscilla Pointer (Mrs. Dunn) || MPAA Rating: R
"Looking For Mr. Goodbar" is a none-too-subtle cautionary tale about the dangers of living a hedonistic nightlife masked by a legitimate daylife. The film stars Diane Keaton as an attractive young woman named Theresa Dunn, who is a successful and caring teacher of deaf students by day, and a nightclub-carousing libertine by night. The message of director Richard Brooks, who adapted Judith Rossner's popular novel of the same title, is twofold: first, a person can't wear two faces at the same time without them interfering with each other, and second, hedonism can only lead to eventual self-destruction.
 Some of it is due to the Freudian relationship with her overbearing father (Richard Kiley), as well as her strict Catholic upbringing (why is Catholicism always blamed for sexual dysfunction?). There was also a childhood episode involving extensive back surgery, which left a long scar to remind her of the year she spent miserable in a body cast.
Brooks also spends the first half-hour of the film detailing an unfulfilling sexual relationship with her college professor, a blunt married man named Martin (Alan Feinstein). Theresa has a crush on Martin, and although she gives up her virginity to him, he basically treats her like dirt and dumps her, thus introducing her to the notion that sex and love don't necessarily have to be related. For the rest of the film, Theresa reverses the scenario with other men, making sure that she is in the position of being the uncaring recipient of pleasure, who doesn't have to take any responsibility for her actions.
And then there's the influence of Theresa's sister, Katherine (Tuesday Weld), a light-headed airline stewardess who has numerous affairs and at least one abortion, jumps into a quickie marriage with a Jewish man, and then experiments with drugs, pornography, and group sex. Watching the two sisters develop as characters is like watching side-by-side elevators going in opposite directions - Katherine ends up getting clean and taking control of her life again, while Theresa sinks into drugs, nameless sex, and general hedonism.
At one point in the film, Katherine tells Theresa that everybody is somehow hurting, so everybody is looking for a painkiller; for Theresa, her heedless lifestyle is her painkiller. She thinks that if she can have fun by sleeping with strangers who never stay the night, she can absolve herself of the burden of responsibility. The fact that it didn't work for Katherine should have been a lesson for Theresa, but some people are simply intent on learning life's harshest lessons firsthand, even if it means paying the ultimate price.
During the course of the film, Theresa meets a string of men, all of whom are dangerous in one way or another. First, she meets a swinging, somewhat psychotic playboy named Tony, played by a young Richard Gere with a bad Italian accent. She later meets a liberal social worker named James (William Atherton), and although he seems squeaky-clean on the outside, he harbors darkness inside. There are others that are briefly mentioned in fleeting scenes, including a perverted furniture salesman and a hypocritical police detective.
Parts of "Looking For Mr. Goodbar" are successful, especially its detailed depiction of the Manhattan nightlife in the seventies. Some of it looks painfully dated, especially the disco-themed soundtrack, but the basic timeless elements are all there - heavy drinking, drug use, impulsive behavior, and an atmosphere or reckless abandon.
The film was made several years before the AIDS epidemic struck, but that should not blur the film's message. People sometimes forget that venereal disease is not the only negative consequence of casual sex - there is a personal and spiritual destruction, as well threats of physical violence. Anytime a person allows someone else into that kind of physical closeness without knowing a thing about him, there is an inherent element of risk that is made abundantly clear in the film's graphically violent, but somehow inevitable conclusion.
Brooks, who has made many gritty, realistic films like "The Blackboard Jungle" (1955) and the stark adaptation of Truman Capote's "In Cold Blood" (1967), would seem like a perfect choice for this material. Social reality seems to be his forte, but he goes against his better instincts by including several needless fantasy sequences that are intended to illuminate Theresa's thoughts and dreams, but end up being silly and distracting. Brooks also could have trimmed the film by about twenty minutes, because it takes much more time than is needed to make its point.
Much of the film's success can be attributed to Diane Keaton's stunning performance. Almost the entire film is told from her point of view, which means she is on-screen in almost every scene. Keaton makes Theresa into a complex woman who knowingly wears two faces despite the obvious damage it is causing. This is an incredibly difficult role to pull off, because Theresa must be both infuriating and sympathetic at the same time. Keaton manages to do just that, which lends weight and credibility to the cautionary tale the movie is so desperate to put forward.
©1998 James Kendrick
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


Client side data binding allow users to bind static item set to dropdown when full data collection is available
in the client side. It can be configured via setting an array of data objects to items
input property
or via setting a RxJS Observable
stream to dataSource
input property.
In this data binding technique, data set will be fetched at once and column Filtering and Item Selection operations are perform in client side. If the data stream is very large and struggle to perform Filtering and Item Selection operations in the client side, Server Side Basic Data Binding can be uses instead of using this technique.
However, it might affect the overall site performance if the data set is significantly larger. Consider using Server Side Basic Data Binding in such cases where all the computation heavy operations are handled in server side and only page level data is sent to client side for on demand data binding.
Client side data binding can be configured by using either of two approaches described below. Data emitted after initial data binding will re-initialize dropdown with the new data set and drop previously bound data items collection or stream.
This approach can be used to bind a static data array. The complete set of code snippet for the data binding via items
input property
can be found in What You Will See example section above. Mutations to the item collections
will automatically get reflected in dropdown.
or
This approach can be used to bind an Observable data stream. Refer following example code snippet for complete usage of the dataSource
property in the client side data binding. Latest data collection emitted via data source stream will get reflected in dropdown.


Bounding Box Properties
Position x
Position y
Position z
Spline Properties
Head Offset
Tail Offset
Reverse Spline
♻ Delete Spline


Gateway
BOT
19-Nov-19 12:48 AM
[telegram] <Regnar> Yea that's a good point. I made some tip bots, and some Twitter bots, but not Twitter tipbots. Usually they are centralized and risky for me. But I think it would be cool too.
[telegram] <Regnar> I'll ask around and see if we have looked into it before
[telegram] <CaptainCooked420> DGB has a very good tipbot
[telegram] <CaptainCooked420> /tip 10 10
[telegram] <CaptainCooked420> Coinkit is the name
[telegram] <hansiharjunharja> Yeah. And if someone builds it it should be one that can send anyone a tip even if they havent themselves activated the feature yet. (re @Regnar: I'll ask around and see if we have looked into it before)
[telegram] <hansiharjunharja> That would be an awesome way to get people to notice and be like "wtf is kmd"
[telegram] <hansiharjunharja> And after tipping you just go "well, now you are invested in it, so take a look at it and tell me what you think"
[telegram] <hansiharjunharja> I accept trollcoin on twitter allready.
[telegram] <CaptainCooked420> /tip @hansiharjunharja 5
[telegram] <hansiharjunharja> I want to make a video on kmd twitter tipbot when it comes out. I feel like it"s a great way to activate us non-coders.
[telegram] <hansiharjunharja> Did someone just give me a tip?
[telegram] <hansiharjunharja> !balance
[telegram] <CaptainCooked420> I tried to but it didn't work
[telegram] <hansiharjunharja> Is there a tipbot for kmd on telegram?
[telegram] <CaptainCooked420> Nah
[telegram] <hansiharjunharja> Thank you for the gesture at least (re @CaptainCooked420: I tried to but it didn't work)
[telegram] <hansiharjunharja> You may tip Hember on discord if you like.
[telegram] <CaptainCooked420> I was hoping to send you a little DGB to show you coinkit in action but it's not integrated into this group.
[telegram] <hansiharjunharja> Oh, ok.
[telegram] <CaptainCooked420> Tip bots are fun, it's good to spread the love
[telegram] <hansiharjunharja> Yeah, and easy to make crypto known.
[telegram] <hansiharjunharja> I was planning to make a fast video showing different tipbots in action on twitter. Then I realised there was no tipbot for any of the komodo ecosystem coins.
[telegram] <hansiharjunharja> I think i might still make the video, but wait for a short while before putting it online for the first tipbot to be presented on that video.
[telegram] <CaptainCooked420> Yeah it's a shame that KMD gets so little recognition from the crypto YouTube world.
[telegram] <CaptainCooked420> 90%of crypto YouTubers are just paid shills
[telegram] <hansiharjunharja> Yeah. Would be great if komodo was the first to build a tipbot for youtube, or Arrr. I don't know wether it would be possible to built that without a permission from youtube, but to force it as a frame that you can download into your browser and it would recognize the yputube page and then create a wallet for any giver or reciever on the platform.
[telegram] <hansiharjunharja> Hacking, not to take, but to give
[telegram] <hansiharjunharja>


Fast & Furious: Spy Racers Animated Series Reveals First Images
by Tim AdamsNetflix has released the first images for the animated Fast & Furious: Spy Racers, its upcoming addition to the Fast & Furious franchise.
The Fast & Furious animated series follows Tony Toretto, the teenage cousin of Vin Diesel's Dominic Toretto. Tony and his friends find themselves recruited by a government agency to infiltrate a racing league in order to get close enough to SH1FT3R, which is described as a "nefarious crime organization." Of course, SH1FT3R is out for world domination, so it will be up to Tony and his crew to bring the organization in for their crimes.
Click the button below to start this article in quick view.
Universal Pictures and DreamWorks Animation also announced the voice cast to go along with the first look images. Teen Wolf star Tyler Posey will voice the young spy racer Tony Toretto; Camille Ramsey (American Vandal) stars as underground SH1FT3R racer Layla Gray; Harry Potter's Luke Youngblood plays the 13-year-old techie genius Frostee Benson; Charlet Chung of Overwatch fame is the talented artist and spy Echo; and Jorge Diaz (Jane the Virgin) as Cisco Renaldo, the muscle and the sweetheart of Tony's crew.
Guest voices also include Frostee’s younger sister Sissy, voiced by Similce Diesel; Renée Elise Goldsberry (Hamilton) is Ms. Nowhere, the team's secret agent liaison; Manish Dayal (The Resident) is SH1FT3R's leader Shashi Dhar; and American Vandal's Jimmy Tatro is local knucklehead Mitch;
More guest-stars for Fast & Furious: Spy Racers includes Carlos Alazraqui (The Fairly OddParents), Eric Bauza (The Adventures of Puss in Boots), Grey Griffin (DC Super Hero Girls), Kevin Michael Richardson (Trolls: The Beat Goes On!), Fred Tatasciore (Trollhunters: Tales of Arcadia) and Tru Valentino (Archibald’s Next Big Thing).
Executive produced by Vin Diesel, Neal H. Moritz, Chris Morgan, Tim Hedrick and Bret Haaland, Fast & Furious: Spy Racers arrives on Netflix Dec. 26.
https://schema.orgBreadcrumbListListItem1Homehttps://www.cbr.com/ListItem2TVhttps://www.cbr.com/category/tv/ListItem3TV Newshttps://www.cbr.com/category/tv/news-tv/ListItem4Fast & Furious: Spy Racers Animated Series Reveals First Imageshttps://www.cbr.com/netflix-fast-furious-spy-racers-first-images/


XPath Rule tutorial
Writing PMD rules with XPath can be a bit easier than writing rules with Java code. Here’s an introduction on how to do that.
Introduction
PMD provides a very handy method for writing rules by writing an XPath query. When the XPath query finds a match, a violation is added to the report. This document focuses on XPath rules. You can go here for more information about writing a rule.
What is the Abstract Syntax Tree (AST)?
From FOLDOC an AST is
A data structure representing something which has been parsed, often used as a compiler or interpreter’s internal representation of a program while it is being optimised and from which code generation is performed.
In our context, this means that we basically have a tree representation of the Java source file. This tree can viewed as a structured document - just like XML. And since it’s conceptually similar to XML, it can be queried with XPath to find a pattern.
Using Designer
PMD comes with a handy tool that you will love if you want to write an XPath rule. Designer, runnable from a script in bin/
, is a very simple and useful utility for writing rules.
The basic steps involved in writing XPath rules are these:
- Write a simple Java example source snippet in Designer
- See the AST for the class you wrote
- Write an XPath expression that matches the violation you are searching
- Modify the Java class and go back to previous step to refine the XPath expression
Simple XPath expressions
This section provides hands-on examples of XPath queries over the AST. You will probably find this section more useful if you follow it with Designer and copy/paste the examples.
Copy the following Java source code to Designer:
public class a {
int fOne;
int fTwo;
private void run() {
int one;
int two;
}
}
Let’s assume you want to match something on class variable names. You see in the ASTVviewer that VariableDeclaratorId contains the variable name - in XML terms, the name is in the @Image
attribute. So you try an XPath expression as follows:
//VariableDeclaratorId
If you try this expression you’ll see that variables declared in methods are also matched. A more precise expression for matching field declarations is, well, using the FieldDeclaration node. This expression matches only the two fields declared in the class:
//FieldDeclaration
In a similar way, you can match only local variables with this expression
//LocalVariableDeclaration
With local variables we need to be more careful. Consider the following class:
public class a {
private void run() {
final int one;
int two;
{
int a;
}
}
}
Local variable declarations will match ‘a’, since it is a perfectly legal Java local variable. Now, a more interesting expression is to match variables declared in a method, and not on an internal block, nor in the class. Maybe you’ll start with an expression like this:
//MethodDeclaration//LocalVariableDeclaration
You’ll quickly see that all three local variables are matched. A possible solution for this is to request that the parent of the local variable declaration is the MethodDeclaration node:
//LocalVariableDeclaration[name(../../..) = 'MethodDeclaration']
Matching variables by name
Let’s consider that we are writing rules for logger. Let’s assume we use the Java logging API and we want to find all classes that have more than one logger. The following expression returns all variable declarations whose type is ‘Logger’.
//VariableDeclarator[../Type/ReferenceType/ClassOrInterfaceType[@Image='Logger']]
Finding a class with more than one logger is quite easy now. This expression matches the classes we are looking for.
TypeDeclaration[count(//VariableDeclarator[../Type/ReferenceType/ClassOrInterfaceType[@Image='Logger']])>1
But let’s refine this expression a little bit more. Consider the following class:
public class a {
Logger log = null;
Logger log = null;
int b;
void myMethod() {
Logger log = null;
int a;
}
class c {
Logger a;
Logger a;
}
}
With this class we will only be matching one violation, when we probably would have wanted to produce two violations (one for each class). The following refined expression matches classes that contain more than one logger.
//ClassOrInterfaceBodyDeclaration[count(//VariableDeclarator[../Type/ReferenceType/ClassOrInterfaceType[@Image='Logger']])>1]
Let’s assume we have a Factory class, that could be always declared final. We’ll search an xpath expression that matches all declarations of Factory and reports a violation if it is not declared final. Consider the following class:
public class a {
Factory f1;
void myMethod() {
Factory f2;
int a;
}
}
The following expression does the magic we need:
//VariableDeclarator
[../Type/ReferenceType/ClassOrInterfaceType
[@Image = 'Factory'] and ..[@Final='false']]
We recommend at this point that you experiment with Designer putting the final modifier to the Factory and verifying that the results produced are those expected.
Creating a new rule definition
To actually use your new XPath rule, it needs to be in a ruleset. You can create a new custom ruleset which just
contains your new XPath rule. You can use the following template. Just make sure, to replace the xpath
property,
the example code and give your rule a useful name and message.
<?xml version="1.0"?>
<ruleset name="Custom Rules"
xmlns="http://pmd.sourceforge.net/ruleset/2.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://pmd.sourceforge.net/ruleset/2.0.0 http://pmd.sourceforge.net/ruleset_2_0_0.xsd">
<description>
Custom rules
</description>
<rule name="My Rule"
language="java"
message="violation message"
class="net.sourceforge.pmd.lang.rule.XPathRule">
<description>
Rule Description
</description>
<priority>3</priority>
<properties>
<property name="xpath">
<value><![CDATA[
--- here comes your XPath expression
]]></value>
</property>
</properties>
<example>
<![CDATA[
public class ExampleCode {
public void foo() {
}
}
]]>
</example>
</rule>
</ruleset>
Finally, for many more details on writing XPath rules, pick up PMD Applied!


Tornado Uses Tow icons Font Material icons and ion icons miraged using them with prefix class ti-iconName


You lost the game !
Neither of you won
The opponant wants to take his revenge


Kevin-Prince Boateng on target as Fiorentina smash Virtus Entella in friendly
Ghana forward Kevin-Prince Boateng netted for Fiorentina as they hammered Virtus Entella 5-1 in a friendly game on Saturday.
The Serie B team was swept aside at the Stadio Franchi in this afternoon’s match, which gave Boateng a game time after largely warming the bench for the side this season.
Algerian winger Rachid Ghezzal bagged a brace, with goals from Kevin-Prince Boateng, Pol Lirola and Marco Benassi ensured the Viola run-riot the Italian Serie B.
Boateng joined the club from US Sassuolo on a two-year deal this summer.
He has scored one goal in 9 league games for the club.


${../includes/head.html}
${../includes/nav.html}
${../includes/breadcrumb.html}
Application
Create Time
Status
End Time
Completion
${../includes/footer.html}


Chapter 2 Statistical Learning
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.0.5
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.3 v purrr 0.3.4
## v tibble 3.1.0 v dplyr 1.0.5
## v tidyr 1.1.3 v stringr 1.4.0
## v readr 1.4.0 v forcats 0.5.1
## Warning: package 'ggplot2' was built under R version 4.0.4
## Warning: package 'tibble' was built under R version 4.0.5
## Warning: package 'tidyr' was built under R version 4.0.4
## Warning: package 'dplyr' was built under R version 4.0.4
## Warning: package 'forcats' was built under R version 4.0.4
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
2.1 Conceptual Exercises
Question 1: Flexible and inflexible statistical learning methods.
(a): If sample size (n) is very large and the number of predictors is small (p) I would expect a flexible statistical learning method to perform better than an inflexible method. This is where sample sizes are large one can assume that the variance will be a lesser contributor to the irreducible error than bias. And, the bias of the more flexible method will be lower than the bias of the more flexible method.
(b): If there is a large number of predictors (p) and a small number of data points (n) I would expect a flexible statistical learning method to perform worse than an inflexible method. This is because a flexible method would be likely to have high variance (i.e. the component of the reducible error associated with the differences between model prediction over different training sets). Hence, the more flexible method would be more prone to overfitting the small number of training data points (than the inflexible method) and in turn be likely to return worse results. This is of course a generalisation and the performance of flexible vs. inflexible methods varies from dataset to dataset.
(c): If the relationship between the response variable and the predictor variables is highly non linear I would expect a flexible statistical learning method to perform better than an inflexible method. This is because a relatively inflexible methods (such as linear regression) tend to have assumptions around linearity embedded within them, whereas more flexible methods do not (e.g. splines).
(d): If the variance of the error terms is extremely high I would expect a flexible statistical learning method to perform worse than an inflexible method. This is because with a flexible model there would a tendency to overfit the large amount noise (i.e. very high variance in error terms) in the data. Whereas, the less flexible method would be less sensitive to the noise and in many cases could well do a better job of extracting the signal (i.e. relationship) between the predictors and the response variable.
Question 2: Regression or classification problems.
(a):
Problem type: regression (salary is a continuous variable);
n = 500;
and, p = 3.
(b):
Problem type: classification (success or failure is a binary variable);
n = 20;
and, p = 13.
(c):
Problem type - regression (% change is a continuous variable);
n = 52;
and, p = 3.
Question 3: Bias-variance decomposition
(a): sketched in paper notebook.
(b): describing the shape of typical error curves
Bias (squared) - reduces as the flexibility of method increases because the bias represents the errors by approximating and simplifying a real world system. Less flexible methods apply more simplifications than flexible methods and hence have greater bias.
Variance - increase as the flexibility of a method increases because the variance represents the error arising from sample process. More flexible methods are more closely fitted to the specific features of the data than less flexible models. So, overfitting of the current sample increases of model flexibility, driving increases in variance errors.
The Training error - decrease as the flexibility of a method increases (following the bias curve plus the irreducible error). This is because variance errors are not evident in fitting to the training set, rather overfitting actually reduce training errors (giving an overly optimistic perspective on the likely performance of a method on new data).
The test error - decreases as method flexibility increases but then increases again. This is because although the test error decrease as the bias component of the errors decreases, at some point increases in the variance component of the error drives increases in the test error. In other words there is a point at which the advantages of increase flexibility (in terms of reducing the bias component) are outweigh by the disadvantages (in terms of overfitting as the variance component increases.
The irreducible error - is constant and by definition is the component of the error that is unaffected by method choice and parameterisation.
Question 4: Examples problems which are well suited to statistical learning methods.
Classification problems:
Identifying if an email is or is not spam is a problem where predictions are required. The response variable would be flag indicating if an email is spam or not (in the training set this might have been set by manually reviewing the email). The predictor variables would be characteristics of the email for example the use of certain words that are prevalent in spam.
Explaining difference in the proportion of professors who have tenured. The response variable would be a variable indicating if the professor in question has tenure. The explanatory variables could be characteristic including the gender of the professor, if they have a minority ethnic background etc.
Predicting if an athlete will win a medal (or not) at the Olympics in a specific event. Predictor variables here could include for example performance at past Olympics, personal bests etc.
Regression problems:
Estimating the amount of plastic waste produced by a country. Here predictor variables could include GDP, population, quantitative measure of the maturity of the waste disposal system etc.
Predicting if a given individual will make use of green spaces in their local area. Here predictor variables might include self-reported health status, age etc.
Explaining the Green House Gas emission reductions (or increases) delivered by a country. Here predictor values might include GDP per capita, a categorical variable indicating how supportive a countries is at COP meetings, the political leanings of the governing party (on a left-right axis) etc.
Clustering problems:
Identifying if there are groups of neighborhoods within a city facing similar problems with citizens accessing green space. Here features for clustering might include the proportion of the population within easy walking distance of public green space, the amount of public green space in the neighborhood, the proportion of the population experiencing disabilities.
Identifying if there are groups of customer (of a given business) with similar purchasing habit. Here feature for clustering might total spend per month with the business, the frequency of purchases etc.
Identify if groups of people with similar attitudes to car sharing can be identified from survey responses. Here features for clustering might include Likhert scales responses asking about attitudes to car sharing.
Question 5: advantages and disadvantages of a very flexible method (relative to an inflexible method).
Advantages:
ability to capture non-linear relationships between variables;
ability to pick up relatively subtle associations between variables;
can deliver more accurate prediction by modeling more of the complexity of real world systems.
Disadvantages:
prone to overfitting;
large numbers of data points are required;
computational intensive;
can be difficult to interpret the model, and hence not so useful for inference.
Question 6: parametric and non-parametric methods
A parametric model makes as assumptions about the functional form (i.e. shape) of f. Where f is the function mapping the values of predictor/s to the values of the response variable. Based on these assumptions the general form of the model can be mathematical expressed including the predictor variables and associated co-efficients. Once a parametric model has been selected it can be fit to the data, this reduces to a problem of estimating the coefficients in the mathematical model. The primary advantage of this approach is its simplicity (estimating a set of parameters is much simpler than estimating f itself). The disadvantages are that: it can be difficult to know which model (i.e. shape) to select and picking the wrong model results in poor results; and, that flexible models are prone to overfitting.
A non-parametric model does not make any assumptions about the functional form of f. Rather such models attempt to estimate f by fitting the points as closely as possible, subject to specified constraints on how ‘wiggly’ or smooth a line should result. The main advantage of non-parametric models is that they can fit a wide variety of shapes for f and the analyst does not need to make any a priori guesses about what the associated between predictor and response variables are. However, this advantage comes at the cost of complexity. As the problems of estimating f is not reduced to one of estimating parameters, very large numbers of data points are needed. Also, given non-parametric models are not constrained by assumption about the shape of f then care is needed to avoid overfitting (i.e. an appropriate smoothness constraint must be defined by the analyst).
Question 7: K-nearest neighbors
(a): the euclidean distance between each data point and a test point (x1 = x2 = x3 = 0) is shown below.
library(tidyverse)
<- read_csv("2_7.csv") %>%
data mutate(dist_from_test_point = sqrt(x1^2 + x2^2 + x3^2))
%>%
data ::kable() knitr
| obs | x1 | x2 | x3 | y | dist_from_test_point |
|---|---|---|---|---|---|
| 1 | 0 | 3 | 0 | Red | 3.000000 |
| 2 | 2 | 0 | 0 | Red | 2.000000 |
| 3 | 0 | 1 | 3 | Red | 3.162278 |
| 4 | 0 | 1 | 2 | Green | 2.236068 |
| 5 | -1 | 0 | 1 | Green | 1.414214 |
| 6 | 1 | 1 | 1 | Red | 1.732051 |
%>%
data select(obs, dist_from_test_point) %>%
::kable() knitr
| obs | dist_from_test_point |
|---|---|
| 1 | 3.000000 |
| 2 | 2.000000 |
| 3 | 3.162278 |
| 4 | 2.236068 |
| 5 | 1.414214 |
| 6 | 1.732051 |
(b): Using the k-nearest neighbor method with k = 1 for the test point (x1 = x2 = x3 = 0) the prediction would be the Y value of the nearest point. The nearest point is 5 so the prediction would be Green
.
(c): If k =3, k-nearest neighbor would look at the three nearest points (y2 = Red
, y5 = Green
and y6 = Red
). The predicted y value would be Red
as the majority of the k nearest points have an observed y values of Red
.
2.2 Applied Exercises
Question 8: The Colleges Dataset
(a): first I read in the data for the package.
library(ISLR)
library(pander)
<- as_tibble(College) college
(b): There college names are already stored as row names
pander(head(college))
| Private | Apps | Accept | Enroll | Top10perc | Top25perc | F.Undergrad |
|---|---|---|---|---|---|---|
| Yes | 1660 | 1232 | 721 | 23 | 52 | 2885 |
| Yes | 2186 | 1924 | 512 | 16 | 29 | 2683 |
| Yes | 1428 | 1097 | 336 | 22 | 50 | 1036 |
| Yes | 417 | 349 | 137 | 60 | 89 | 510 |
| Yes | 193 | 146 | 55 | 16 | 44 | 249 |
| Yes | 587 | 479 | 158 | 38 | 62 | 678 |
| P.Undergrad | Outstate | Room.Board | Books | Personal | PhD | Terminal |
|---|---|---|---|---|---|---|
| 537 | 7440 | 3300 | 450 | 2200 | 70 | 78 |
| 1227 | 12280 | 6450 | 750 | 1500 | 29 | 30 |
| 99 | 11250 | 3750 | 400 | 1165 | 53 | 66 |
| 63 | 12960 | 5450 | 450 | 875 | 92 | 97 |
| 869 | 7560 | 4120 | 800 | 1500 | 76 | 72 |
| 41 | 13500 | 3335 | 500 | 675 | 67 | 73 |
| S.F.Ratio | perc.alumni | Expend | Grad.Rate |
|---|---|---|---|
| 18.1 | 12 | 7041 | 60 |
| 12.2 | 16 | 10527 | 56 |
| 12.9 | 30 | 8735 | 54 |
| 7.7 | 37 | 19016 | 59 |
| 11.9 | 2 | 10922 | 15 |
| 9.4 | 11 | 9727 | 55 |
(c): First I produce the summary statistics.
%>%
college ::skim() skimr
Variable type: factor
| skim_variable | n_missing | complete_rate | ordered | n_unique | top_counts |
|---|---|---|---|---|---|
| Private | 0 | 1 | FALSE | 2 | Yes: 565, No: 212 |
Variable type: numeric
| skim_variable | n_missing | complete_rate | mean | sd | p0 | p25 | p50 | p75 | p100 | hist |
|---|---|---|---|---|---|---|---|---|---|---|
| Apps | 0 | 1 | 3001.64 | 3870.20 | 81.0 | 776.0 | 1558.0 | 3624.0 | 48094.0 | ▇▁▁▁▁ |
| Accept | 0 | 1 | 2018.80 | 2451.11 | 72.0 | 604.0 | 1110.0 | 2424.0 | 26330.0 | ▇▁▁▁▁ |
| Enroll | 0 | 1 | 779.97 | 929.18 | 35.0 | 242.0 | 434.0 | 902.0 | 6392.0 | ▇▁▁▁▁ |
| Top10perc | 0 | 1 | 27.56 | 17.64 | 1.0 | 15.0 | 23.0 | 35.0 | 96.0 | ▇▇▂▁▁ |
| Top25perc | 0 | 1 | 55.80 | 19.80 | 9.0 | 41.0 | 54.0 | 69.0 | 100.0 | ▂▆▇▅▃ |
| F.Undergrad | 0 | 1 | 3699.91 | 4850.42 | 139.0 | 992.0 | 1707.0 | 4005.0 | 31643.0 | ▇▁▁▁▁ |
| P.Undergrad | 0 | 1 | 855.30 | 1522.43 | 1.0 | 95.0 | 353.0 | 967.0 | 21836.0 | ▇▁▁▁▁ |
| Outstate | 0 | 1 | 10440.67 | 4023.02 | 2340.0 | 7320.0 | 9990.0 | 12925.0 | 21700.0 | ▃▇▆▂▂ |
| Room.Board | 0 | 1 | 4357.53 | 1096.70 | 1780.0 | 3597.0 | 4200.0 | 5050.0 | 8124.0 | ▂▇▆▂▁ |
| Books | 0 | 1 | 549.38 | 165.11 | 96.0 | 470.0 | 500.0 | 600.0 | 2340.0 | ▇▆▁▁▁ |
| Personal | 0 | 1 | 1340.64 | 677.07 | 250.0 | 850.0 | 1200.0 | 1700.0 | 6800.0 | ▇▃▁▁▁ |
| PhD | 0 | 1 | 72.66 | 16.33 | 8.0 | 62.0 | 75.0 | 85.0 | 103.0 | ▁▁▅▇▅ |
| Terminal | 0 | 1 | 79.70 | 14.72 | 24.0 | 71.0 | 82.0 | 92.0 | 100.0 | ▁▁▃▆▇ |
| S.F.Ratio | 0 | 1 | 14.09 | 3.96 | 2.5 | 11.5 | 13.6 | 16.5 | 39.8 | ▁▇▂▁▁ |
| perc.alumni | 0 | 1 | 22.74 | 12.39 | 0.0 | 13.0 | 21.0 | 31.0 | 64.0 | ▅▇▆▂▁ |
| Expend | 0 | 1 | 9660.17 | 5221.77 | 3186.0 | 6751.0 | 8377.0 | 10830.0 | 56233.0 | ▇▁▁▁▁ |
| Grad.Rate | 0 | 1 | 65.46 | 17.18 | 10.0 | 53.0 | 65.0 | 78.0 | 118.0 | ▁▅▇▅▁ |
Then produce a scatter plot matrix for the first 10 variables.
(c): next is to plot side by side boxplots of outstate
vs private
%>%
college ggplot(aes(x = Outstate, y = Private)) +
geom_boxplot() +
coord_flip() +
labs(x = "Private university?",
y = "Number of out of state students",
title = "Private universities tend to have more out of state students")
(iv): next is looking at universities with high proportions of students from elite high schools.
%>%
college mutate(elite = if_else(Top10perc > 50,
TRUE,
FALSE)) %>%
group_by(elite) %>%
summarise(n = n())
## # A tibble: 2 x 2
## elite n
## <lgl> <int>
## 1 FALSE 699
## 2 TRUE 78
(v): next looking at producing some histograms for a couple of continuous variables of interest (full and part time undergraduates)
library(patchwork)
<- college %>%
p select(F.Undergrad, P.Undergrad) %>%
mutate(id = row_number(), .before = F.Undergrad) %>%
pivot_longer(cols = c(F.Undergrad, P.Undergrad),
names_to = "student_status",
values_to = "number_of_students") %>%
ggplot(aes(number_of_students)) +
geom_histogram(aes(fill = student_status), bins = 100) +
facet_wrap(~student_status) +
guides(fill = FALSE) +
labs(x = "Number of students attending",
y = "Number of universities")
<- p + coord_cartesian(xlim = c(0,2500)) +
p_zoom labs(subtitle = "Zooming on smaller cohort sizes")
/ p_zoom +
p plot_annotation(title = "Differing frequencies of full and part-time students cohort sizes")
(vi): Continuing the exploratory data analysis, my key findings were as follows:
- Private universities appear to have higher graduation rates than public universities.
%>%
college
# remove an outlier with impossible graduation rate
filter(Grad.Rate <= 100) %>%
# produce plot base
ggplot(aes(Private, Grad.Rate)) +
# add data points as background layer
geom_jitter(alpha = 0.5, width = 0.2, colour = "lightblue") +
geom_boxplot(fill = NA, outlier.shape = NA,
size = 1) +
# add labels
labs(x = "Private university?",
y = "Graduation rate",
title = "Private universities appear to have higher graduation rates\n")
- More selective universities appear to have higher graduation rates.
%>%
college
# remove an outlier with impossible graduation rate
filter(Grad.Rate <= 100) %>%
# create plot base
ggplot(aes(cut_width(Accept / Apps * 100,
width = 20,
boundary = 0), Grad.Rate)) +
# add data points as a background layer
geom_jitter(alpha = 0.5, colour = "lightblue", width = 0.2)+
# add boxplots
geom_boxplot(width = 0.2, alpha = 0) +
# format scales for readability
scale_x_discrete(labels = c("0-19%", "20-39%", "40-59%", "60-79%", "80-100%")) +
scale_y_continuous(labels = scales::percent_format(scale = 1)) +
# add labels
labs(x = "\nPercentage of applications accepted",
y = "Percentage of students graduating\n",
title = "More selective universities appear to have higher graduation rates\n")
Question 9: The Auto dataset
(a):
Quantitative predictors:
mpg
,cylinders
,displacement
,horsepower
,weight
,acceleration
,year
andorigin
.Qualitative predictor:
name.
(b): The range for each quantiative variable is shown in the skim dataframe below (p0 corresponds to the minimum and p100 corresponds to the maximum).
(c): The mean and standard deviations for each quantiative variable is shown in the skim dataframe below.
::skim(Auto) %>%
skimrselect(-n_missing, -complete_rate)
Variable type: factor
| skim_variable | ordered | n_unique | top_counts |
|---|---|---|---|
| name | FALSE | 301 | amc: 5, for: 5, toy: 5, amc: 4 |
Variable type: numeric
| skim_variable | mean | sd | p0 | p25 | p50 | p75 | p100 | hist |
|---|---|---|---|---|---|---|---|---|
| mpg | 23.45 | 7.81 | 9 | 17.00 | 22.75 | 29.00 | 46.6 | ▆▇▆▃▁ |
| cylinders | 5.47 | 1.71 | 3 | 4.00 | 4.00 | 8.00 | 8.0 | ▇▁▃▁▅ |
| displacement | 194.41 | 104.64 | 68 | 105.00 | 151.00 | 275.75 | 455.0 | ▇▂▂▃▁ |
| horsepower | 104.47 | 38.49 | 46 | 75.00 | 93.50 | 126.00 | 230.0 | ▆▇▃▁▁ |
| weight | 2977.58 | 849.40 | 1613 | 2225.25 | 2803.50 | 3614.75 | 5140.0 | ▇▇▅▅▂ |
| acceleration | 15.54 | 2.76 | 8 | 13.78 | 15.50 | 17.02 | 24.8 | ▁▆▇▂▁ |
| year | 75.98 | 3.68 | 70 | 73.00 | 76.00 | 79.00 | 82.0 | ▇▆▇▆▇ |
| origin | 1.58 | 0.81 | 1 | 1.00 | 1.00 | 2.00 | 3.0 | ▇▁▂▁▂ |
(d): The means and standard deviations for the quantitative variables for the dataset (minus the 10th and 85th rows) are shown in the skim dataframe below.
<- slice(Auto, -10, -85)
autos_omit
::skim(autos_omit) %>%
skimrselect(-n_missing, -complete_rate)
Variable type: factor
| skim_variable | ordered | n_unique | top_counts |
|---|---|---|---|
| name | FALSE | 299 | amc: 5, for: 5, toy: 5, amc: 4 |
Variable type: numeric
| skim_variable | mean | sd | p0 | p25 | p50 | p75 | p100 | hist |
|---|---|---|---|---|---|---|---|---|
| mpg | 23.49 | 7.80 | 9 | 17.50 | 23.0 | 29.00 | 46.6 | ▆▇▆▃▁ |
| cylinders | 5.46 | 1.70 | 3 | 4.00 | 4.0 | 8.00 | 8.0 | ▇▁▃▁▃ |
| displacement | 193.51 | 104.14 | 68 | 105.00 | 148.5 | 262.00 | 455.0 | ▇▂▂▃▁ |
| horsepower | 104.07 | 38.18 | 46 | 75.00 | 92.5 | 125.00 | 230.0 | ▆▇▃▁▁ |
| weight | 2972.47 | 848.51 | 1613 | 2223.75 | 2797.5 | 3608.00 | 5140.0 | ▇▇▅▅▂ |
| acceleration | 15.57 | 2.74 | 8 | 13.83 | 15.5 | 17.08 | 24.8 | ▁▆▇▂▁ |
| year | 76.00 | 3.68 | 70 | 73.00 | 76.0 | 79.00 | 82.0 | ▇▆▇▆▇ |
| origin | 1.58 | 0.81 | 1 | 1.00 | 1.0 | 2.00 | 3.0 | ▇▁▂▁▂ |
(e and f): The correlation plot below shows a high degree of correlation between four predictor variables (cylinders
, displacement
, horsepower
and weight
). There is also a high degree of correlation between these three predictors and the response variable (mpg
).
::ggcorr(Auto, label = TRUE) GGally
Scatter plots can help use look at these four predictor variables in more detail.
ggplot(Auto,
aes(factor(cylinders), mpg)) +
geom_jitter(colour = "lightblue", width = 0.2) +
geom_boxplot(width = 0.3, alpha = 0) +
labs(x = "\nNumber of Cylinders",
y = "Fuel economy (mpg)\n",
title = "There is a negative association between the number of cylinders\nand fuel economy\n")
ggplot(Auto,
aes(displacement, mpg)) +
geom_point(alpha = 0.5) +
geom_smooth(method = "lm", se = FALSE) +
scale_x_log10(breaks = c(0, 10, 100, 200, 400)) +
expand_limits(x = 0, y = 0) +
labs(x = "\nEngine displacement (on a log transformed scale)\n",
y = "Fuel economy (mpg)\n",
title = "There is a negative association between the\nlogarithm of engine displacement and fuel economy\n")
ggplot(Auto,
aes(horsepower, mpg)) +
geom_point(alpha = 0.5) +
geom_smooth(method = "lm", se = FALSE) +
scale_x_log10() +
expand_limits(x = 0, y = 0) +
labs(x = "Horsepower (on a log scale)",
y = "Fuel Economy (mpg)",
title = "There is a negative association between the\nlogarithm of horsepower and fuel economy\n")
ggplot(Auto,
aes(weight, mpg)) +
geom_point(alpha = 0.5) +
geom_smooth(method = "lm", se = FALSE) +
scale_x_log10() +
labs(x = "Weight in kgs (on a log scale)",
y = "Fuel economy (mpg)",
title = "There is a negative association between the\nlogarithm of weight and fuel economy\n")
Each of the four variables plotted above could be useful predictors of fuel economy. Additionally, the correlation plot also identified two other variables with reasonably strong correlations with fuel economy: year
and origin
. If I was going to proceed to develop a model using this data, it would be worth looking at year
and origin
in more detail.
Question 8: The Boston Housing dataset.


Notley kicked out of House
by The Canadian PressAlberta NDP Opposition Leader Rachel Notley has been kicked out of the legislature chamber after she refused to apologize for comments about the United Conservative government firing the province's election watchdog.
Notley told the house that Government House Leader Jason Nixon was making misleading statements on why the government was firing Lorne Gibson during Gibson's investigation of UCP fundraising misdeeds.
Legislature members have wide latitude to debate in the house, but rules don't allow for allegations that one member is deliberately misleading or lying.
When Speaker Nathan Cooper directed Notley to apologize, she refused, saying bigger issues are stake and that legislation to fire Gibson is "corrupt."
Cooper ejected Notley for the day, and she picked up her books and papers and walked out as colleagues pounded their desks in support.
Gibson has levelled more than $200,000 in fines surrounding rule-breaking linked to the 2017 United Conservative leadership race, which Jason Kenney won before he became premier this year.