CSE3026: Web Application Development
Lab 4: Movie Review
Scott Uk-Jin Lee
Except where otherwise noted, the contents of this document are
Copyright 2019 Scott Uk-Jin Lee.
All rights reserved.
Any redistribution, reproduction, transmission, or storage of part
or all of the contents in any form is prohibited without the author's
expressed written permission.
Lab 4
This lab consists of HTML, CSS, Layout
Create a movie review web site named "Rancid Tomatoes" for the film TMNT!
- The page created should look like the screenshot on the next slide.
- The page must match the appearance specified in the following slides.
- A pixel-perfect page that exactly matches the screenshot on the next slide is not expected (but as closely as possible)!
Screenshot of the movie review page
This screenshot is taken on Windows in Firefox!
It may differ slightly fron your system.
Lab 4 resources
Download the lab4-movieReview.zip
which consists of :
tmnt.html
: skeleton of the movie review page with the page contents
- This
html
file has no page sections or styles.
- The only modifications you should make are to:
- divide the page into sections using
div/span
tags, and add id/class
attributes.
- add the HTML necessary to enable the "favorites icon" (favicon) specified in later slide.
- All images: on the movie review page and mentioned in the following slides
background.png
, banner.png
, bannerbg.png
, critic.png
, fresh.png
,
overview.png
, rbg.png
, rotten.png
, rottenbig.png
, w3c-css.png
, w3c-html.png
Lab 4 exercises
According to the specification on following slides :
- Modify
tmnt.html
.
- divide the page into sections using
div/span
tags, and add id/class
attributes.
- add the HTML necessary to enable the "favorites icon" (favicon) specified in later slide.
- Create
movie.css
, style sheet for tmnt.html
.
Lab 4 constraints
You must satisfy the following constraints.
- Do not express unnecessary or redundant styles in CSS. For example:
- if two section share common styles, you should only specify those styles once.
- if the same style property is used for multiple elements, you should group those elements into a single CSS rule.
- Do not express style information in the HTML such as embedding style sheet, inline styles,
and presentational HTML tags (e.g,

,
, or
)
- Use context selectors to avoid creating too many classes and IDs. You should use 10 or less classes + IDs.
- Do not use HTML tables or absolute positioning on this lab.
- Format your HTML and CSS to be as readable as possible. Use proper indentation.
Ex : general page style
General style for the movie review page :
- page title is
TMNT – Rancid Tomatoes
- Page has a 'favorites icon' (favicon) of
rotten.gif
- Background of the page should be
background.png
- Text of the page has size of 8pt and uses Verdana, Tahoma, or any sans-serif font on the system
- Page has no margin or padding - the contents stretch to the very edge of the browser window
Ex : top banner & page heading
Image banner is at the top of the page
- at the center of this banner, there is
banner.png
- as a background of this banner,
bannerbg.png
repeats horizontally across the length of the page
- the heights of both images are 50px
Page heading (movie name and year) underneath the top banner :
- is centered and uses 24pt bold font
- uses Tahoma, Verdana, or sans-serif font available on the system
- has shadow - 3px to right and down - with color
#999999
Ex : overall content area
Below the page heading, there is the overall content area with 33% rating for the film, several reviews from critics, and overview of the film.
The overall content area :
- occupies 800px width and centered horizontally within the page
- when the page (browser) resize horizontally, overall content area should remain centered horizontally on the page
- has 4px gray solid border with 20px radius round corner
- should be large enough to contain all of its content (use overflow property in CSS)
Ex : overall content area - left
On the left side of overall content area, there are 550px-wide section with rotten 33%
rating and critics’ reviews of the film.
On the top of this overall content area - left, there is a smaller (33% overall rating) section containing large 'rotten' image.
- the large 'rotten' image is
rottenbig.png
and vertically aligned at the bottom
- at the background of this section
rbg.png
repeats horizontally across the entire length of the section
- both images are 83px tall
- '33%' overall rating text in this section uses 48pt red bold font
Ex : reviews section
Below the 33% overall rating section, there are two columns of reviews where :
- each column occupies 47% of the width of the overall left section
- there is a horizontal spacing of 2% between columns and neighboring content (do not use the new CSS3 column property)
Ex : reviews section
Each review box with quote :
- uses bold 8pt font & has background color of
#E8DC9B
- has 2px gray border with 10px radius round corner
- has 8px spacing between quote box’s content and its border
- has
fresh.gif
or rotten.gif
icon for the each review on the left side of the box has 5px spacing on the right
- review text should wrap around the
fresh
/rotten.gif
icon as needed
- has 20pt of vertical space between reviews.
Reviewer information below review box :
- follows under the quote box where review's affiliation is in italic
- has reviewer icon (
critic.gif
) that is shown to the left of the text and has 5px horizontal spacing from the text
Ex : overall content area - right
On the right side of overall content area, there is the general overview section with movie poster and a list of information about the movie.
The general overview section :
- is 250px wide and has a background color of
#A2B964
- has 10pt spacing between the edge of the section and the text of the list
Note : it is assumed that the general overview section will always be taller than the section of reviews to its left
Ex : overall content area - right
Movie information section (under the movie poster) :
- uses an 8pt Arial or any sans-serif font available on the system
- uses definition list (

,

,

elements)
- each definition term has bold text and has 10pt vertical spacing between it and the element above it
- has a list of links at the bottom that sohuld be shown without bullets or indentation
Ex : overall content area - bottom
At the bottom of overall content area, there is a bar of centered text indicating review (1-10) of 88
with:
- background color of
#A2B964
- 5px spacing between its text and the element’s own outer edge
- should have no spacing between its vertically neighbouring elements
Ex : w3c validator
At the bottom right corner of the movie review page has links to the W3C validators.
The validator images should:
- remain fixed in the page's bottom-right corner, even after scrolling
- appear as 50% opaque, halfway transparent
Produce valid movie review page!
- Your page must use valid HTML5 and successfully pass the W3C HTML5 validator.
- Your style sheet must use valid CSS3 and successfully pass the W3C CSS validator.
If you finish them all...
If you finish all the exercises:
- check the correctness of your page with a TA if necessary
- submit your
tmnt.html
& movie.css
files to your Git
repository under lab04
folder
Great work!


Web Design
What is a responsive site , and why responsiveness is important?
A responsive site is a website that automatically changes its content to fit the screen it is being viewed on. This is important because orginally people only looked on monitors and nowadays people tend to look on websites on the go on their phones.
What is a mobile first design, and why it's important?
A mobile first design is a website that is desgned for mobiles first, rather than desktops. This is so that important content can work well on small screens first and be built up to work well on bigger screens as well. This is important because people tend to look on website on their phones more and more making it important to get the display correct.
What are frameworks and, what are their pros and cons?
A framework is like a template which can be used to standardise code and solve common issues.
Pros
- Browser compatibility
- Clean and Tidy
- Saves you Time
- Solutions to Issues
Cons
- Can't learn to do it yourself
- Less control
What is a wireframe and why do we use it?
A wireframe is a sketch of the layout of the website. We do this so we have an understanding on what we will be doing.
What are the aspects of your wireframes you found difficult to implement, and why?
I found resizing the most difficult, I kept getting resizing parts but not the whole page evenly. Also getting it to look neat and tidy I am still not overly happy with it but I am at the time limit.


|
|
IFXSubject Class ReferenceThe IFXSubject interface supplies the services for distributing change notifications to attached dependents.
More...
Inheritance diagram for IFXSubject:
List of all members.
Detailed Description
The IFXSubject interface supplies the services for distributing change notifications to attached dependents.
Member Function Documentation
| virtual IFXRESULT IFXAPI IFXSubject::Attach |
( |
IFXObserver * |
pInObserver, |
|
|
U32 |
uInIntrestBits, |
|
|
IFXREFIID |
rIType = IID_IFXUnknown , |
|
|
U32 |
shiftBits = 0 |
|
) |
[pure virtual] |
|
|
|
Associates the provided IFXObserver for callback when the specified aspects of interest change.
- Parameters:
-
| pInObserver | A pointer to the IFXObserver to become associated. |
| uInIntrestBits | The U32 bit field that describes the aspects of interest whose change will trigger a IFXObserver::Resolve() call. |
| rIType | x. |
| shiftBits | Used for components supporting multiply inherited interfaces each with subject interfaces. |
- Returns:
- One of the following IFXRESULT codes:
- IFX_OK
No error.
- IFX_E_INVALID_POINTER
pInObserver was NULL.
- IFX_E_OUT_OF_MEMORY
Not enough memory is available to resolve the change.
- Note:
- This method is typically called from the IFXObserver.
Implemented in CIFXSubject, and CIFXSimpleObject. |
| virtual IFXRESULT IFXAPI IFXSubject::Detach |
( |
IFXObserver * |
pInObserver |
) |
[pure virtual] |
|
|
|
Disassociates the provided IFXObserver.
- Parameters:
-
| pInObserver | A pointer to the IFXObserver that should be disassociated. |
- Precondition:
- The provided IFXObserver is associated.
- Returns:
- One of the following IFXRESULT codes:
- IFX_OK
No error.
- IFX_E_INVALID_POINTER
pInObserver was NULL.
- IFX_E_SUBJECT_INVALID_OBSERVER
The provided observer was not associated.
- Note:
- This method is typically called from the IFXObserver.
Implemented in CIFXSubject, and CIFXSimpleObject. |
| virtual void IFXAPI IFXSubject::PostChanges |
( |
U32 |
uInChangedBits |
) |
[pure virtual] |
|
|
|
Publishes to attached Observers and ChanageManager that changes have occured.
- Parameters:
-
| uInChangedBits | The U32 bit field that describes the conceptual change with respect to the published interests. |
- Note:
- Should be called by the IFXSubject on itself when properties change that correlate to the published interests. When PostChanges() is called, all attached Observer Notify() methods are called.
Implemented in CIFXSubject, and CIFXSimpleObject. |
| virtual void IFXAPI IFXSubject::PreDestruct |
( |
|
) |
[pure virtual] |
|
© 1999 - 2006 Intel Corporation. All rights reserved.
* Other names and brands may be claimed as the property of others.
|
|


Bite Size Bayes¶
Copyright 2020 Allen B. Downey
License: Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
def prob(A):
"""Computes the probability of a proposition, A.
A: Boolean series
returns: probability
"""
return A.mean()
def conditional(A, B):
"""Conditional probability of A given B.
A: Boolean series
B: Boolean series
returns: probability
"""
return prob(A[B])
Two coins¶
Suppose I flip two fair coins and tell you (honestly) that at least one of the coins is heads. What is the probability that both coins are heads?
The answer is 1/3, and here’s an argument that explains it.
If you toss two coins, there are 4 equally likely outcomes: HH, HT, TH, TT
If I tell you that at least one is heads, that eliminates TT.
The remaining 3 outcomes are still equally likely, so their probability is now 1/3 each.
Therefore, the probability of HH is now 1/3.
However, you might still have some doubts. For me, Step 3 feels like an unsupported assertion: How do we know the 3 remaining outcomes are still equally likely?
The following simulation might help convince you.
First I’ll generate two sets of coin flips.
size = 10000
first = np.random.choice(['H', 'T'], size)
second = np.random.choice(['H', 'T'], size)
We can confirm that each coin has a 50% chance of landing heads:
prob(first == 'H')
0.4897
prob(second == 'H')
0.4918
Now we can compute a Boolean Series that is True
if either coin landed heads, or both.
at_least_one = (first == 'H') | (second == 'H')
And we can confirm that happens 75% of the time:
prob(at_least_one)
0.741
We can compute a Boolean Series that is True
if both coins landed heads.
both = (first == 'H') & (second == 'H')
And confirm that it happens 25% of the time.
prob(both)
0.2405
Finally, we can compute the conditional probability of both
given at_least_one
:
conditional(both, at_least_one)
0.32456140350877194
The Monty Hall problem¶
From Wikipedia:
Suppose you’re on a game show, and you’re given the choice of three doors: Behind one door is a car; behind the others, goats. You pick a door, say No. 1, and the host, who knows what’s behind the doors, opens another door, say No. 3, which has a goat. He then says to you, “Do you want to pick door No. 2?” Is it to your advantage to switch your choice?
To avoid ambiguities, we have to make some assumptions about the behavior of the host:
The host never opens the door you picked.
The host never opens the door with the car.
If you choose the door with the car, the host chooses one of the other doors at random.
The host always offers you the option to switch.
Under these assumptions, are you better off sticking or switching?
The correct answer is that you are better off switching. If you stick, you win 1/3 of the time. If you switch, you win 2/3 of the time.
Here’s one of many arguments that might persuade you.
If you always stick, you win if you initially choose the door with the car, so the probability is 1/3.
If you always switch, you win if you did not choose the door with the car, so the probability is 2/3.
However, many people do not find any verbal arguments persuasive. So, maybe a simulation will help.
Exercise: Write a simulation that confirms that you are better off switching if the host opens Door 3.
# Solution goes here
# Solution goes here
# Solution goes here
# Solution goes here
# Solution goes here
# Solution goes here
# Solution goes here
Bayes’s Theorem¶
In the previous two examples, you might have noticed a seeming contradiction:
In the coin example, we start with four hypotheses with equal probability; one of them is eliminated by the data, and I argue that the other three still have equal probability.
In the Monty Hall example, we start with three hypotheses with equal probability; one of them is eliminated by the data, but it turns out that the other two do not have equal probability.
When one hypothesis is eliminated, its probability is redistributed to the remaining hypotheses, but it seems like there is no general rule for how it is redistibuted.
Fortunately, Bayes’s Theorem resolves this contradiction; if we apply it carefully, it tells us exactly how the probability should be redistributed.
First I’ll solve the coin problem using a Bayes table. Again, we start with four hypotheses with equal prior probability. Just for fun, I’ll use Fraction
objects so the results are represented as rational numbers rather than floating-point.
from fractions import Fraction
hypos = ['HH', 'HT', 'TH', 'HH']
table = pd.DataFrame(index=hypos)
table['prior'] = Fraction(1, 4)
table
| prior | |
|---|---|
| HH | 1/4 |
| HT | 1/4 |
| TH | 1/4 |
| HH | 1/4 |
The data, in this example, is my report that there is at least one heads. Assuming that I report honestly, we can compute the likelihood of the data under each hypothesis.
table['likelihood'] = [1, 1, 1, 0]
table
| prior | likelihood | |
|---|---|---|
| HH | 1/4 | 1 |
| HT | 1/4 | 1 |
| TH | 1/4 | 1 |
| HH | 1/4 | 0 |
And we fill in the rest of the table in the usual way.
table['unnorm'] = table['prior'] * table['likelihood']
prob_data = table['unnorm'].sum()
table['posterior'] = table['unnorm'] / prob_data
table
| prior | likelihood | unnorm | posterior | |
|---|---|---|---|---|
| HH | 1/4 | 1 | 1/4 | 1/3 |
| HT | 1/4 | 1 | 1/4 | 1/3 |
| TH | 1/4 | 1 | 1/4 | 1/3 |
| HH | 1/4 | 0 | 0 | 0 |
In this example the remaining hypotheses have the same posterior probability because the likelihood of the data is the same under any of them.
For the Monty Hall problem, that is not the case. We’ll start with three hypotheses, one for each door, and equal priors.
hypos = ['Door 1', 'Door 2', 'Door 3']
table = pd.DataFrame(index=hypos)
table['prior'] = Fraction(1, 3)
table
| prior | |
|---|---|
| Door 1 | 1/3 |
| Door 2 | 1/3 |
| Door 3 | 1/3 |
Now, the data is that the host opens Door 3. So the question is, what is the probability of the data under each hypothesis. In reverse order:
Door 3: If the car is behind Door 3 and you choose Door 1, the host has no choice but to open Door 2, so the probability that he opens Door 3 is 0.
Door 2: If the car is behind Door 2 and you choose Door 1, the host has not choice but to open Door 3, so the probability that he opens Door 3 is 1.
Door 1: If the car is behind Door 1 and you choose Door 1, the host has a choice, and the statement of the problem indicates that he chooses either Door 2 or Door 3 with equal probability, so the probability that he opens Door 3 is 1/2.
That’s all we need to fill in the likelihoods:
table['likelihood'] = [Fraction(1,2), 1, 0]
table
| prior | likelihood | |
|---|---|---|
| Door 1 | 1/3 | 1/2 |
| Door 2 | 1/3 | 1 |
| Door 3 | 1/3 | 0 |
And we fill in the rest of the table in the usual way.
table['unnorm'] = table['prior'] * table['likelihood']
prob_data = table['unnorm'].sum()
table['posterior'] = table['unnorm'] / prob_data
table
| prior | likelihood | unnorm | posterior | |
|---|---|---|---|---|
| Door 1 | 1/3 | 1/2 | 1/6 | 1/3 |
| Door 2 | 1/3 | 1 | 1/3 | 2/3 |
| Door 3 | 1/3 | 0 | 0 | 0 |
In this example the likelihood of the data is not the same under the remaining hypotheses, so the posterior probabilities are not the same.
Exercise: Here’s a variation on the Monty Hall problem. Suppose that whenever the host has a choice, he opens Door 3. In that case, what are the posterior probabilities for the three doors?
# Solution goes here
# Solution goes here
# Solution goes here
Exercise: Suppose that whenever the host has a choice he chooses Door 3 with probability p
and Door 2 with probability 1-p
. What are the posterior probabilities for the three doors?
Hint: If you use SymPy to create a symbol for p
, it will carry through the computation.
from sympy import symbols
p = symbols('p')
# Solution goes here
# Solution goes here
# Solution goes here
# Solution goes here


** Important Notice **
We are currently redesigning and rebuilding the Open Targets Platform with new features.
For a preview of the new Platform interface, please see the new profile page for {{disease.label}}
View associated targets | COVID-19 Target Prioritisation Tool
Synonyms: {{syn}}
Loading data


netlag
`Prev `__
N
`Next `__
--------------
**netlag**: n.
[IRC, MUD] A condition that occurs when the delays in the
`*IRC* <../I/IRC.html>`__ network or on a `*MUD* <../M/MUD.html>`__
become severe enough that servers briefly lose and then reestablish
contact, causing messages to be delivered in bursts, often with delays
of up to a minute. (Note that this term has nothing to do with
mainstream “jet lag”, a condition which hackers tend not to be much
bothered by.) Often shortened to just ‘lag’.
--------------
+-------------------------------+----------------------------+----------------------------+
| `Prev `__ | `Up <../N.html>`__ | `Next `__ |
+-------------------------------+----------------------------+----------------------------+
| netiquette | `Home <../index.html>`__ | netnews |
+-------------------------------+----------------------------+----------------------------+


|
RCI Message Board
1.0
https://github.com/Jguer/RCI-Message-Board
|
When the application is called in the command line it can have various arguments:
Non-Optional
n [name] -> Intended name for the server
j [ip address] -> IP address for the server. Must be the ip of the machine
u [UDP port] -> Port for udp incoming connections. Must be free port.
t [TCP port] -> Port for tcp incoming connections. Must be free port.
Optional
i [ip address] -> IP address of the identity server.
Default: tejo.tecnico.ulisboa.pt
p [port of address] -> Port of the identity server on that IP address.
Default: 59000
m [max. messages] -> Maximum number of messages that the server can save.
Default: 200
r [register interval] -> Time (in seconds) between registers to the id server.
Default:10s
When a server tries to connect it is put on a queue of 5 servers capacity.
This routine accepts the connection, and saves that server info on a list dedicated to server struct items. This items contain the server name, ip address, tcp port and the corresponding file descriptor. Theres a udp port slot, who is unused. This structure is shared between client and server.
Every incoming server has is name set to Inbound Server.
The server is projected to only be able to receive two type of message from the clients. The messages can have one of two headers: 'PUBLISH message'
or 'GET_MESSAGES n'
.
First thing to do is allocate some space in memory to save our incoming communication, being sent via UDP, the message arrives all at once and the buffer needs to have size for the entire communication.
The size is the size of 'PUBLISH' plus the size of the whole message (140 char. max). All that is received with more size than the size who was allocated is lost.
After receiving the information, it is saved in a message struct, in the case of 'PUBLISH' being the header, the logical clock is set to the next logical clock. (eg. if LastMessageLC == 1 so NewMessageLC = 2)
If 'GET_MESSAGES n' is received, the last n messages are fetched from the matrix and sent to the client who made the request. If n is bigger than the number of messages present, only the present messages are sent to the user.
The commands that the user can input are: These are not case-sensitive and there are numeric shortcuts.
| Command | Shortcut |
|---|---|
| join | 1 |
| show_servers | 2 |
| show_messages | 3 |
| exit | 9 |
Join command starts the communications to other servers and enables client communications.
The show_servers command prints the list currently being used to select the server at work.
The show_messages command prints the matrix currently being used to save messages.
Exit command breaks out of the loop.
Server to server communications are based in two types of headers: 'SMESSAGES\n(message\n)\n'
or 'SGET_MESSAGES\n'
.
The parsing of information is made at the rate of the incoming bytes from the recv command, and split in '
' sequences.
The former is interpreted as a command to save the messages. The later requests all the messages that this server has.
After receiving the information, it is saved in a message struct, in the case of 'SMESSAGES' being the header, the logical clock is set to the next logical clock of the MAX between LastMessageLC and IncomingMessageLC. (eg. if LastMessageLC == 20 and IncomingMessageLC == 5 so NewMessageLC = 21)
If 'SGET_MESSAGES' is received, the messages are fetched from the matrix and sent to the server who made the request.


Master Chief
Applying For: Protector of the Galaxy
The Best Space Marine
- Have saved life in the galaxy on 5 occasions. (Will be 6 eventually)
- I have a good undstanding of how big lasers work.
- Good working relationship with computers.
- Don't talk much.


The Machine Intelligence Laboratory (MIL) provides a synergistic environment dedicated to the study and development of intelligent, autonomous robots. The faculty and students associated with the laboratory conduct research in the theory and realization of machine intelligence covering topics such as machine learning, real-time computer vision, statistical modeling, robot kinematics, autonomous vehicles, teleoperation and human interfaces, robot and nonlinear control, computational intelligence, neural networks, and general robotics. Applications of MIL research include autonomous underwater vehicles (AUVs), autonomous water surface vehicles (ASVs), autonomous land vehicles, autonomous air vehicles (AAVs including quadcopters and micro air vehicles, MAVs) , swarm robots, humanoid robots, and autonomous household robots.
MIL's SubjuGator is the three time champion autonomous submarine of the RoboSub AUVSI/ONR underwater competition (2005-2007), and placed in the top 3 in eleven of the 17 years of the competition (including second place in 2012, 2013 and 2014). In 2013, MIL participated for the first time in the RoboBoat AUVSI/ONR water surface vechicle competition with our PropaGator robot boat; we won! In 2014, we earned second place in the RoboBoat competition. We also won the static division of the 2011 ION Robot Lawnmower competition with MIL's InstiGator robot lawnmower.
In the fall of 2005, MIL physically moved next door to CIMAR (The Center for Intelligent Machines and Robotics) in the Mechanical and Aerospace Engineering Department. We relocated our lab facilities and faculty offices adjacent to the CIMAR labs and offices in order to streamline our collaborations. With MIL (from Electrical and Computer Engineering Department) and CIMAR working together, the possibilities are incredible.
Dr. Schwartz
(111)-111-1111
schwartz@email.com


Class BuilderStrategy
Represents a strategy in the chain of responsibility. Strategies are required to support both BuildUp and TearDown.
Inheritance
Inherited Members
Namespace: Unity.Strategies
Assembly: Unity.Container.dll
Syntax
public abstract class BuilderStrategy
Methods
| Improve this Doc View SourceGetPolicy<TPolicyInterface>(ref BuilderContext)
Declaration
public static TPolicyInterface GetPolicy<TPolicyInterface>(ref BuilderContext context)
Parameters
| Type | Name | Description |
|---|---|---|
| BuilderContext | context |
Returns
| Type | Description |
|---|---|
| TPolicyInterface |
Type Parameters
| Name | Description |
|---|---|
| TPolicyInterface |
PostBuildUp(ref BuilderContext)
Called during the chain of responsibility for a build operation. The PostBuildUp method is called when the chain has finished the PreBuildUp phase and executes in reverse order from the PreBuildUp calls.
Declaration
public virtual void PostBuildUp(ref BuilderContext context)
Parameters
| Type | Name | Description |
|---|---|---|
| BuilderContext | context | Context of the build operation. |
PreBuildUp(ref BuilderContext)
Called during the chain of responsibility for a build operation. The PreBuildUp method is called when the chain is being executed in the forward direction.
Declaration
public virtual void PreBuildUp(ref BuilderContext context)
Parameters
| Type | Name | Description |
|---|---|---|
| BuilderContext | context | Context of the build operation. |
RequiredToBuildType(IUnityContainer, Type, InternalRegistration, InjectionMember[])
Analyze registered type
Declaration
public virtual bool RequiredToBuildType(IUnityContainer container, Type type, InternalRegistration registration, params InjectionMember[] injectionMembers)
Parameters
| Type | Name | Description |
|---|---|---|
| IUnityContainer | container | Reference to hosting container |
| System.Type | type | |
| InternalRegistration | registration | Reference to registration |
| InjectionMember[] | injectionMembers |
Returns
| Type | Description |
|---|---|
| System.Boolean | Returns true if this strategy will participate in building of registered type |
RequiredToResolveInstance(IUnityContainer, InternalRegistration)
Analyzes registered type
Declaration
public virtual bool RequiredToResolveInstance(IUnityContainer container, InternalRegistration registration)
Parameters
| Type | Name | Description |
|---|---|---|
| IUnityContainer | container | Reference to hosting container |
| InternalRegistration | registration | Reference to registration |
Returns
| Type | Description |
|---|---|
| System.Boolean | Returns true if this strategy will participate in building of registered type |


It looks like there has been an error when trying to create your shopping website 😥 We're not sure what's happened, but please try again later!


Members
(constant) mochaUtils
Copyright 2016 Google Inc. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
- Source:
Type Definitions
TestResult
A TestResult object will contain the following information about the
test it represents.
Type:
- Object
Properties:
| Name | Type | Description |
|---|---|---|
parentTitle |
String | Title of the parent test suite |
state |
String | Will be 'passed' or 'failed' |
title |
String | Title of the test |
errMessage |
String | Optional parameter if the test has failed |
- Source:
TestResults
TestResults is a simple javascript object containing all results
from the mocha test runner
Type:
- Object
Properties:
| Name | Type | Description |
|---|---|---|
passed |
Array.<TestResult> | Array of passed tests |
failed |
Array.<TestResult> | Array of failed tests |
- Source:


Terms of Use
All SNAC Cooperative (SNAC-C) data describing persons, corporate bodies, and families are made available to the public free of restrictions under the terms of the Creative Commons CC0 1.0 Universal (CC0 1.0) Public Domain Dedication.
Though the SNAC-C data is available to the public free of restrictions, we encourage you to follow responsible practice in providing attribution to the sources of the data.
Cooperative Member Data Policy
All Members grant the Cooperative permission to make contributed data available under the terms of CC0 1.0.
For the full text of CC0 1.0 see https://creativecommons.org/publicdomain/zero/1.0/.


Public: Methods to parse lines of AsciiDoc into an object hierarchy representing the structure of the document. All methods are class methods and should be invoked from the Lexer class. The main entry point is ::next_block. No Lexer instances shall be discovered running around. (Any attempt to instantiate a Lexer will be futile).
The object hierarchy created by the Lexer consists of zero or more Section and Block objects. Section objects may be nested and a Section object contains zero or more Block objects. Block objects may be nested, but may only contain other Block objects. Block objects which represent lists may contain zero or more ListItem objects.
Examples
# Create a Reader for the AsciiDoc lines and retrieve the next block from it. # Lexer::next_block requires a parent, so we begin by instantiating an empty Document. doc = Document.new reader = Reader.new lines block = Lexer.next_block(reader, doc) block.class # => Asciidoctor::Block


extends Collection
A collection that requires keys to be associated with each element, such as Dictionary.
void add ( String key, Object o ); Add o with a key Object get ( String key ); find the object by key
Add o with a key
find the object by key


Home
Settings
Volume
Wifi
Abraham Linksys
Bill Wi the Science Fi
Hide Yo Kids Hide Yo Wifi
Wifi password
Save
Patient Info
Account


The futurecoder servers are having some trouble right now. Try again in a few minutes.
In the meantime, you can read about futurecoder on GitHub
This error is likely caused by too many users for the site to handle.
We need funds to run better hardware for longer, prevent these errors, and allow more users to learn how to
code.
We want to avoid displaying ads or restricting content to paid users, so we rely on donations.


| Box2DMapObjectParser |
Parses MapObjects from a Map and generates Box2D Bodies , Fixtures and Joints from them.
Just create a new Box2DMapObjectParser and call Box2DMapObjectParser.load(World, MapLayer) to load all compatible objects (defined by the the Box2DMapObjectParser.aliases ) into your World .
If you only want specific Fixtures or Bodies, you can use the Box2DMapObjectParser.createBody(World, MapObject) and Box2DMapObjectParser.createFixture(MapObject) methods.
How you define compatible objects in the TiledMap editor:
In your object layer, right-click an object and set its properties to those of the Body/Fixture/both (in case you're creating an object ) you'd like, as defined in the used Box2DMapObjectParser.Aliases object.
For type, you have to choose Box2DMapObjectParser.Aliases.body , Box2DMapObjectParser.Aliases.fixture or Box2DMapObjectParser.Aliases.object .
To add Fixtures to a Body, add a Box2DMapObjectParser.Aliases.body property with the same value to each Fixture of a Body.
To create Joints , add any object to the layer and just put everything needed in its properties.
|
| Box2DMapObjectParser.Aliases |
defines the Box2DMapObjectParser.aliases to use when parsing
|
| Box2DMapObjectParser.Listener.Adapter |
Does nothing.
|
| Box2DUtils |
provides methods for operations with Box2D Bodies , Fixtures and Shapes
|
| Box2DUtils.Settings |
b2Settings.h
|
| Box2DUtils.ShapeCache |
cached method results
|
| Breakable |
Breaks bodies or fixtures if they get hit too hard.
|
| Breakable.Callback.Adapter |
|
| Breakable.Manager |
Manages the Breakables of the Contacts it receives.
|
| Chain |
Holds Chain.segments and Chain.connections to simulate a chain.
|
| Chain.Connection |
holds one or more joints
|
| Chain.CopyBuilder |
|
| Chain.DefBuilder |
a Chain.Builder that builds using a BodyDef , FixtureDef and Joint
|
| Chain.DefShapeBuilder |
|
| Chain.JointDefCopyBuilder |
|
| ContactAdapter |
Override this if you only want to use a subset of methods of the ContactListener .
|
| ContactMultiplexer |
a ContactListener that sends Contacts to an Array of ContactListeners
|
| MouseJointAdapter |
an InputAdapter managing a MouseJoint
|
| MouseJointAdapter.Listener.Adapter |
Does nothing and returns false.
|
| PositionController |
moves a body to a position using forces
|
| PositionController.D |
the derivative control loop component
|
| PositionController.P |
the proportional control loop component
|
| PositionController.PD |
a proportional-derivative controller
|
| RotationController |
rotates a body to an angle using torque
|
| RotationController.D |
the derivative control loop component
|
| RotationController.P |
the proportional control loop component
|
| RotationController.PD |
a proportional-derivative controller
|
| WorldObserver |
|
| WorldObserver.BodyChange |
the changes of a Body
|
| WorldObserver.DistanceJointChange |
the changes of a DistanceJoint
|
| WorldObserver.FixtureChange |
the changes of a Fixture
|
| WorldObserver.FrictionJointChange |
the changes of a FrictionJoint
|
| WorldObserver.GearJointChange |
the changes of a GearJoint
|
| WorldObserver.JointChange<T extends com.badlogic.gdx.physics.box2d.Joint> |
the changes of a Joint
|
| WorldObserver.Listener.Adapter |
A class that implements Listener.
|
| WorldObserver.MotorJointChange |
the changes of a MotorJoint
|
| WorldObserver.MouseJointChange |
the changes of a MouseJoint
|
| WorldObserver.PrismaticJointChange |
the changes of a PrismaticJoint
|
| WorldObserver.RevoluteJointChange |
the changes of a RevoluteJoint
|
| WorldObserver.RopeJointChange |
the changes of a RopeJoint
|
| WorldObserver.UnexpectedListener |
A Listener that calls another Listener on unpredictable/unexpected events.
|
| WorldObserver.WeldJointChange |
the changes of a WeldJoint
|
| WorldObserver.WheelJointChange |
the changes of a WheelJoint
|
| WorldObserver.WorldChange |
the changes of a World
|


| 1 | /* | |
| 2 | * Licensed to the Apache Software Foundation (ASF) under one or more | |
| 3 | * contributor license agreements. See the NOTICE file distributed with | |
| 4 | * this work for additional information regarding copyright ownership. | |
| 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 | |
| 6 | * (the "License"); you may not use this file except in compliance with | |
| 7 | * the License. You may obtain a copy of the License at | |
| 8 | * | |
| 9 | * http://www.apache.org/licenses/LICENSE-2.0 | |
| 10 | * | |
| 11 | * Unless required by applicable law or agreed to in writing, software | |
| 12 | * distributed under the License is distributed on an "AS IS" BASIS, | |
| 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| 14 | * See the License for the specific language governing permissions and | |
| 15 | * limitations under the License. | |
| 16 | */ | |
| 17 | package org.apache.commons.collections4.multiset; | |
| 18 | ||
| 19 | import java.io.IOException; | |
| 20 | import java.io.ObjectInputStream; | |
| 21 | import java.io.ObjectOutputStream; | |
| 22 | import java.io.Serializable; | |
| 23 | import java.util.Collection; | |
| 24 | import java.util.HashMap; | |
| 25 | ||
| 26 | /** | |
| 27 | * Implements {@code MultiSet}, using a {@link HashMap} to provide the | |
| 28 | * data storage. This is the standard implementation of a multiset. | |
| 29 | * <p> | |
| 30 | * A {@code MultiSet} stores each object in the collection together with a | |
| 31 | * count of occurrences. Extra methods on the interface allow multiple copies | |
| 32 | * of an object to be added or removed at once. | |
| 33 | * | |
| 34 | * @since 4.1 | |
| 35 | * @version $Id: HashMultiSet.java 1715563 2015-11-21 20:13:35Z tn $ | |
| 36 | */ | |
| 37 | public class HashMultiSet<E> extends AbstractMapMultiSet<E> implements Serializable { | |
| 38 | ||
| 39 | /** Serial version lock */ | |
| 40 | private static final long serialVersionUID = 20150610L; | |
| 41 | ||
| 42 | /** | |
| 43 | * Constructs an empty {@link HashMultiSet}. | |
| 44 | */ | |
| 45 | public HashMultiSet() { | |
| 46 | super(new HashMap<E, MutableInteger>()); | |
| 47 | } | |
| 48 | ||
| 49 | /** | |
| 50 | * Constructs a multiset containing all the members of the given collection. | |
| 51 | * | |
| 52 | * @param coll a collection to copy into this multiset | |
| 53 | */ | |
| 54 | public HashMultiSet(final Collection<? extends E> coll) { | |
| 55 | this(); | |
| 56 | addAll(coll); | |
| 57 | } | |
| 58 | ||
| 59 | //----------------------------------------------------------------------- | |
| 60 | /** | |
| 61 | * Write the multiset out using a custom routine. | |
| 62 | */ | |
| 63 | private void writeObject(final ObjectOutputStream out) throws IOException { | |
| 64 |
1
1. writeObject : removed call to java/io/ObjectOutputStream::defaultWriteObject → NO_COVERAGE |
out.defaultWriteObject(); |
| 65 |
1
1. writeObject : removed call to org/apache/commons/collections4/multiset/AbstractMapMultiSet::doWriteObject → NO_COVERAGE |
super.doWriteObject(out); |
| 66 | } | |
| 67 | ||
| 68 | /** | |
| 69 | * Read the multiset in using a custom routine. | |
| 70 | */ | |
| 71 | private void readObject(final ObjectInputStream in) throws IOException, ClassNotFoundException { | |
| 72 |
1
1. readObject : removed call to java/io/ObjectInputStream::defaultReadObject → NO_COVERAGE |
in.defaultReadObject(); |
| 73 |
1
1. readObject : removed call to org/apache/commons/collections4/multiset/HashMultiSet::setMap → NO_COVERAGE |
setMap(new HashMap<E, MutableInteger>()); |
| 74 |
1
1. readObject : removed call to org/apache/commons/collections4/multiset/AbstractMapMultiSet::doReadObject → NO_COVERAGE |
super.doReadObject(in); |
| 75 | } | |
| 76 | ||
| 77 | } | |
Mutations | ||
| 64 |
1.1 |
|
| 65 |
1.1 |
|
| 72 |
1.1 |
|
| 73 |
1.1 |
|
| 74 |
1.1 |


Before Change
feed_dict = self._get_feed_dict(batch)
self._sess.run(self._training_ops, feed_dict)
self._sess.run(self._target_ops)
def _get_feed_dict(self, batch):
Construct TensorFlow feed_dict from sample batch.
After Change
feed_dict = self._get_feed_dict(batch)
self._sess.run(self._training_ops, feed_dict)
if itr % self._target_update_interval == 0:
// Run target ops here.
self._sess.run(self._target_ops)
def _get_feed_dict(self, batch):
Construct TensorFlow feed_dict from sample batch.
feed_dict = {


★ Themes ★ Form ★ Plot ★ Characters ★ Style ★
I love taking the time to stop and think about literature I read and movies I’ve seen and virtual worlds that I’ve explored. I love thinking about how profoundly different works have affected me. And it seems that there’s always something else to pick up when I take the time to reexplore them.
What Is Your Message?
★ What Is Your Story & Why?
★ Extrapolating and Intermeshing Core Ideas
★ Machinations Beneath The Surface
A Constructive Writing Process
Themes
★ Timeless and Universal Themes
Form
★ Setting and Breaking Expectations
★ Connecting the Dots
★ Sequels Break Coherence to Form
★ Formlessness
Plot
★ The Intersection of Form and Plot
★ Tropes
★ AI-driven Literature
Characters & Relationships
★ Three-Dimensional Characters
★ Pullbacks and Character Development
★ Anonymized Characters
★ Character Archetypes
Style
★ Literary Style
★ Temporality and Ordinality
★ Causality and Cardinality
★ Differential Style and Orthogonality
★ Cohesive Style
When Style Fuels Artistry
★ Birdman
★ Jackie Brown
★ Infinite Jest
★ The Crying of Lot 49
★ On the Road
★ Canterbury Tales
★ Ghost in the Shell
My Own Style
★ Style Experimentation
Why was it that these works affected me so much at that point in my life and how would they have affected me later on? When I first read that chapter or saw that scene, what was I thinking? What should I have noticed and why didn’t I notice it? What compelled me to finish that RPG, but not others? Was the story not as compelling or was the pace not consistent enough? Why was I so drawn to that character and how did my own thoughts about him/her change as the character developed? What was it that drew me in at first and why? If I was to create my own work, how could I recreate that magical moment?
Over time, your answers to questions like these will change as you learn more about life. So if you do not capture your reactions authentically and as they happen, you’re likely to lose touch with that part of yourself that you embodied at that time. This and other sweet zens are sure to follow.
What Is Your Message?
Do you ever feel like you’re carrying a message that no one else has heard? Do you feel the weight of that on your shoulders?  That it might be some time before anyone else is viewing a subject through that particular perspective? Perhaps, months, years or maybe never? … Though, obviously, not every thing I think of is revolutionary.
What Is Your Story & Why?
Do you feel that your experiences would allow you to craft a message that’s meaningful to people from all walks of life? How well do you really know people? Are there really “types” of people or is each person their own brilliant, perfect self? What makes them laugh, cry or come to understand something they couldn’t before? Better yet, what if your story allowed someone to understand things for the first time, that they had otherwise been missing out on? Some crucial aspect of life? Or something that perhaps everyone has missed in life.
Extrapolating and Intermeshing Core Ideas
How do you take a core idea and extrapolate it into a novel or script? I’ve found that this would be very challenging and the resulting material would seem stilted around one topic – it’d feel like a painting that just encapsulated one idea. Much more artistic is the painting that provides enough to stimulate exploration of a set of ideas. It’s not so straightforward that the art is … well, I’d rather not elaborate on every detail of these things.
The point is, you’ll be much more successful if you merge a few incomplete ideas. For some genres, content of mixed origination glued together roughly is perfect, as it adds a characteristic style to a work or a series of collaborations. The imperfections are what will lead to opportunities for improvement and thus creativity.
I hope to describe how to use elements and methods of this creative process to facilitate the development of higher-quality, more meaningful writing in myself, as well as my readers.
Machinations Beneath The Surface
Most people view things through a common lens because they haven’t dove in to explore their true nature. People who understand the inner workings or true nature of some tech, some medium, some idea, they see beyond the surface and into its mechanics. For them, this subject is marvelously more sophisticated, yet wondrously simple. It cannot be rigidly defined and neither can its potential. To them, it is difficult to state something is or is not possible because they see multifarious solutions.
It’s like peering over a bridge into a river, where some sections are deep and others are shallow, with rolling rapids and rocks exposed. But the deeper sections of the river, you can observe the rocks beneath the waves. Even though you can’t see the rocks or the riverbed directly, you can still infer their presence because of what you see on the surface. This is how I see reality; the divide between the physical world and the metaphysical. Some of the metaphysical must certainly be there, even though I can’t directly observe it. In fact, I may never see it, but I know that it’s there.
Boulder River
I get distracted because my mind is too populated with connections to random things. If my mind were a graph and whatever I was looking at or thinking of were our current node, then on average, I would have dozens as many edges to other nodes as the average normal person. Several factors contribute to this: I know tons of useless trivia, I tend to examine various trivial aspects of things and I try to correlate more than the average person.
And so I tend to pursue a lot of tangents and it’s a bit harder to control where my mind goes, but that’s actually a strength. If I rigidly focused my mind and ignored all the fleeting thoughts, there would be many roads never traveled. When I explored these roads, if I never wrote anything down, I’d never remember anything. And for the longest time, I didn’t.
A Constructive Writing Process
★ Themes ★ Form ★ Plot ★ Characters ★ Style ★
If I ever felt I had the time to write something meaningful, I imagine I’d use a kind of constructive process, involving the following: themes, style, characters, relationships, plot elements & form. Keep in mind that I’m keeping this focused on literature and that I also have mostly no idea what I’m talking about. Here, I’ll describe each type of constructive element and later, I’ll enumerate over some specific themes that interest me personally.
★ Themes ★
Of all the elements, the most important by far is theme. This is going to drive the internal dialogue of your readers and hopefully any external discussion they have as well. After all, art is much less so what it is in itself and more so the sum of what it inspires in us. There is no such thing as a “finished” work of art. And thus, works that don’t drive a dialogue and works that don’t make us ask new questions or provide a new light with which to revisit old modes of thinking: these works just don’t have as much depth. They are flat.
Timeless and Universal Themes
And for writing, the themes you choose and how you work with them, this determines the depth of your work. Some themes are more relevant to some than others. Some are played out, but might be fresh if you provide a new lens. There are many which seem relevant now, but whose importance will soon fade. These stories will likely vanish from the pages of time.
Thus, it’s important to choose timeless and universally relevant themes that everyone can value or appreciate. But what is universally relevant and what is timeless? As modern civilization continues to progress towards the unknown at an exponential rate, it seems that less and less would be timeless. Or maybe some works will acquire an air of timelessness as examples of the rapid development through the 21st century. Perhaps novelty is better preserved with exponential development.
A list of themes I would like to explore will be enumerated in part two.
Illustration from the 12th Century Eadwine Psalter
★ Form ★
What’s the overall form of the plot? This is a major dependency of all the elements. That is, changing the form will necessitate reworking many aspects of everything else.
Your story isn’t just the collection of facts from the plot. It’s so much more than that. It’s a journey that your readers will embark on and no reader will ever set out on the same journey. Readers will form very different interpretations of your work and you’ll find many readers whose reactions to elements of your work will cluster together. As the artist, it’s your task to understand how those various clusters will form and why. In other words, in what different ways will people react to the same scene or character and why?
Choosing the appropriate form can either make or break a work. The form is the story, as the reader or viewer experiences it. This needs to be well thought out and strategically applied to your work. By structuring the form of your work, you can magnify the reader’s emotional responses to some elements. Done well enough and you’ll find consumers want to re-experience your work, which is a far more accurate measure of validation and valuation than the score on their review, if they write one.
Setting and Breaking Expectations
Some plot elements can have a much more dramatic effect if some of the ending is revealed up to the reader up front – think Star Wars. This totally changes how a reader will experience your story. Instead of looking forward into the complete unknown, your reader knows the ending, or at least parts of it. There are these waypoints that must be connected sometime in the future. Having these kinds of waypoints will cause someone to be more invested in your story because their mind is going to constantly reevaluate how the stories current elements must connect to some events in the future.
Connecting the Dots
And so, their mind is always trying to connect the dots. This is just generally true with the human mind: it speciallizes in this. So give it some far off points to extrapolate to and it will kick our mind into high gear. In particular, it will engage the reader or the viewer’s imagination. And this is much more interesting to our subconscious mind, since it reconstructing the path from our current place in the plot to the future is a problem that is at least partially resolvable. That is, as opposed to just iteratively appending more plot details onto the existing storyline. There’s not much work there for the subconscious mind.
Also, there are more advanced examples of form used in the Star Wars trilogy, which is a ringed plot. It’s a trilogy of trilogies, began in the middle of a ringed story. The “ringed” form is well known in literature and Star Wars is like a meta-form of that.
Sequels Break Coherence to Form
Why is that that sequels don’t usually stand up to the first works? Often, it’s because the author didn’t have another direction planned for the work. The stories for the sequels feel “tacked on.” They seem isolated or self-contained or, worse, stilted in how they are interwoven into the original work. They might intertwine with the previous work well, but the previous work lacks the ability to intertwine as well with the sequel, depending on how the author left openings for sequels.
At the same time, it can sometimes be cheesy when there’s a bit written into the story and I immediately think “oh, I see, that’s where they want to make this a trilogy.” But that’s better than tacking on a self-contained sequel. Either way, the premise of subsequent work has changed the work itself. How does one construct a story without planning on the sequel? Sometimes, it’s best to travel hundreds of years in the past and explore some stories from a little known part of the mythology for the original work.
Another better way, which embodies a kind of formlessness, is to construct a story, adding in enough extraneous, unresolved material to leave openings for connected works. Done in the right way, this is a technique that can add to the complexity of the original work and the work should feel both homogenous and heterogenous. Think of one of those automatic, contextual photoshop brushes. How does it work? It checks the surrounding area and fills in the pixes so nothing stands out too much. This technique is a bit similar. And when you mixin enough extraneous heterogenous detail into your story, it feels natural. And when that’s not there, it feels constricted, just barebones plot.
Sequels can change the meaning of the first work. It’d be hard for Star Wars Episode VII to have quite the same effect as on someone who waited nearly thirty years from the release of Episode VI. I’m not at all saying there’s anything wrong with how JJ Abrams approached the sequels, but it’s impossible for that work to have the same effect as it did on people who grew up with the first six episodes.
Sometimes it’s best to leave the reader or viewer seething with unresolved tension. Other times, a story should begin and end. And that’s it. You’ve explored the world. Time for a new story. This is something I really like about anime and manga and I’ve written a post about it before in Lean, Kanban and Anime. There are the franchises that return again and again, but there are so many one off stories that last just a season or two. This gives the storytellers the chance to explore a set of characters and develop them without abandon. If a show is going to be short, significant characters can die or whatever. There’s less risk there and because of that, the stories can have more varied developments.
Formlessness
No Longer Human(1948) by Osamu Dazai is an excellent example of formlessness. I haven’t read it, but I’ve seen the anime based on it, which is part of Aoi Bungaku, a collection of japanese literature adapted to anime. It’s presumed to be partly based on the life of Osamu Dazai, who committed suicide shortly after publishing it. The anime follows the life of Oba Yozo after a disastrously failed double suicide attempt and delves into his childhood and his recovery from the failed suicide.
As for themes, it speaks powerfully about the role of the individual in relation to society. There are several brilliant role reversals woven into the work, especially towards the end, which are only made possible by the form of the novel. It’s difficult to see these coming, but they are pulled off just right and add a ton of depth to the characters in the story. Two of the characters are so similar, yet so distinctive. Neither really fits into society and both are kind of outcasts, but one is able to reconcile this, while the other makes a few majestic steps forward and several equally tragic falls backward.
Only having experienced the anime, I think the story seems formless because it’s partly based on the life of the author and thus, traditional form is right out the window. Usually, stories adapted from real events end up being shallow and one-sided. But here, elements of form are woven in on top of the pieces of the author’s life story, resulting in a very complex story about life with very real characters. The end of the anime feels almost like the climax of a chess game, where there are several pieces holding others in place and everything suddenly unfolds, leaving almost nothing remaining.
No Longer Human Manga
★ Plot ★
As you decide on major and minor themes, you should begin thinking of major and minor plot elements that would help you expose them.
The Intersection of Form and Plot
It’s the intersection of form and plot that allows for plausible alternate explanations to a storyline. Again, this is a priceless tool for getting your reader to engage and invest in your story. It’s going to cause them to reevaluate the characters, again and again. Placing your characters in situations where the character misunderstands them and makes mistakes and getting the reader to misevaluate the storyline: that is powerful storytelling that can cause the reader to reevaluate what they know of their own reality, as well as your fantasy. It’s especially important to look for form and plot that allow for plausible alternate explanations. So writers need to be capable of identifying duplicitous scenarious or portraying scenarious in such a way that allows for duplicitous explanations.
Tropes
There are generic kinds of events and events that are genericizeable which can allow a writer to enumerate reusable scenarios for minor plot events. And major plot twists as well. These are like tropes and using the same ones over and over can be a bit annoying. Yet, some tropes are incredibly useful for exploring specific themes, like betrayal. You might even say that a particular trope would be required for exploring some themes. In order to explore epic betrayal, you need a character that betrays another in an epic way. And to explore that to the full effect, you need minor events in your story that establish a trusting relationship between the two.
Category theory is great for kind of genericizing plot events or stories from real life. You can take some memories or stories you’ve heard and just abstract the characters or combinate & reapply the same “type” of scenario with different characters until you find something interesting. But being able to identify those kinds of compelling events and types of events from real life and from other stories is the skill here. What types of events would be most interesting when applied to different characters and situations.
AI-driven Literature
In terms of getting an AI algorithm to write literature or movies, one challenge is managing the interweaved web of dependencies between major/minor plot scenarios. And the big challenge is to get an algortihm to weave those events together for some higher purpose that allows the work to inspire in its readers a discussion about life itself.
There has been a ton of work put into this. AI has been trained on academic papers, political speeches and screenplays. AI even wrote this screenplay Sunscreen, which was produced and completed. There’s still a lot of work to be done. N-gram models are way too simple. Sequence-to-sequence is used in a lot of work with language, but that’s still not going to cut it.
For the next paragraph, just think: “Watson” retired from IBM and kicking our ass at jeopardy to write novels. And his memoirs. That’s basically all I’m saying.
Any neural network that doesn’t actually process the semantics in the language of the text into a model based on information and knowledge isn’t going to be able to do much. Most AI algorithms that process text and language rely on the frequency of words, but don’t venture too far into semantics. And what I’m thinking about is a network that takes the facts and information and plot movement contained in the semantics and then constructs a neural network based on that. It then mulls over clusters of higher-order data and produces something novel … which is punny if you think about it.
The best use for AI in writing for now is for the exploratory process: it’d be great at combinating through scenarios for characters, chaining them together and then passing control to screenwriters or focus groups or something. These higher-order events can be abstracted from the kind of knowledge and information that Watson aggregates. These higher-order events can be linked together. Just visualized one of those massive old-school synthesizers, with all the patch cords chaining various modules together.
Ergo Proxy
★ Characters & Relationships ★
Behind themes, your characters, their relationships and the development of both might be the most important parts. They will help you elucidate your themes. IMO, ideating all of this is some the hardest part of the creative process for literature and screenplays, besides the hard work of writing and editing a book or screen play. It’s all so ephemeral. It can shift so easily. What if you think you have a good story, but you get a few months into thinking it out … and it just doesn’t work?
Your characters must feel real in not just your mind, but in how they appear to others as well. Almost like an actor, you must be able to simulate their personality in your mind. And others should be able to as well. What would these characters do? How would they dress? Why? How does their appearance affect their behavior? Their position in their society and their personality, how does that contrast with the social norms of various strata? Why? Why is that important to painting the picture of your world? What is it that is going to resonate with readers and viewers? Why? What would make your readers and viewers want to cosplay this character? What is going to be controversial and are those controversial elements relateable?
Some characters, you will need to create as you need them for just one or two scenes, but that doesn’t mean they’re not worth investing energy into. Sometimes these characters are the best because you don’t have to worry about maintaining them and so you can contort their personality and traits a bit more for a bit of literary chiaroscuro.
What makes your characters real? What traits, mores and values do your fantasy realm’s people share that must be universal, with even our own world? And for every one of these questions: ask why! No, ask Five Why’s! By the way, Five Why’s is basically the application of pullbacks, which I’ll cover in just a second. The apparel that your character wears, what is its purpose to their world? Does form fit the function? Or is it just extraneous baggage?  Maybe there’s a story behind that ring or that leather piece? Who knows.
What is this character’s comfort zone? And what happens when they get harshly placed outside it? Do they react realistically? Do they change? What provokes their change? Or does the character, a high class princess that’s never seen a fleck of dirt, just magically adapt to circumstances she couldn’t psychologically tolerate? Because that wouldn’t be “realistic” which is a pretty fun term to toss around when referring to fantasy realms. Yet, you want to construct this realm in the mind of your viewer, so you want all the details to be coherent. You want them to construct this world in their mind because they want to escape our common reality, which is quite boring. So you owe it to them to flesh it out. On the other hand, you need to give yourself room for flexibility: don’t flesh out so many details if it’s going to be a problem to be stuck with them.
Three-Dimensional Characters
And so, to get “three-dimensional characters,” I’ll again return to category theory – this time to pullbacks. It’s more useful to let the reader construct their version of the character in their head because if you try to do it for them, it’s going to feel forced and stilted. Try to avoid describing the events and details at the surface.
So to sculpt these more authentic characters, you find that writers will mix one of two strategies. Both are necessary, though the first is much better IMO. First, they may strategically filter what is described at the surface and use that to allow you to imagine what must lie below. And secondly, they may attempt to directly describe the thoughts and inner feelings of the characters to articulate how a reader should perceive the surface details. This is necessary when you want to make sure that your reader is thinking about certain things when a scene is unfolding. It’s like putting text in bold. Sometimes you want to do that.
And you have to take the limitations of your medium into account. A movie only has a running time of 90 - 120 minutes, tops. You need to change how you develop your characters so you can do it faster, unless your character is already fairly well known, like a comic book superhero or something.
Pullbacks and Character Development
Try to refrain from techniques like expository dialogue, especially if you’re using it to expose emotional state! LOL, definitely don’t do that.
So, instead use the category theory concept of pullbacks. And please note, this concept doesn’t really map up one-to-one with the concept with category theory, but I think I can illustrate some important points about both by illustrating with this analogy. And yeh, it’s abstract non-sense mathematic mumbo jumbo, but I can break it down. You’ll see that it’s simple and relevant.
Pullback Diagram
So, P
and Z
are your reader’s perceptions of the character
Alice
, before and after some character development. Lets say that
Z
is your character after some transformative event that makes your
reader think Alice
is greedy and shortsighted. To make the analogy
to category theory more clear (this isn’t really important) then P ->
X -> Z
and P -> Y -> Z
represent the transformations of greedy
and shortsighted
, in either order. Whether or not you apply the
functions greedy
or shortsighted
first or second doesn’t matter,
you still reach a place Z
where the reader perceives both are true
about Alice
. But if you just do it this way, it’s the equivalent of
writing The character Alice is greedy and shortsighted
. Boring,
right? But that is the goal. You need the reader to believe that
Alice
is these things.
So a pullback is a transformation of P -> X -> Z
and P -> Y -> Z
so that you can go from Q -> X -> Z
or Q -> Y -> Z
. And there is
the implied existence of a function u
that transforms Q -> P
. What
is important is that you have pulled back from the overly simple
statement The character Alice is greedy and shortsighted
and
obfuscated that with a situation or event that allows the reader to
understand that. These pullbacks are also useful for genericizing
types of events and situations, so that they could be reapplied to
other characters.
And so, these kind of pullbacks are essential to writing literature in
such a way that allows the reader theirself to search for your
meaning. It makes it a bit harder, so that they spend more time and
energy trying to understand your art. These kinds of pullbacks also
make your art a bit ambiguous. It’s clear you wanted to spark a
dialogue on greed
and myopia
, but now your readers need to discuss
amongst themselves what you actually wanted to say. When truly, you
wanted them to explore these themes or character traits because they
are complex and the reason you thought about them enough to inspire
art in the first place is because there is no “right” answer. Art that
is so direct & obvious doesn’t inspire enough discussion and
investment of energy to last.
Anonymized Characters
There is a kind of merger of characters with the mathematic concept of type theory. Don’t freak out! Type theory is basically Mad Libs. That’s all. If you want to get fancy, think Mad Libs with tree-like data structures.
Type theory sounds overly abstract, but it’s applicable to writing and the creative process. Type theory can be applied to both the situations you’re character will be in as well as to the characters themselves. It allows you to compare and specify parallels between the structures of data, in this case characters and events. In computer science, type theory is very useful for functional programming. If you were to model literature you would find yourself discovering a ton of connections to category theory, as we already have.
For the situations you want to use to highlight your chosen themes, you’re going to need characters to fill various roles. If your characters are pulling off a heist and one of them gets left behind, it could be any of them, but why should you pick each one? The role is the character that needs to be left behind, which is necessary for some future element of the plot. If your characters pull off a series of heists, there might be similar features shared between all of them: specific events or roles for a character to fulfill.
So, if you’ve enumerated these generic situations and plot movements that you want to use to construct your plot, then you can also create anonymized characters to attach to specific situations. This way, you can evaluate characters for that role in that situation to find the best fit. Changing characters that are part of a scene can have ramifications on dependencies to the story. E.G. the character that gets left behind in the heist was originally supposed to be in a scene just a bit later on, but now that’s a plot hole and a dependency issue to be resolved.
But anonimyzing the characters that are part of your scenes allows you to be a bit more flexible with your story. Because the imposition limitations often sparks creativity, then by evaluating which characters make the most sense for each scene and resolving the dependency issues that arise by creating explanatory scenes, you’re actually augmenting your creative capacity. I’ve always found that imposed limitations cause me to be much more creative than usual.
And so, if you have these anonimyzed characters, you might specify some of their actions and reactions in specific scenes, but because you haven’t decided their identity, you can always merge them with other characters to some extent. E.G. well for scene A, we need a heroic character that can rappel onto a balcony to save the day and that matches up with character B.
Character Archetypes
Ahhh the tsundere. Who doesn’t love a good tsundere? Anime shows often seem to have one. It’s the character, usually a girl, who acts like she doesn’t approve of our unlikely hero. She remains cold and distant, but why?! And gradually they grow close after the hero proves himself in some way.
These character archetypes are all over the place. There’s the distant mystic. The thief with a heart of gold. The homeless guy who’s seen everything. The evil stepmom. The unlikely hero. The valiant prince. The trickster. They’re all over literature and it’s nearly impossible to create characters that break these molds. You have to be familiar with them because you’re inevitably going to copy traits from them whether you know it or not. You can try to combine one or more archetypes, but that’s not such a great approach. A good idea would be to practice creating characters that embody these archetypes in some way. If you can master that, then you should know how to create characters that differ from them in some significant way.
Greek mythology and other ancient traditions are a great source of stories about characters that seem to best embody these archetypes. And I wonder: is that because they are the most pure implementations of these archetypes? Or is it because they were some of the first and everything is based on them?
The Icarus Archetype
Ergo Proxy’s Monad Proxy
★ Style ★
Cultures have evolved over time, as have people and the personality types and metatypes they embody. So has literature; myths have evolved and so has the way we tell them. Storytellers have found that one of the best ways to change a story is to change how they present the narrative to the reader, the listener, the viewer.
New technologies open up new ways of telling old stories. Higher bandwidth, instantaneous communication has given us the flat world of modernization, where everyone and every culture is essentially on the same playing field. Or rather, we seem to be eternally moving in that direction. The total quantity of information that is shared between the entire world has never been higher and so we have also changed the way we share information.
Further, this society urges the individual to stand out. So in that regard, modernization has encouraged writers to be creative in how they tell stories. The turn of the 20th century gave us stream of consciousness for example. People were in the middle of the intellectual and cultural revolution that would pave the way for the technological and philosophical developments of the 20th century. We were beginning to understand then mind, body and world like never before. The variety of writing styles that were put into publication underscore this and reflect the liberalization of control over publication.
So How About That Modernization, Eh?
Literary Style
So what is literary style? Style seems to mesh together the other literary elements. Style evolves over time and follows trends. Style is how a writer chooses to tell a story. Experienced writers will consciously embed elements of style throughout their work’s creation. They might have developed their own distinctive style, but they wouldn’t tell you that. That limits other people’s scope of perspectives, when looking at their work.
Literary style includes the language an author chose to use. That vocabulary includes cultural connections and evokes imagery, so style includes that imagery inspired by the use of language. It includes the overall format of the work. The author has a choice over the level of clarity they provide and what they choose to focus on. The narration can vary per chapter or per character as well, so that focus or perspective can change over a work. Some authors and works rely on a lot of wordplay. This is difficult to pull off well and those connections can be lost over time.
Style includes how an author chooses to develop their characters and the level of parallelism and connectedness in their characters. In other words, the form an author uses or the themes they explore are best highlighted when there is a connection between movements in character development.
Temporality and Ordinality
Some works employ a kind of temporal variation, a distortion of time in where events or the experience thereof can shift with respect to time. Ordinal variation refers to variation in order itself. In fact, every book employs temporal and ordinal variation to some degree because there is no sense of time in words on paper. They are just words on paper, chapters in a book. There is no time there. The only sense of time arises from how a reader explores the pages in the book. The reader provides that sense of time by consuming the work. Authors need to be well aware of how it feels to read their own work. Thinking about other people actually reading your writing sparks motivation to write differently. I don’t want to change my art for others, but it’d be a lot cooler if others enjoyed consuming it.
Causality and Cardinality
Another similar techniques employ variation in cardinality and causality. Distorting cardinality requires distorting how people perceive a collection of literature or the ideas in a book by changing the sets of ideas that people group together. We see this a lot with reboots: people want the franchise to be rebooted, so they can relive the myths they love as though they were new again. Just a little bit of this is great. Just a little bit. Too much rockin’ of the foundations is a bad thing. This style of cardinal distortion can be contained to a single work.
 In other words, by breaking logic or altering the structure of ideas brought to life by words, new possibilities are available. This aspect of Virtual Reality excites me. No, it is not the simulation of reality that stimulates my imagination. It is that the very foundations of reality can be broken and a coherent world can be made and consumed viscerally. The rules of physics can be remade. And this can be done with fiction, writing and cinema as well. This is what frustrates me about first person shooters and other overly realistic video games. Why would you want to escape to a simulated version of reality that almost exactly mirrors the version of reality that you know?
One place where you see causality broken is the Legend of Zelda. I stopped bothering trying to figure that plot out around Windwaker. LMAO. But the truth is – or my personal take on the series – it’s a legend. What you are playing through is not a single epic saga.  You are living it as it is told and retold. And that is so awesome. It’s also very freeing in that the series of the Legend of Zelda can go in any direction they want. They are very flexible in this regard. And I think the way they’ve chosen to explore that universe is pure brilliance because it totally broken rank from all the other video games from the nineties. It was perplexing because I couldn’t figure out what the overall story was. But I love it because it’s basically the same story every time with different characters and different situations, yet specific elements are held to be the same, so it feels like the same myth. Sometimes the entire world is flooded, sometimes it’s not. But there’s always a master sword, a triforce and a hero of time.
Differential Style and Orthogonality
Speaking of breaking rank, this brings me to another point: how does an artist’s work fit in with other art at the time? This matters more at the time a piece of art was created and will always be relevant to some extent, but that relevance fades away, leaving the true spirit of the art. Some of the best art is orthogonal to current trends. That is, the art understood what was happening at the time, but its message was completely different in some way. Or delivered in a completely different way.
For the mathematically uninitiated, orthogonality is like trying to plot something on an X & Y axis, yet completely missing the point in some way because the data needs to be visualized on the Z axis to be fully understood. That’s what it means for some relationship to be orthogonal: it’s “statistically independent.” And technically, it is the concept of perpendicularity extended to more than 2 dimensions.
So if you are always judging art by its relationship to other current pieces – which is important, don’t get me wrong – then you are probably missing the point. There is no maximally best way of looking at art, of course. But you can usually identify a great piece of art when it prompts you to remark “wow, this is so different from everything else right now.” That’s a bit self-contradictory because I’ve just said it’s best to judge art for the piece of art itself, not the artist and not the art trend. Still, in order to really recognize how something is different from an artists work, you have to look at that artist’s other pieces. To really recognize a piece of art that breaks trends or breaks some other deeply established concept, you have to know how that art differs from other pieces of art. So in that regard, to judge something for itself requires judging it in context of everything else. To some reasonable degree of course; the best way to look at art critically is to not look at it critically at all.
Gargantua and Pantagruel
But my point is: this concept of style where the artist or author stands against the flowing currents of recent trends, that is an element of style in itself. And often, it’s a very brave one.
Cohesive Style
When you apply style to a work, which kind you apply and how much should seem uniformly embedded in the work, instead of a late idea or something that requires a ton of edits and reworks. Or it should at least seem like style that was conscientiously applied and for good reason. There is a spectrum to the quantity and type of style applied to a work. There is a moreso “major” application of a type of style where that style permeates the work. And there are more “minor” applications of style, which might be more a result of the period of time the work was created than a result of the artist’s intent.
When Style Fuels Artistry
But the best kind of work: you’ll notice something. The style the writer or director pursued feeds back into the work, somehow. Maybe it was this author’s distinctive style or perhaps a style that embodies their philosophy, but if fuels the artistic merit of the work. Nowhere is this more perfectly executed, I think, than in Birdman. In this movie, the style of filming is so perfectly reflected back into the nature of its artistic statements.
Birdman
The one-shot take in birdman isn’t just an technological accomplishment. It’s not just a novelty or gimmick for the film. This is a spectacular example of the use of style to ad depth to the work. The one-shot view highlights the differences between the nature of acting for cinema and for theatre. In a movie about theature. But it doesn’t end there.
This is a movie that makes powerful statements about life & death, about an actor’s failing career and his attempt at a comeback. His career is totally controlled by other people’s perceptions of him. The way they look at him and paint him determines his available opportunities and I’ve been stuck in that same exact spot, time and time again. It’s his attempt to break the mold that his previous work forced him into. And, like Hamilton, he’s got one shot to do it. This is his chance. That is it. It’s high stakes.
The one-shot take revisits some of the same scenes and situations in the play, from rehersal to showtime. This is a statement about the nature of life itself. How often do we find ourselves revisiting the same problems in life? I know I have several times. It’s like a video game and here I am on the same level again. Life is asking me to evolve or restart at the last checkpoint.
Some Spoilers Below
Birdman shifts from the mundane life of an actor trying to regain control of his career to his epic, surreal dreamlike fantasies, where he asserts control over reality by defying its rules. In most film, there’s a sharp, visual break between a scene that is reality and fantasy. Because there’s no such break in birdman, this makes it very difficult for me to understand where reality begins and fantasy ends. This makes the nature of the film difficult to pin down, as no one interpretation of it really fits. Did he die, in the end? Was the ending, was his comeback a fantasy? I don’t know. It’s a powerful statement about suicide, in that again, you only have one shot at life. If he did die, as the film allows us to briefly believe, then he never could have enjoyed the comeback.
Also, the film explores how an artist or actor presents themselves to the world by contrasting the world backstage with the visual imagery of the audience. This divide is emphasized in the marching band scene, which is presented to us the unfortunate accident of a nerve-wrecked actor who bums a cigarette to calm his nerves before that final scene. And he’s nearly stripped naked in the middle of Times Square, where he’s dodging in and out of a marching band as he scrambles to return to the theatre. There couldn’t be more perfect symbolism. He defies the expectation of the audience of the play and the film by winging it back on stage. The actors in the play didn’t see it coming either. He returns to the stage from practically left field, but the character on stage is not an actor. Instead he bears his true self in front of everyone, in what is perhaps a fatal mistake.
And, amoung the points I think the film tries to make, is that such a tightly constraining set of habits for one’s personal life is destructive. That, by never bearing his soul to anyone and restricted by being defined by others, he had found himself cornered. If only he could have show his true self to others sooner, but if others weren’t misunderstanding him through their distorted perspective, then his guard was up, especially when the stakes were high. And we, as the audience of the film get to see what his life would have been like, were he not to have died, which is a brave statement on suicide, I think. Because wouldn’t we like to see a reality where he struggled and succeeded? I don’t believe that’s what “really happened.”
And, so I think the point of the film is that we should be a little less guarded. We should be more willing to show our true selves. We need to cry out when we need help, because our lifes get further contorted. It shouldn’t be difficult for us to do this in our society. It’s hard enough.
Birdman’s “Times Square” Scene
Jackie Brown
This is another great movie and, even though it’s one of his earlier films, I think exemplifies Quentin Tarantino’s style. What I noticed was that, it was everything onscreen was necessary for the film to say exactly what it was trying to say. And it was projected in just the right perspective. Everything that was there was needed in order to develop the characters. It manages to funnel the audience through a very consistent experience, I think. And it does so by tightly controlling the composition of the scenes and the presentation/order of the scenes.
And by doing this, Tarantino is creating a consistent experience amoung his audience, which is very difficult to do. People have very diverse backgrounds and when you’re directing, you have to understand how diverse audiences are going to respond to specific scenes. How is a scene or character is going to make someone feel? If a viewer had one type of response, how would they feel about this plot/character development? Would that compel them to enjoy that moment?
Infinite Jest
This is a book I barely started, so I can’t say too much. I know that the book is written out of order, using the distorted ordinality I referenced above. I’m sure there’s a more appropriate term for this. Even still, the stories that are included are from various characters viewpoints and are eventually woven together. This is a book I’d like to read, but I don’t read as much as I should.
The Title for Infinite Jest Comes from Hamlet
Alas, poor Yorick! I knew him, Horatio: a fellow of infinite jest, of most excellent fancy: he hath borne me on his back a thousand times; and now, how abhorred in my imagination it is!
On the Wikipedia page, it’s noted that David Foster Wallace mentions that “the answers all [exist], but just past the last page.”
The Crying of Lot 49
Another book I need to finish, but so far I’ve noticed that the use of language is remarkable, as are the allusions to other pieces of art. The novel’s only some 150 pages long, but I feel like I need to research all the symbolism as I’m reading it or understanding the novel is hopeless.
On the Road
This novel set the tone for the sixties. One of my favorite books, it was written by Kerouac in the span of three weeks. On a road trip. This novel was written at just the right, spectacular moment of American history, when it had just become possible and economically feasilbe for the average American to travel the continent. This novel embodies the spirit of the impetous road trip, extemporaneously declared by the drunken ramblings of the night before, yet decisively acted on to lead youth on a improvised journey of serindipitous discovery. I love it.
The economic conditions of the late fifties and the sixties permitted this exhilirating exploration of American and the ensuing cultural transformation. The stage had been set and that generation lived out adventures that will remain forever unparalleled. When I remember that we can never again return to that moment, I cry a little bit. Where we are going is just as great and I wish we could return America to such simpler times.
But again, On the Road? Artistic treasure. The style, the action of the writing, everything feeds into it’s own message. And from it, the American legend of Neal Cassidy was born.
Canterbury Tales
This is a collection of stories from the 14th and 15th centuries from Geoffrey Chaucer. Each story is told by a pilgrim on their way to Canterbury from London. The Miller’s Tale is particularly amusing. The pilgrims are from various walks of life and this gives us a good idea of what 14th century life was like in England as well as an idea of what these people might have wanted life to be like.
But this collection of stories is a mechanic used over and over again throughout history. Sin City, the graphic novel and the film, uses it and weaves together a great story. The anime Death Parade also uses this technique to explore the lives of people in their most final moments.
Ghost in the Shell
I recently watched a critique on Ghost in the Shell that discussed the importance of a few minutes of the film with wide shots from different angles and variously sized viewing frustums. Looking at the animation in the footage, some of this was pretty expensive to create. There’s a lot of motion and a ton of effort went into these scenes.
NerdWriter1, who has some other great analyses, highlights the importance of these scenes for establishing a connection to this futuristic world. He notes that these scenes through time out the window in favor for focusing on space. He draws some parallels to the difference between japanese manga and american comics. In particular, he notes that action progresses differently between frames in manga, where there is a bit more focus on frames that only depict the world. He then argues that this is connected to connecting the viewer to the source and sense of identity that these inhabitants of the future experience.
The relationship of identity in a world of constant technological evolution is is paramount for us to understand. This is something society needs to explore and understand before it happens. It’s important theme of the series, which is a frighteningly accurate depiction of tech in the future. And here, the usage of style in composition feeds back into the artistic intent of this series, though not nearly as meta as with Birdman.
My Own Style
I haven’t been writing for long. I have some great ideas. There’s a ton of topics I could write on for non-fiction and I have a few good fiction ideas as well. I have some specific ideas for a world I want to create, but I’m not sure what medium is best. I think video games or VR might be best. But I need to work a lot on style.
Similar to how bright colors and intense patterns could detract from the message in a painting, your style could detract from your story, so it needs to be tactfully applied. In my own non-fiction articles on te.xel.io, I choose to be conversational because this is my writing and my message. I am not writing because I want someone to read it. Often my topics and ideas are overly complicated. I discussed category theory in this blog post, for example. I write about too many topics and my posts are too long! A marketing professional would find it quite a challenge to promote my blog in its existing form. I’ve been directly told and indirectly hinted that my content is “too complicated” and that it’s just “way too long” and “way too many words.” HAHAHAHA LMAO!!
The jokes on you. this is my writing and I am writing for myself. I’ll be damned if I disappear without having ever written down my thoughts. And no, I do not want to limit myself chasing short-term goals like increased likes and more retweets and more shares. My blog is not a growth hack. To me, there could be no bigger mistake than changing the nature of my message by limiting the scope and especially the length of my posts to hope that someone shares it. I do not care. I’m looking at the analytics and people are reading my stuff. People are finishing these long-winded, complicated posts.
At the same time, I need to work on improving my style. I want my content to be well organized and I want my message to be focused. Like I noted earlier, revisiting my own writing and imagining it through the eyes of someone else has motivated me to work on my style.
Style Experimentation
So if style is so important for conveying a message and especially for making your work stand out, how do you improve it? Reading is a good start, especially when you are constantly evaluating an authors message and constrasting it with their delivery, while applying that to the context of your own writing, ideas and delivery.
Another good place is seeking creative writing projects. This is a good way to challenge yourself to write a short story or essay, while consciously employing an unfamiliar style. To do this, you have to be aware of your options. I’ve learned that the best dancer can dance with any style, the best actor can act with any style and the best writer can write with any style. That is, they are experts, not by mastery of their own style, but by understanding all styles and cultivating a familiarity with all of them. It’s not crucial to be a master of everything. If we all tried to be the best at everything, we ought to never bother at all. But by at least understanding the innate nature of all kind of things, we can reapply what we learn from one area to another.
And the most important thing to remember is that the most proficient experts in any given field are not limited by their options! If you find yourself bested in some arena of skill, you wouldn’t want it to happen because you ran out of options, would you? Everyone needs to be well rounded, but the very root of all strategy is drawn from having options. From maintaining flexibility. This is a lesson on the nature of strategy itself, formiing it’s core, that can be applied to any game, any field, any industry, anything.
Because writing involves communication of a message about people, then wouldn’t it be best to know people? This is another skill that I feel fairly proficient with, yet one that I badly need to work on. Being an outsider, I have a completely different perspective on people. Being a perfectionist, I feel compelled to keep trying until I find the piece of knowledge I’m searching for.
Part Two - Specific Themes
In the next part, I’m going to list some specific themes I’d like to write about. Some of these are quite depressing, but I feel like life has blessed me with a wide variety of experience, people and places. I’d always love to travel more though.
These themes include ideas on betrayal, compassion, deception, paradox, fate, fame, war, art, wisdom, idealism, mortality, memory, freedom, salvation, philosophy, history, self-discovery, power, misunderstanding, confusion, temptation, and fear.
The majority of these themes I wrote down in just one night. I knew the story I wanted to tell and the lessons I’d learned, but I couldn’t even begin. So instead, I thought to write down all the themes I wanted to write about.


message resources
properties files
Starting with version 2.0.0 Thymol supports the use of properties files as message resources. The messages are stored as "key=value" pairs and parameter place-holder values ("{N}") may be defined in the usual way.
Thymol attempts to apply the same order of discovery and processing to message resources as Thymeleaf does.
In the first instance, Thymol expects to find messages for a template in .properties files in the same folder and with the same name as the template itself but (potentially) with a suffix derived from the (browser) environment defined locale.
message resolver
If a message resource can't be found in the properties files in the template's directory then Thymol attempts to find this message by searching through properties files in a specified messages directory. These "default" properties files have a base file name "Messages" and (potentially) a file name suffix derived from the (browser) environment defined locale.
This specified default messages directory is defined by a Thymol control parameter named "thMessagePath" (see here).


Problem Solving
A Simple Problem, and an Elegant Solution
In maths, my teacher used to love doing prblem solving races, where he would get 20 questions off the internet, put us in group, and we would race to finish them all first. One time, the first question was find the next letter in the sequence "O T T F F". Our group had no idea, and sat there for about five minutes before realising the answer. The letters just stood for "One Two Three Four Five".
Problem Solving Techniques
Pseudocode: I have had experience with and am confident in using pseudocode.
Try Something: More of a last resort, although random guessing can help give you an idea of what the actual answer is.
Rubber Ducky Method: I have always heard that saying the problem out loud is a good way to solve problems, but have never tried it.
Reading Error Messages: I normally use error messages to find where the problem is and get a general idea as to what the problem is.
Console.logging: I have started doing this a lot more recently as it is a very good way to figure out what information is getting passed where.
Google: Google holds all of the answers, although I tend to try and figure it out myself first.
Asking peers for help: I am comfortable asking my peers for help, especially if I know I have made a small / silly mistake.
Asking coaches for help: I am comfortable asking coaches for help, as this is one of the purposes of a coach.
Improving your process with reflection: I have never been one to purposefuly reflect on processes, but rather subconsciously learn until it becomes habit.