Final Robot Design and Documentation
Goals
Overall Objective: design, fabricate, and program a robot to autonomously explore a maze; control to be based on Arduino Uno and propulsion to be based on continuous rotation servos.
Robot Objectives
• Follow white lines on a black floor • Detect walls, an audible start signal, and treasures with different shapes and colors • Transmit its progress to a base station (based on Arduino Uno) and print the maze for verification (via GUI) • Apply some algorithm to effectively explore the maze • Avoid collision with other robots • Documentation of designs to be made on websiteLine Following
At first, we used the early implementation of line following from lab 1 and milestone 1, which used threshold values for the line sensors to determine when the robot should start and stop adjusting its course. Unfortunately, this implementation fell through as we added more components, mostly due to a constant change in the values our line sensors were detecting with regard to the thresholds we had in our code; this was in part due to the sensors’ position relative to the ground as we swapped out the parts holding them, and the sensors’ natural range/error in measurement depending on the environment we were testing in.
Our plan of action to remedy this was two-fold: stabilize the position of the sensors and standardize the threshold values being used. For the former, we designed and 3D printed a T-shaped part to hold all four line sensors at the same height right off the ground (without touching the ground) and to prove stable enough to maintain that height. Click the button below to jump to our additional content and files page where to talk about our other 3d printed parts. We achieved this last objective with a deft blend of superglue, screws and nuts, and willpower.
Now that we had a set height for the sensors, we went about standardizing the thresholds we used in our code. For this, we developed a snippet of code that determines useable threshold values on the spot each time it runs. It measures a series of line sensor values, takes the average, and uses the value to compute a threshold value that is then used in our general line following (and turning) code. Therefore, initializing our robot now involved placing it on a black maze tile to get that threshold, then on the white line to get that threshold, and finally running it as normal.
Wall Following
We wanted to make sure our wall detection was up to par as it formed an integral part of both our primary (pseudo-dfsWalk) and backup (wall following) methods of exploring the maze. Thankfully, the thresholding for the wall sensors was much less of a chore since those sensors were very precise and rather consistent. One issue we did encounter was obstruction of the sensors by other parts of the robot. Some of the wires or our microphone dropped to either side of the robot (where the wall sensors are facing) and therefore skewed the detection (the robot would detect a non-existent wall). The fix was simply to move the obstructions out of the way by either binding them to a part or coiling them with some other non-obstructing wire.
Robot Detection
The final competition requires all robots to have an IR hat that transmits a frequency of 6.08k Hz and a circuit implemented on our robot that would detect the presence of such an IR hat. To do so, we set two phototransistors in parallel, which allowed us to detect frequencies at a distance without an op-amp.
For our robot detection code, we used the FFT library that outputs values from each bin. Initially, we were sampling from 256 bins, but for the competition, we changed the sample size to 128 to save on memory. As we iterated through all the bins, we saw that the 6.08kHz signal from the IR hat could be found in bin 21. We then determined the value we would be seeing in the bin with a robot at a distance of 6 in. and programmed our robot to stand still when that value had been reached.
We noticed that when we integrated the robot detection code into the main code, the initialization of some of the variables in the setup portion of the code interfered with the functionality of the rest of the it. To get around this issue, instead of initializing these variables in the general setup portion of the main code, we created temporary variables to store the initial values used in the main code, initialize the variables in the beginning of the robot detection function, and reset the variables by giving them the initial stored values that were saved before the function was called.
The initial saving of the variables:
Resetting the variables once the function finishes its job:
Unresolved Issues
Microphone Circuit:
As mentioned earlier in the robot detection section, we reduced the number of bin samples from 256 to 128 to save on memory. When we did this, the bin we needed to search in for the 660 Hz starting tone had changed and we needed to find this new bin. However, the changing of the number of bins we sampled was a last minute change, and due to time constraints we did not have time to test the bins and find the correct bin number. We decided that since a dysfunctional microphone only resulted in a 5 second penalty in the competition, it would be more worthwhile to devote our time to other issues.
Camera and Treasure Detection:
For the final competition, our team planned to integrate our camera and treasure detection circuit with our main robot. However, when we transferred the camera circuit onto our robot and tested its output, our camera would output colorful noise rather than the clear images it normally would yield. To troubleshoot this issue, we removed the camera circuit from the main robot Arduino and ran our treasure detection code to see if we could salvage our camera detection functionality by adding a second Arduino onto the robot. Unfortunately, even after removing the camera from the robot, our camera output was colorful and noisy. When this issue originally arose, we only had a night before the competition, and decided to focus our attention to other, more pressing issues, and as a result, never got around to resolving this problem.
Conclusion
Our main issue during the competition was that our phototransistors detected the presence of our own IR hat. This was an issue because we had made it so that if our robot detects the presence of another robot, our robot will stall for half a second and then check for the presence of a robot again. Because our robot was constantly detecting itself, it was constantly stalled. In hindsight, this problem could have been completely avoid had we done more thorough testing the night before the competition.
During the second round, we had moved the phototransistors so that they were no longer detecting our own robot which allowed our robot to run the maze much more smoothly. However, during that round, one of the robot’s wheels had slipped, interfering with its turn, causing it to miss a turn. As a result, the majority of maze was incorrectly mapped. The slipping had been an issue that began the night before the competition and we had not had the time to properly address the issue.
Despite the issues, the competition (and semester) had been a great experience. We would like to thank Kirstin and all of the TAs for all of their time and support.


 And out he went to milk her of a morning, and said --
'Hold still, my Coo, my hinny,
Hold still, my hinny, my Coo,
And ye shall have for your dinner
What but a milk white doo.'
But the big, big Coo wouldn't hold still. 'Hout!' said the wee, wee Mannie --
'Hold still, my Coo, my dearie,
And fill my bucket wi' milk,
And if ye'll be no contrairy
I'll gi'e ye a gown o' silk.'
But the big, big Coo wouldn't hold still. 'Look at that, now!' said the wee, wee Mannie --
'What's a wee, wee mannie to do,
Wi' such a big contrairy Coo?'
So off he went to his mother at the house. 'Mother,' said he, 'Coo won't stand still, and wee, wee Mannie can't milk big, big Coo.'
'Hout!' says his mother, 'take stick and beat Coo.'
So off he went to get a stick from the tree, and said --
'Break, stick, break,
And I'll gi'e ye a cake.'
But the stick wouldn't break, so back he went to the house.

But the Butcher wouldn't kill the Coo without a silver penny, so back the Mannie went to the house.
So off he went and told the Coo, but she wouldn't hold still, so back he went and told his mother.
'Well,' said she, 'tell the Coo there's a fine, fine laddie from the wars sitting by the weary, weary lady with golden hair, and she weeping for a sup o' milk.'
So off he went and told the Coo, but she wouldn't hold still, so back he went and told his mother.
'Well,' said his mother, 'tell the big, big Coo there's a sharp, sharp sword at the belt of the fine, fine laddie from the wars who sits beside the weary, weary lady with the golden hair, and she weeping for a sup o' milk.'
And he told the big, big Coo, but she wouldn't hold still.
Then said his mother, 'Run quick and tell her that her head's going to be cut off by the sharp, sharp sword in the hands of the fine, fine laddie, if she doesn't give the sup o' milk the weary, weary lady weeps for.'
And wee, wee, Mannie went off and told the big, big Coo.
And when Coo saw the glint of the sharp, sharp sword in the hand of the fine, fine laddie come from the wars, and the weary, weary lady weeping for a sup o' milk, she reckoned she'd better hold still; so wee, wee Mannie milked big, big Coo, and the weary, weary lady with the golden hair hushed her weeping and got her sup o' milk, and the fine, fine laddie new come from the wars put by his sharp, sharp sword, and all went well that didn't go ill.


| 008:073 Khan | : |
And those who disbelieve are allies to one another, (and) if you (Muslims of the whole world collectively) do not do so (i.e. become allies, as one united block with one Khalifah - chief Muslim ruler for the whole Muslim world to make victorious Allah's Religion of Islamic Monotheism), there will be Fitnah (wars, battles, polytheism, etc.) and oppression on earth, and a great mischief and corruption (appearance of polytheism). |
| 008:073 Maulana | : |
And those who disbelieve are friends one of another. If you do it not, there will be persecution in the land and great mischief. |
| 008:073 Pickthal | : |
And those who disbelieve are protectors one of another - If ye do not so, there will be confusion in the land, and great corruption. |
| 008:073 Rashad | : |
Those who disbelieved are allies of one another. Unless you keep these commandments, there will be chaos on earth, and terrible corruption. |
| 008:073 Sarwar | : |
The unbelievers are each other's friends. If you (the believers) do not keep the same among yourselves in the land, there will come into being widespread idolatry and great evil. |
| 008:073 Shakir | : |
And (as for) those who disbelieve, some of them are the guardians of others; if you will not do it, there will be in the land persecution and great mischief. |
| 008:073 Sherali | : |
And those who disbelieve - they are friends one of another. If you do not what you are commanded, there will be mischief in the land and great disorder. |
| 008:073 Yusufali | : |
The Unbelievers are protectors, one of another: Unless ye do this, (protect each other), there would be tumult and oppression on earth, and great mischief. |
Concepts/Themes Covered: أركان الإسلام > التوحيد > الكافرون > صفات الكفار Pillars of Islam> Islamic> The Disbelievers> The Characteristics of the Disbelievers أركان الإسلام > (محمد (صلى الله عليه وسلم > هجرته ومنزلة المهاجرين Pillars of Islam> The Blessed Muhammad(PBUH)> His Immigration and the Immigrants Rank الجهاد > الجهاد في سبيل الإسلام > مدح الجهاد Jihad> The Call to Jihad>Praising the Holy War الجهاد > الهجرة > ثواب المهاجرين Jihad> The Immigration> The Immigrants' Reward الإنسان والعلاقات الأخلاقية > الأخلاق الذميمة > الفساد Man and The Moral Relations>The Dispraised Morals>Corruption
This tool uses eight English parallel translations for the Holy Quran imported from Mr. Clay Smith. You can also visit Qurany Concepts for browsing the Quran themes or topics. If you want to search the Holy Quran for keywords, please visit Qurany Keywords.


public class CurveFitter extends java.lang.Object implements UserFunction
| Modifier and Type | Field and Description |
|---|---|
static int |
CHAPMAN
Constants for the built-in fit functions
|
static int |
EXP_RECOVERY
Constants for the built-in fit functions
|
static int |
EXP_RECOVERY_NOOFFSET
Constants for the built-in fit functions
|
static int |
EXP_REGRESSION
Constants for the built-in fit functions
|
static int |
EXP_WITH_OFFSET
Constants for the built-in fit functions
|
static int |
EXPONENTIAL
Constants for the built-in fit functions
|
static java.lang.String[] |
fitList
Names of the built-in fit functions
|
static java.lang.String[] |
fList
Equations of the built-in fit functions
|
static int |
GAMMA_VARIATE
Constants for the built-in fit functions
|
static int |
GAUSSIAN
Constants for the built-in fit functions
|
static int |
GAUSSIAN_NOOFFSET
Constants for the built-in fit functions
|
static int |
INV_RODBARD
Constants for the built-in fit functions
|
static int |
IterFactor
Deprecated.
now in the Minimizer class (since ImageJ 1.46f).
(probably of not much value for anyone anyhow?)
|
static int |
LOG
Constants for the built-in fit functions
|
static int |
LOG2
Constants for the built-in fit functions
|
static int |
POLY2
Constants for the built-in fit functions
|
static int |
POLY3
Constants for the built-in fit functions
|
static int |
POLY4
Constants for the built-in fit functions
|
static int |
POLY5
Constants for the built-in fit functions
|
static int |
POLY6
Constants for the built-in fit functions
|
static int |
POLY7
Constants for the built-in fit functions
|
static int |
POLY8
Constants for the built-in fit functions
|
static int |
POWER
Constants for the built-in fit functions
|
static int |
POWER_REGRESSION
Constants for the built-in fit functions
|
static int |
RODBARD
Constants for the built-in fit functions
|
static int |
RODBARD2
Constants for the built-in fit functions
|
static int[] |
sortedTypes
Nicer sequence of the built-in function types
|
static int |
STRAIGHT_LINE
Constants for the built-in fit functions
|
| Constructor and Description |
|---|
CurveFitter(double[] xData,
double[] yData)
Construct a new CurveFitter.
|
| Modifier and Type | Method and Description |
|---|---|
int |
doCustomFit(java.lang.String equation,
double[] initialParams,
boolean showSettings)
Fit a function defined as a macro String like "y = a + b*x + c*x*x".
|
void |
doCustomFit(UserFunction userFunction,
int numParams,
java.lang.String formula,
double[] initialParams,
double[] initialParamVariations,
boolean showSettings)
Fit a function defined in a user plugin implementing the UserFunction interface
Use getStatus() and/or getStatusString() to see whether fitting was (probably) successful and
getParams() to access the result.
|
void |
doFit(int fitType)
Perform curve fitting with one of the built-in functions
doFit(fitType) does the fit quietly
Use getStatus() and/or getStatusString() to see whether fitting was (probably) successful and
getParams() to access the result.
|
void |
doFit(int fitType,
boolean showSettings)
Perform curve fitting with one of the built-in functions
doFit(fitType, true) pops up a dialog allowing the user to set the initial
fit parameters and various numbers controlling the Minimizer
Use getStatus() and/or getStatusString() to see whether fitting was (probably) successful and
getParams() to access the result.
|
double |
f(double[] p,
double x)
Returns the formula value for parameters 'p' at 'x'.
|
static double |
f(int fitType,
double[] p,
double x)
Returns value of built-in 'fitType' formula value for parameters "p" at "x"
|
int |
getFit()
returns the code of the fit type of the fit performed
|
static int |
getFitCode(java.lang.String fitName)
Returns the code for a fit with given name as defined in fitList, or -1 if not found
|
double |
getFitGoodness()
Get a measure of "goodness of fit" where 1.0 is best.
|
java.lang.String |
getFormula()
returns a String with the formula of the fit function used
|
int |
getIterations()
Get number of iterations performed.
|
static int |
getMax(double[] array)
Gets index of highest value in an array.
|
int |
getMaxIterations()
Get maximum number of iterations allowed (sum of iteration count for all restarts)
|
Minimizer |
getMinimizer()
Returns a reference to the Minimizer used, for accessing Minimizer methods directly.
|
java.lang.String |
getName()
returns the name of the fit function of the fit performed
|
int |
getNumParams()
Get number of parameters for current fit formula
Do not use before 'doFit', because the fit function would be undefined.
|
double[] |
getParams()
Get the result of fitting, i.e. the set of parameter values for the best fit.
|
double[] |
getResiduals()
Returns residuals array, i.e., differences between data and curve.
|
int |
getRestarts()
Get maximum number of simplex restarts to do.
|
java.lang.String |
getResultString()
Get a string with detailed description of the curve fitting results (several lines,
including the fit parameters).
|
double |
getRSquared()
Returns R^2, where 1.0 is best.
|
double |
getSD()
Returns the standard deviation of the residuals.
|
static java.lang.String[] |
getSortedFitList()
Returns an array of fit names with nicer sorting
|
int |
getStatus() |
java.lang.String |
getStatusString()
Get a short text with a short description of the status.
|
double |
getSumResidualsSqr() |
double[] |
getXPoints()
returns the array with the x data
|
double[] |
getYPoints()
returns the array with the y data
|
void |
setInitialParameters(double[] initialParams)
Sets the initial parameters, which override the default initial parameters.
|
void |
setMaxError(double maxRelError)
Set the maximum error. by which the sum of residuals may deviate from the true value
(relative w.r.t. full sum of rediduals).
|
void |
setMaxIterations(int maxIter)
Set maximum number of iterations allowed (sum of iteration count for all restarts)
|
void |
setOffsetMultiplySlopeParams(int offsetParam,
int multiplyParam,
int slopeParam)
For improved fitting performance when using a custom fit formula, one may
specify parameters that can be calculated directly by linear regression.
|
void |
setRestarts(int maxRestarts)
Set maximum number of simplex restarts to do.
|
void |
setStatusAndEsc(java.lang.String ijStatusString,
boolean checkEscape)
Create output on the number of iterations in the ImageJ Status line, e.g.
|
double |
userFunction(double[] params,
double dummy)
This function is called by the Minimizer and calculates the sum of squared
residuals for given parameters.
|
public static final int STRAIGHT_LINE
public static final int POLY2
public static final int POLY3
public static final int POLY4
public static final int EXPONENTIAL
public static final int POWER
public static final int LOG
public static final int RODBARD
public static final int GAMMA_VARIATE
public static final int LOG2
public static final int RODBARD2
public static final int EXP_WITH_OFFSET
public static final int GAUSSIAN
public static final int EXP_RECOVERY
public static final int INV_RODBARD
public static final int EXP_REGRESSION
public static final int POWER_REGRESSION
public static final int POLY5
public static final int POLY6
public static final int POLY7
public static final int POLY8
public static final int GAUSSIAN_NOOFFSET
public static final int EXP_RECOVERY_NOOFFSET
public static final int CHAPMAN
public static final int[] sortedTypes
public static final java.lang.String[] fitList
public static final java.lang.String[] fList
public static final int IterFactor
public CurveFitter(double[] xData, double[] yData)
public void doFit(int fitType)
public void doFit(int fitType, boolean showSettings)
public int doCustomFit(java.lang.String equation, double[] initialParams, boolean showSettings)
public void doCustomFit(UserFunction userFunction, int numParams, java.lang.String formula, double[] initialParams, double[] initialParamVariations, boolean showSettings)
userFunction
- A plugin where the fit function is defined by the
userFunction(params, x) method.
This function must allow simultaneous calls in multiple threads.numParams
- Number of parameters of the fit function.formula
- A String describing the fit formula, may be null.initialParams
- Starting point for the parameters; may be null (than values
of 0 are used). The fit function with these parameters must
not return NaN for any of the data points given in the
constructor (xData).initialParamVariations
- Each parameter is initially varied by up to +/- this value.
If not given (null), initial variations are taken as
10% of initial parameter value or 0.01 for parameters that are zero.
When this array is given, all elements must be positive (nonzero).
See Minimizer.minimize for details.showSettings
- Displays a popup dialog for modifying the initial parameters and
a few numbers controlling the minimizer.public void setInitialParameters(double[] initialParams)
public Minimizer getMinimizer()
public void setOffsetMultiplySlopeParams(int offsetParam, int multiplyParam, int slopeParam)
offsetParam
- Index of a parameter that is a pure offset:
E.g. '0' if f(p0, p1, p2...) = p0 + function(p1, p2, ...).multiplyParam
- Index of a parameter that is purely multiplicative.
E.g. multiplyParams=1 if f(p0, p1, p2, p3...) can be expressed as
p1*func(p0, p2, p3, ...) or p0 +p1*func(p0, p2, p3, ...) with '0' being
the offsetparam.slopeParam
- Index of a parameter that is multiplied with x and then summed to the function.
E.g. '1' for f(p0, p1, p2, p3...) = p1*x + func(p0, p2, p3, ...)
Only one, multiplyParam and slopeParam can be used (ie.e, the other
should be set to -1)public int getNumParams()
public final double f(double[] p, double x)
public static double f(int fitType, double[] p, double x)
public double[] getParams()
public double[] getResiduals()
public double getSumResidualsSqr()
public double getSD()
public double getRSquared()
r^2 = 1 - SSE/SSD where: SSE = sum of the squared errors SSD = sum of the squared deviations about the mean.For power, exp by linear regression and 'Rodbard NIH Image', this is calculated for the fit actually done, not for the residuals of the original data.
public double getFitGoodness()
public int getStatus()
public java.lang.String getStatusString()
public java.lang.String getResultString()
public void setRestarts(int maxRestarts)
public void setMaxError(double maxRelError)
public void setStatusAndEsc(java.lang.String ijStatusString, boolean checkEscape)
ijStatusString
- Displayed in the beginning of the status message. No display if null.
E.g. "Curve Fit: Iteration "checkEscape
- When true, the Minimizer stops if escape is pressed and the status
becomes ABORTED. Note that checking for ESC does not work in the Event Queue thread.public int getIterations()
public int getMaxIterations()
public void setMaxIterations(int maxIter)
public int getRestarts()
public double[] getXPoints()
public double[] getYPoints()
public int getFit()
public java.lang.String getName()
public java.lang.String getFormula()
public static java.lang.String[] getSortedFitList()
public static int getFitCode(java.lang.String fitName)
public final double userFunction(double[] params, double dummy)
userFunction
in interface UserFunction
params
- When minimizing, array of variables.
For curve fit array of fit parameters.
The array contents should not be modified.
Note that the function can get an array with more
elements then needed to specify the parameters.
Ignore the rest (and don't modify them).dummy
- For a fit function, the independent variable of the function.
Ignore it when using the minimizer.public static int getMax(double[] array)
array
- the array.


{% extends "withoutnav_template.html" %} {% from "components/page-header.html" import page_header %} {% from "govuk_frontend_jinja/components/back-link/macro.html" import govukBackLink %} {% block per_page_title %} The GOV.UK Notify service is for people who work in the government {% endblock %} {% block backLink %} {{ govukBackLink({ "href": url_for('main.support') }) }} {% endblock %} {% block maincolumn_content %}
We cannot give advice to the public. We do not have access to information about you held by government departments.
There are other pages on GOV.UK where you can get help:
Ask about benefits, driving, transport, tax, and more.
Advice on suspicious emails and text messages.


A responsive site is one that adjusts itself based on the screen size of the device that it is being viewed on. This is important because nowadays people are viewing things on a range of devices and I'm pretty sure this is basically exactly the same question as the previous technical blog. Mobile first design is making sure the site is functional from mobile devices first then building up from there. This is important because mobile functionality is generally the hardest to do, so getting this sorted first means you don't get it sorted for desktop then have to tweak it for mobile constantly.
Except with discussing wireframes instead of boxifying, even though they are basically the same thing. So I don't really have anything else to elaborate on this topic. A wireframe is basically the end result of boxifying on paper or digitally. I didn't do a wireframe this week, except in my head. There's no real way that I know of to upload images from my head to this website, so you'll just have to imagine it. It was of course highly comprehensive and detailed but you'll have to take my word for it.


TBD
TBD
Readings for this lectureThere are no additional required readings for this lecture.
Wes McKinney is an American software developer and businessman. He was the CEO and founder of technology startup Datapad. He is the creator and “Benevolent Dictator for Life”(BDFL) of the open-source Pandas package for data analysis in the Python programming language, and has also authored two versions of the reference book Python for Data Analysis. He worked as a software engineer for Cloudera following their acquisition of Datapad in 2014. He was a software engineer at Two Sigma Investments. He has now created Ursa Labs


Your music is broadcast now. Please waiting for transaction being accept. After accept, your post is automatically registered in our server.


Today, we are going to reprise our Camera class from the Camera Demo. In addition to the FPS-style camera that we have already implemented, we will create a Look-At camera, a camera that remains focused on a point and pans around its target. This camera will be similar to the very basic camera we implemented for our initial examples (see the Colored Cube Demo). While our FPS camera is ideal for first-person type views, the Look-At camera can be used for third-person views, or the “birds-eye” view common in city-builder and strategy games. As part of this process, we will abstract out the common functionality that all cameras will share from our FPS camera into an abstract base camera class.
The inspiration for this example come both from Mr. Luna’s Camera Demo (Chapter 14 of Frank Luna’s Introduction to 3D Game Programming with Direct3D 11.0), and the camera implemented in Chapter 5 of Carl Granberg’s Programming an RTS Game with Direct3D. You can download the full source for this example from my GitHub repository at https://github.com/ericrrichards/dx11.git under the CameraDemo project. To switch between the FPS and Look-At camera, use the F(ps) and L(ook-at) keys on your keyboard.
When we examine our FPS camera, we can identify a number of methods and properties that will need to be shared by any camera classes that we create. To allow us to interact with any type of camera, without regard to its internal implementation, we’ll extract these commonalities out into a base class that we can inherit for both our FPS and Look-At cameras.
public abstract class CameraBase { protected Frustum _frustum; public Vector3 Position { get; set; } public Vector3 Right { get; protected set; } public Vector3 Up { get; protected set; } public Vector3 Look { get; protected set; } public float NearZ { get; protected set; } public float FarZ { get; protected set; } public float Aspect { get; protected set; } public float FovY { get; protected set; } public float FovX { get { var halfWidth = 0.5f * NearWindowWidth; return 2.0f * MathF.Atan(halfWidth / NearZ); } } public float NearWindowWidth { get { return Aspect * NearWindowHeight; } } public float NearWindowHeight { get; protected set; } public float FarWindowWidth { get { return Aspect * FarWindowHeight; } } public float FarWindowHeight { get; protected set; } public Matrix View { get; protected set; } public Matrix Proj { get; protected set; } public Matrix ViewProj { get { return View * Proj; } } protected CameraBase() { Position = new Vector3(); Right = new Vector3(1, 0, 0); Up = new Vector3(0, 1, 0); Look = new Vector3(0, 0, 1); View = Matrix.Identity; Proj = Matrix.Identity; SetLens(0.25f * MathF.PI, 1.0f, 1.0f, 1000.0f); } public abstract void LookAt(Vector3 pos, Vector3 target, Vector3 up); public abstract void Strafe(float d); public abstract void Walk(float d); public abstract void Pitch(float angle); public abstract void Yaw(float angle); public abstract void Zoom(float dr); public abstract void UpdateViewMatrix(); public bool Visible(BoundingBox box) { return _frustum.Intersect(box) > 0; } public void SetLens(float fovY, float aspect, float zn, float zf) { FovY = fovY; Aspect = aspect; NearZ = zn; FarZ = zf; NearWindowHeight = 2.0f * NearZ * MathF.Tan(0.5f * FovY); FarWindowHeight = 2.0f * FarZ * MathF.Tan(0.5f * FovY); Proj = Matrix.PerspectiveFovLH(FovY, Aspect, NearZ, FarZ); } }
Since our camera movement operations will be different for the FPS and Look-at cameras, we make the LookAt, Strafe, Walk, Pitch and Yaw methods abstract, so that our derived classes will need to implement them. In addition, we also add a Zoom method. We also make the UpdateViewMatrix method abstract, as the two camera types will update their view matrices and view frustums in different ways.
With our base camera class defined, we need to update our FPS camera. We will need to override the abstract methods from the CameraBase class using the appropriate FPS implementations. Mostly, these methods are the same as in our previous incarnation. Of note, however, is the new Zoom override; we implement a zoom feature for the FPS camera by narrowing or widening the field-of-view of the camera. A smaller field of view results in magnification, while a larger fov effectively zooms out. We need to be sure to clamp the fov values, as a FOV of 180 degrees or more will result in some very strange behavior.
public class FpsCamera : CameraBase { public override void LookAt(Vector3 pos, Vector3 target, Vector3 up) { Position = pos; Look = Vector3.Normalize(target - pos); Right = Vector3.Normalize(Vector3.Cross(up, Look)); Up = Vector3.Cross(Look, Right); } public override void Strafe(float d) { Position += Right * d; } public override void Walk(float d) { Position += Look * d; } public override void Pitch(float angle) { var r = Matrix.RotationAxis(Right, angle); Up = Vector3.TransformNormal(Up, r); Look = Vector3.TransformNormal(Look, r); } public override void Yaw(float angle) { var r = Matrix.RotationY(angle); Right = Vector3.TransformNormal(Right, r); Up = Vector3.TransformNormal(Up, r); Look = Vector3.TransformNormal(Look, r); } public override void Zoom(float dr) { var newFov = MathF.Clamp(FovY + dr, 0.1f, MathF.PI / 2); SetLens(newFov, Aspect, NearZ, FarZ); } public override void UpdateViewMatrix() { var r = Right; var u = Up; var l = Look; var p = Position; l = Vector3.Normalize(l); u = Vector3.Normalize(Vector3.Cross(l, r)); r = Vector3.Cross(u, l); var x = -Vector3.Dot(p, r); var y = -Vector3.Dot(p, u); var z = -Vector3.Dot(p, l); Right = r; Up = u; Look = l; var v = new Matrix(); v[0, 0] = Right.X; v[1, 0] = Right.Y; v[2, 0] = Right.Z; v[3, 0] = x; v[0, 1] = Up.X; v[1, 1] = Up.Y; v[2, 1] = Up.Z; v[3, 1] = y; v[0, 2] = Look.X; v[1, 2] = Look.Y; v[2, 2] = Look.Z; v[3, 2] = z; v[0, 3] = v[1, 3] = v[2, 3] = 0; v[3, 3] = 1; View = v; _frustum = Frustum.FromViewProj(ViewProj); } }
Our look-at camera is defined by a target position and a radius from that position, and a pair of angles that describe the position of the camera in spherical coordinates. These angles are commonly referred to as theta and phi, altitude and azimuth, latitude and longitude, or beta and alpha. We’ll use the alpha/beta terms, where the alpha angle is the angle from the XY plane, and beta is the angle from the XZ plane. The diagram below illustrates how this works in 2D:
public class LookAtCamera : CameraBase { private Vector3 _target; private float _radius; private float _alpha; private float _beta; public LookAtCamera() { _alpha = _beta = 0.5f; _radius = 10.0f; _target = new Vector3(); } }
From the target, radius and angles, we can determine the position of the camera using a little bit of trigonometry, as seen in our UpdateViewMatrix override. Once we have calculated the position of the camera, we can calculate the view matrix using the SlimDX Matrix.LookAtLH function. After we have calculated the view matrix, we can extract the camera’s right and look vectors from the matrix.
public override void UpdateViewMatrix() { var sideRadius = _radius*MathF.Cos(_beta); var height = _radius*MathF.Sin(_beta); Position = new Vector3( _target.X + sideRadius * MathF.Cos(_alpha), _target.Y + height, _target.Z + sideRadius * MathF.Sin(_alpha) ); View = Matrix.LookAtLH(Position, _target, Vector3.UnitY); Right = new Vector3(View.M11, View.M21, View.M31); Right.Normalize(); Look = new Vector3(View.M13, View.M23, View.M33); Look.Normalize(); }
Movement with our Look-at camera is a little more complicated than our FPS camera, since we need to move the target position relative to the XZ components of the look and right vectors. To get good-looking results, we need to make sure that we normalize the XZ vector, as otherwise we will get varying movement speed depending on the alpha and beta angles of the camera. As currently implemented, the camera target is bound to the XZ plane; if we wanted to make our camera follow the terrain, as in most strategy games, or the character, as in a third-person camera, we would need to manually update the Y coordinate of the target after moving.
public override void Strafe(float d) { var dt = Vector3.Normalize(new Vector3(Right.X, 0, Right.Z)) * d; _target += dt; } public override void Walk(float d) { _target += Vector3.Normalize(new Vector3(Look.X, 0, Look.Z)) *d; }
To pan our camera, we need to adjust the alpha and beta angles of the camera. For best results, we will need to constrain the angles to a reasonable domain for spherical coordinates; for the alpha angle, this means that the angle should stay in the range [0, 2*Pi], and the beta angle should remain between [0, Pi/2]. Because the trigonometry gets a little wonky at the limits of that range for the beta angle, we further restrict the beta angle by a further epsilon value, so that the effective range is [0.05, Pi/2 – 0.01].
public override void Pitch(float angle) { _beta += angle; _beta = MathF.Clamp(_beta, 0.05f, MathF.PI/2.0f - 0.01f); } public override void Yaw(float angle) { _alpha = (_alpha + angle) % (MathF.PI*2.0f); }
For zooming the look-at camera, we have two options. We could use the same method as the FPS camera, and vary the FOV of the projection, or we can vary the radius while keeping the FOV constant, thus physically moving the camera closer. I have chosen the second option; from my experiments, it seems to be six of one versus a half-dozen of the other, as far as the two methods relative effectiveness. The radius method does allow somewhat finer control over the game-specific distance of the camera, so that, for instance, in a third-person perspective game, you could move the camera closer to the player character if the player would be occluded by some scene geometry more easily.
public override void Zoom(float dr) { _radius += dr; _radius = MathF.Clamp(_radius, 2.0f, 70.0f); }
Moving on to the implementation of our CameraDemo application, integrating the Look-at camera is very simple. Because we are using the common CameraBase implementation to interact with our cameras, the code for the FPS and Look-At cameras is the same. The only changes we need to make are to track which camera is active, and provide some hotkeys to switch between the camera implementations. From our UpdateScene() function:
if (Util.IsKeyDown(Keys.L)) { _useFpsCamera = false; } if (Util.IsKeyDown(Keys.F)) { _useFpsCamera = true; }
Voila!
Next time, we’ll get back into Mr. Luna’s examples, with Chapter 16, covering picking, where we will cover how to determine which object in a 3D scene corresponds with a pixel on screen.


This is a Heading
This is a paragraph.
DESKTOP-8G095Jg
CPU Cores Util
Freq:
3.5Ghz
CPU Load for 15 min
Memory Util
Total:
16GB
Available:
8GB
Usage:
50%
Network IO
ErrorIn:
555
ErrorOut:
666
DropIn:
4564
DropOut:
3543
Partition C:\\
File System:
FatEx
Total:
5TB
Free:
3TB
Used:
2TB
Partition C:\\
File System:
FatEx
Total:
5TB
Free:
3TB
Used:
2TB
Partition C:\\
File System:
FatEx
Total:
5TB
Free:
3TB
Used:
2TB
Partition C:\\
File System:
FatEx
Total:
5TB
Free:
3TB
Used:
2TB
Partition C:\\
File System:
FatEx
Total:
5TB
Free:
3TB
Used:
2TB
Partition C:\\
File System:
FatEx
Total:
5TB
Free:
3TB
Used:
2TB


Grace under fire:
responding to a pandemic
Clean Clothes Campaign
global network
300 organisations
30 years
campaign, lobby, action
Plone use
website (Castle)
-
intranet (Quaive)
campaign mini-sites (Gatsby)
Garment industry
~ 60-80 million workers
mostly women
heavily globalized
higly profitable
... yet pays poverty wages
Covid catastrophy
-
wage loss: ~6 billion USD (March-May)
-
Sri Lanka: 50% of Covid cases in garment factories
union busting
-
77% of workers report going hungry
75% are in debt
#PayUp
USD 40 billion cancellations
USD 16 billion recouped!
-
... however, still a long way to go
Aligning our response
-
# of *active* Intranet users up 250%
evidence gathering
strategizing
prepping campaigns
Website and blog
rising visitor numbers
-
live-blog read by industry & press
updates 3x per day
campaign sub-sites
New editors
spread all around
no time for onboarding
various skill levels
... so, mistakes happen ;-)
Undo ?
-
I've spent more time in ZMI than in years...
... where did that life-saver go?
UNDO button now!
Page composition
-
CastleCMS has best Mosaic experience
so we abused it...
up to 100 tiles per page
Embed ALL THE THINGS
Plone
Social media
Airtable
Flourish studio
OnlyOffice
CiviCRM
ResourceSpace
Yumpu
BigBlueButton
Nextcloud
Folderish?
CastleCMS is opinionated:
all content is folderish
New editors "get" it directly
However, Folders are still useful
Just to put things in the right boxes
Biggest learning:
we've had this backwards...
 That's soooo 2010...

But Overall
Plone & friends held up
... even if creaky sometimes
We can connect our network of activists
Overcoming barriers of distance, language, culture, gender
We gather evidence, devise strategies
CCC is taking on a multi-billion industry
- with vastly more resources than we have -
yet are booking campaign wins,
and garnering recognition.
We remain operational
and more determined than ever!
All while running on Plone
(and a vast array of other free software)
Know we're putting your work to good use!
a big THANK YOU!
Keep up the good fight
see you at the face2face, or online.
@polyester


Multiple items
module List
from Microsoft.FSharp.Collections
--------------------
type List<'T> =
| ( [] )
| ( :: ) of Head: 'T * Tail: 'T list
interface IEnumerable
interface IEnumerable<'T>
member Head : 'T
member IsEmpty : bool
member Item : index:int -> 'T with get
member Length : int
member Tail : 'T list
static member Cons : head:'T * tail:'T list -> 'T list
static member Empty : 'T list
Full name: Microsoft.FSharp.Collections.List<_>
val sum : list:'T list -> 'T (requires member ( + ) and member get_Zero)
Full name: Microsoft.FSharp.Collections.List.sum
val printfn : format:Printf.TextWriterFormat<'T> -> 'T
Full name: Microsoft.FSharp.Core.ExtraTopLevelOperators.printfn
val square : x:int -> int
Full name: Document.square
val x : int
val sq : int
Full name: Document.sq
type Person =
{First: string;
Last: string;}
Full name: Document.Person
Person.First: string
Multiple items
val string : value:'T -> string
Full name: Microsoft.FSharp.Core.Operators.string
--------------------
type string = System.String
Full name: Microsoft.FSharp.Core.string
Person.Last: string
type Employee =
| Worker of Person
| Manager of Employee list
Full name: Document.Employee
union case Employee.Worker: Person -> Employee
union case Employee.Manager: Employee list -> Employee
type 'T list = List<'T>
Full name: Microsoft.FSharp.Collections.list<_>
val jdoe : Person
Full name: Document.jdoe
val worker : Employee
Full name: Document.worker
Multiple items
val int : value:'T -> int (requires member op_Explicit)
Full name: Microsoft.FSharp.Core.Operators.int
--------------------
type int = int32
Full name: Microsoft.FSharp.Core.int
--------------------
type int<'Measure> = int
Full name: Microsoft.FSharp.Core.int<_>
namespace System
MTUG Dublin
F# and Open Source
Andrea Magnorsky
Digital Furnace Games ␣ ▀ ␣ BatCat Games ␣ ▀ ␣ GameCraft Foundation
Working on OniKira: Demon Killer
Available on Steam Early Access
F# OSS and you
Latest announcements, Big wins !
- Great for language adoption
- Visual Studio community with extensions
- CLR in a package FTW
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
|
// one-liners
[1..100] |> List.sum |> printfn "sum=%d"
// no curly braces, semicolons or parentheses
let square x = x * x
let sq = square 42
// simple types in one line
type Person = {First:string; Last:string}
// complex types in a few lines
type Employee =
| Worker of Person
| Manager of Employee list
// type inference
let jdoe = {First="John";Last="Doe"}
let worker = Worker jdoe
|
Visit F# for Fun and Profit for more examples
Some examples
Light syntax, POCOs
C#
public class Person
{
public Person(string name, int age)
{
_name = name;
_age = age;
}
private readonly string _name;
private readonly int _age;
public string Name
{
get { return _name; }
}
public int Age
{
get { return _age; }
}
} |
F#
1:
2:
3:
4:
5:
6:
7:
|
type Person( name:string, age:int) =
/// Full name
member person.Name = name
/// Age in years
member person.Age = age
|
C#
using NUnit.Framework;
[TestFixture]
public class MathTest
{
[Test]
public void TwoPlusTwoShouldEqualFour()
{
Assert.AreEqual(2 + 2, 4);
}
} |
F#
1:
2:
3:
4:
5:
6:
|
module MathTest =
open NUnit.Framework
let [<Test>] ``2 + 2 should equal 4``() =
Assert.AreEqual(2 + 2, 4)
|
FsCheck
1:
2:
3:
4:
5:
6:
7:
|
module MathTest =
open FsCheck.Nunit
[<Property>]
let ``Given a, a + a should equal a * 2`` ( a: int) =
a + a = 2 * a
|
You can use FsCheck from F# and C#.
Some examples
C# <-> F# Interop
C# consuming F# code
Use namespaces in F# or prefix with global::YourModuleName
using System;
class Program
{
static void Main(string[] args)
{
var s = Calculator.Calc.add("4 4", "+");
Console.WriteLine("The sum is {0}", s);
}
} |
and the F# side
1:
2:
3:
4:
5:
6:
|
namespace Calculator
module Calc =
open System
let add numbers delimiter =
// Do stuff to add numbers
|
F# consuming C# code
1:
2:
3:
4:
5:
6:
|
module MathTest =
open NUnit.Framework
let [<Test>] ``2 + 2 should equal 4``() =
Assert.AreEqual(2 + 2, 4)
|
Like games? Dublin GameCraft on the 6th of December @ Microsoft
F# and games workshop from 10am to noon.
Functional Kats Monthly meetup


Our democracy relies on a healthy exchange between lawmakers and the people they represent. Ideated at the Second Annual Congressional Hackathon and seeded by GW's New Venture competition, Represently makes it easier for lawmakers to respond to you so your voice can be amplified.
Are you a lawmaker seeking a more effective way to respond to constituents or an individual looking for more effective advocacy tools? We'll help
Represently is hiring summer fellows to join our determined team. Join us.
Client Engagement
Co-Founder
Co-Founder
Software Engineer
We're a team with backgrounds in data science, public and private sector software development, and working on Capitol Hill that leverages technology for more effective representative democracy.
Represently is hiring summer fellows to join our determined team.


With the addition of Siamangs to Planet Zoo, the team felt it was important that swinging from beams was included in some form, a trademark gibbon behaviour. My main goal was creating a system that gave animation the ability to create impressive swinging motions, while ensuring players could build a wide variety of frame layouts. Here's how I did it.
When brachiating, Siamangs will look ahead to the end of their current beam. If a subsequent beam is found near the same position, the animal may attempt to traverse to this next beam, continuing it's brachiation animation. I implemented plenty of pathfinding logic to ensure only accessible, unobstructed beams are traveled to, and significant animation code to ensure the system worked smoothly.
A modular system where pieces can snap together to make a frame.
Brachiation integrates with the preexisting climbing system.
I worked heavily with Design, Production, and Animation to ensure the system operated in a way that balanced player
freedom with impressive animations, while at the same time ensuring animation time wasn't wasted on unnecessary elements.
In my technical design I pushed for modularity over the initially planned singular object. This made the feature more
interesting for players while also reducing animation's workload by allowing a shorter animation to be retargeted to the
various modular pieces.
As part of development I led weekly interdepartmental meetings on the feature, ensuring everything was coordinated and
highlighting potential issues. This level of planning meant we were able to get double the animations we'd initially budgeted for.
I'd have loved to experiment with some form of hand IK, allowing siamangs to grip the pole
reliably, and allowing animations to be made a lot faster. This would allow for more varieties of beam to be
created, as animation time was the limiting factor for this feature.
For a more practical change, it would have been
useful to discuss the beam dimensions at an earlier stage to ensure they all synergized (e.g. having two quarter turn pieces cover
the same distance as one half turn piece).
Animations can traverse multiple objects unimpeded.


ALORA Random Quote Generator
Copyright © ALORA Design Studio 2017. All Rights Reserved.
BEWARE! You might get inspired by these quotes.
Generate Quote
Tweet


|
I
Knew I Loved You
(Savage Garden) |
|
Maybe
it's intuition
some things you just don't question like in your eyes I see my future in an instant and there it goes I think I've found my best friend I know that it might sound more than a little crazy but I believe I think I dreamed you into life I knew I loved you before I met you I have been waiting all my life only a sense of completion and in your eyes I see the missing pieces I'm searching for I think I've found my way home I know that it might sound more than a little crazy but I believe I think I dreamed you into life I knew I loved you before I met you I have been waiting all my life I am complete now that I've found you I think I dreamed you into life I knew I loved you before I met you I have been waiting all my life |


Top Ten Best Favorite Game show hosts
Number 10: Wayne Brady
Number 9: Craig Ferguson
Number 8: Pat
Number 7: Chuck
Number 6: Bill Cullen
Number 5: Wink Martinvale
Number 4: Richard Karn
Number 3: Regis Philbin
Number 2:Bob Barker
Number 1:Drew Carey


I'm in a j's podcast for Monday.
Most wonderful show is keeping up with the jones is welcome to episode one seventy two of keeping up with the jones is this week with john bar friends tinkin sam all the way from melbourne Australia but first.
Adjones tell me about your week.
Oh it was a good week wasn't it I mean I suppose we always say that but it was it was a good week let's have a bad week it was terrible week.
No, let's not have a terrible week.
No, let's not.
Yeah.
It was a great week.
I taught in brain science this week.
You did.
On your on your two.
It's one of my favorite weeks because it's a relatively new teaching for me.
So it's it's always fun.
Yeah.
To teach something new ish.
And it's a week that I use more videos than any other week of any other year of teaching.
Yes.
And the videos are quite fun, aren't they?
Yeah.
If if you're like, I'd like to hear about neuroplasticity or how to change your brain
or the effect of sleep and stress on my brain.
I actually have a page on our website of all the videos I use teaching.
I'll put a link in the show notes and you can, um, you can waste a lunchtime.
Well, not waste a lunchtime, but do you know what I mean?
Yeah, it wouldn't be a waste.
It'd be great.
Here's a bunch of videos you can watch some fun, all of them interesting.
And you have fun with that.
So that was that Monday night though.
You taught at Emmonate.
I did.
On a sermon topic.
I can't believe you taught.
I know it was a shock to me to never thought I'd talk about it.
The Catholic Church.
And yeah, no, I spoke using illustrations from the end times.
Yes.
Well, and Mario Kart.
Yes.
No, but for real, you did a whole message on well, not on Mario Kart, but
using Mario Kart as your illustration.
Yes.
Yeah.
Mario Kart was my illustration.
Mario Kart.
Well, I call it Mario Kart.
I don't know what I call it.
I'm all over the place.
Mario Kart, Mario Kart.
- Well, when I said Mario, everybody went Mario.
- So.
- That's 'cause he says it's a Mario.
Oh, it's a long A, a Mario.
Mario Kart.
Now it sounds weird to me any other way.
- Mario Kart.
- But yeah, you spoke on, I was just flabbergasted.
And you went and got screenshots,
you played the game in preparation for the sermon.
- I'm not messing around here.
- And you got video and--
- I did.
I filmed me playing, which was actually really hard
to press the button while you're trying to capture this green,
while you're trying to illustrate what, you know,
I'd be like, oh, I have a green shell.
This is one of the things I need to illustrate.
I'm trying to press a button and then I end up
letting go of the green shell while I'm trying
to press a button anyway, it was, yeah.
I'm not as skilled at Mario Kart as some others are.
You got some captures for me though that I didn't get.
- Yeah, but it was fun homework.
You were like, go play that level.
You know the level names though, I'm like, you know,
Going camping has produced amazing dividends in our marriage.
Yeah, come on.
Well, you know, you speak my love language.
I'll speak yours.
Yeah, it was fun.
It was good.
You know what else was fun?
What?
You got your iPhone on Monday.
I did.
Scheduled for November 20 something delivery.
Yeah.
But it arrived on Monday.
It did.
Tell me your iPhone 10 review.
Oh, my iPhone 10 review.
I really like it.
I like Face ID.
Um,
That's unlocking with your face rather than your thumbprint.
Yes.
So because my thumbprint often didn't work for me, I think because I've burned my fingers
so much when I was serving tables, often thumbprint things are their hit and miss for me.
But my face, I didn't burn while serving.
So it works just fine.
Does that mean I will no longer look over and see you punching in your pin?
Well, yes.
Because you would punch in your eye, I'd no answers.
So you like face ID?
Yes.
But I'm just telling you, my thumbprints, they're kind of gone.
when we went to go get our green cards. They had such a hard time getting my prints.
I remember.
Okay.
But for said, do you like what else you like?
I like the big screen. I like how colorful it is.
It's a beautiful screen.
Oh, it's such a nice screen.
Do you like the fact it's a smaller physical device?
I do. It fits my pocket way better.
Cameras?
Beautiful. Lighting. Beautiful.
Yeah, I love it. Great. Great phone.
So no regrets.
No regrets.
What about, I've had a lot of people ask me, should I upgrade and I tell them no?
Because I don't want to be blamed later when they're like this thing doesn't mark like the old one so.
And you know like 95% of it is the same as the old one was even true.
Maybe 85% of it is the same but the most common action you did on your old life almost pressing the home button to go home and there is no home button.
Did that throw you well like for a day but now I'm told you to yeah so I can't I can't navigate it quite as fast as I could the old one but give me another week and I'll probably be fine.
So yeah, I really like it.
All right, great.
It's good.
Good.
Then, mam and pamper came to town.
Yeah, they got here on Friday.
Bless them, their flight was delayed,
so they got here really early Saturday morning.
Poor sweethearts.
We're talking about John and Carol Arnett, our spiritual parents.
Two of our heroes, two of our favorite people
that people used to live with and travel with are in town.
They were taught at Grace End of this morning.
Yep.
and write the place which was amazing and then they're teaching at the school.
This is what I love about the school.
I love when people from Grey Center come to say Sunday,
like, oh my gosh, that was amazing.
Or come to a conference and get a couple of sessions.
Be like, that's amazing.
And I'm like, yeah.
And if you did the school, you'd get a whole week with them, six more sessions with them.

And I'm like, and they're talking about what they want to share.
And I'm like, I'm so excited for our students.
This is amazing.
So it's going to be so good.
Yet another reason to come do the school supernatural life.
There you go.
Applications are actually open.
They are.
Yeah.
We already have applications for both year one and year two.
So if you've been thinking about it now is it time to apply plenty of time to fundraise?
Yeah.

Yeah.
It was MJ's birthday on Wednesday.
Who's five?
He is.
He's so sweet.
Oh, he's unbelievable.
Just so earnest.
And we had his birthday party here on Saturday.
So that was that was very fun.
They just basically had a Mario Kart competition and then a dance party competition.
Then we did pizza, cake, open presents and off you go.
Yeah, it went pretty quick for two hours of noise.
It did. It did. But children are loud.
They're so loud. Oh my gosh.
But he was thrilled.
He was just over the moon. He loved it.
I've never seen anybody so excited for $12 worth of party decorations.
Yeah.
I'm like $12 buys a lot of joy.
Yeah.
Well, boy, we just get the whole party and Spider-Man, except the gift bags that ran out of
legitimately.

I think from the ceiling.
Yeah.
Spider-Man wall decorations as happy birthday.

And so that's great, but I didn't have any party bags.
And so I searched high and low, no party bags.
The only choice was Paw Patrol or Batman.
And I'm thinking I can't do Paw Patrol, but I'm actually more inclined to do
Paw Patrol than I am Batman because of the whole Marvel DC comics.
OK, but it was a superhero party.
So they none of them caught that.
It only bothered you.
Well, that's what makes me worry about the youth of America.
Like we're in.
But we had Batman here.
and spider man together playing well this is the weird thing i was not i was not aware that you
didn't fight it every week to come dress a super heroes so in the first child showed up i was like
oh my gosh this child's gonna feel like i'm more on the part because we didn't dress any of our kids
told you you did not i did and i said to mj do you want to dress up in one of your outfits and he's
like no i just want to wear my batman shirt so well i was not prepared for that so all these kids
to shoot up and I feel so dumb.

And I just didn't know about it.
Yeah.
Yeah, it was a thing.
And then we did some family pictures, which I have to say,
went brilliantly.
I pause because oftentimes family--
maybe it's just because our kids are older.
In the times before when we tried to do family photos,
I'm just like, I'm not sure this is worth it.
Right.
I think we should just Photoshop our kids in.
Just go with some mannequins and a green screen.
and then later just do some Photoshop magic because it was torture historically.
I don't understand how your brain works, but okay.
Yeah.
What do you mean you don't understand how my brain works?
Well, just so many things are curious to me.
Keep going.
It's all good.
But anyway, it worked great.
Yeah.
And they look stunning.
Yeah.
And we'll just drown your social media feed.
No doubt.
You'll see them.
Yeah.
Yeah.
All right.
Our main topic this week, our good friend, Sam and Tinker, here.
Last time you guys were on the show was episode 58, which is like a hundred and something
episodes ago.
It was decades ago.
Wow.

You were just heading away out.
So I thought it'd be fun to catch up,
to find out how has it all worked out?
How long have you been in Australia for?
- Two years now, I think, since that episode,
two and a half, yeah.
- Good night.
And so if you haven't met these guys,
guys introduce yourselves, tell us a little bit
about you, where you from and what you do for a living.
- Well, I'm Sam McLeod.
I'm actually from Tennessee.
I grew up in Smyrna.
- Woo hoo!
- Yeah, it's a nice little redneck town
where I'm outside at Nashville.
- Nashville?
- Yeah, and that's me.

- No, you introduced her.
- She is Tink.
- I'm Tink.
I was raised in Houston and then moved to Nashville
when I was 16, and then that's when I met Sam.
And we've been together ever since.

- Yeah.

- My mom calls me Tinky.
It started as Tinky when I was born.
And then Tinky--
- So that's where Tink came from.
- Yeah. - Wow.
- Yeah, literally the day I was born,
they were like, what's called her Tinky?
And then I was kind of embarrassed of it
when I was growing up.
But then all my friends picked up on it
and then my teachers picked up on it and here I am.
- Tink. - Tink.
- Or Tinkalicious.
As I like to call you-- - Tinkalicious.
- Or Shatinkua.
you to pick one. Oh, yeah. When I was in school, people would be like, "Is that your real name?"
And I'm like, "No, my real name is Chitinqua." And then I'd keep the straightest face. They never know.
Yeah. Those are my space name for a long time.
My space name. Oh, my space. Oh, my space.
Oh, my space. RIP my space. So you guys, we met you through M&A first of all.
Then you both came into this school, Supernatural Life at various times,
and then you were both staff with us as well. And then as the story unfolds,
you ended up moving to Australia to live with a couple of profits.
And tell us about that the last two years.
What difference between America and Australia go?
Wow.
There's a lot of differences.
It's kind of the same, but just upside down.
So the seasons are all backwards.
Like it's coming into its fall here, right?
So it's spring in Australia at the moment.
Christmas is at summertime, which is really weird.
Right.
That would be weird.
How do you make snowmen?
We don't.
We make sandmen.
Sandmen.
Really?
No, we don't. We could potentially. You can make snow though. I mean, that's also crazy. There's like
snow on E-Mountain in Australia. So that's there. What are some other differences?
Yeah. I mean, there's little language things that were hard for us at first.
I don't know if you guys know this term "ta." No. "ta" basically is like an exchange that they
say to kids and that got really confusing. So you're supposed to just say "ta" when you receive
something? Like thanks. Yeah, like thanks. Yeah, that's a Welsh thing. Yeah. Is it?
'cause I thought it was half of tah-tah.
- Like tah-tah. - So, like tah-tah.
So when I would hand people,
I felt like I had to finish the tah.
So they'd be like, tah, I'd be like, tah.
(laughing)
And then they would just look at me.

- What about thongs?
- Oh yeah.
- We were warned about thongs.
- We were warned about a couple of things.
- Explain for our podcast,
essentially don't know what thongs are.
- Flip flops.
- If you're from America.
- Yeah.
- If you're from Australia, you know what it is.
Gary said something the other day with Abigail in the room.
He said, "I'm gonna go put on my thongs."
And Abi just looked at him like, "You're gonna do what?"
(laughing)
He's like, "Flip-hop, flip-hop."
(laughing)
- That is awesome.
- So what have you missed most about America?
- Mexican food.
- Oh wow, that was quick.
- That's bad and I, that is the thing I miss.
- With no pals for that.
- That is the thing I miss.
- I miss Mexican food.
I also miss like the culture of America,
how everyone's really celebratory.
They love to celebrate holidays and stuff.
Not that Australians don't celebrate holidays,
but it's really hype in America.
- It's the thing we, as taking us years to get used to,
that Americans love to celebrate.
- Everything.
- A cultural norm for me.
So that makes sense.
- Yeah, so we would, it would be like somebody's birthday
or something and we would go all out.
And they'd be like, oh yeah, it's my birthday.
I'm like, but it's a big deal.
Or even--
- Look, we made a flash mob.
jump out the cake.
Just a normal response for us.
Yeah.
Yeah.
In Fourth of July and Thanksgiving, those aren't things over there.
Yeah, we miss American holidays for sure.
We just do our own little solo.
Fourth of July.
Yay.
It depends.
And it looks like from social media at least that, I mean, you guys are both high exroverts,
high influencers love to be around people.
And you know, knowing the community that you had here, you had a ton of friends.
the life and soul of parties. Everybody loves having you guys around. And it looks like from
social media that you've firmly embedded yourself in that culture. Is that true or is that just
social media? It was not easy at first. So moving over to Australia, we kind of realized,
"Oh, we have to start all over and meet new people." But also I feel like it was the Lord
to bring us there to just be just us, you know, and really grow in marriage.
So we spent a lot of time focusing on us as a couple and that was really good for us.
We needed that.
Totally. Talk about that. Let's just jump straight into your marriage.
All right.
So I loved having a huge community here and I think that was the Lord too,
but I think that in having a big community sometimes it was easy to get distracted from,
I guess, home life sort of things like in terms of building your family, building
like a legacy establishing like norms within your own little circle of family.
That being distracted in the community, it was hard to focus on that.
But when we went to Australia, we were removed from community completely and we had to discover,
"Oh, we actually have to build a new community."
But, you know, what actually we value because we don't have anything else to do.
We're super bored together.
So let's figure out like what is actually our values together.
And so I think being removed from everything was really helpful for us to really focus
on our marriage and on each other.
Yeah.
That's fascinating being super intentional about what are your values?
So what did you come up with?
What are your worth, Sam and Tink's values?
Well, quality touch in physical time.
I'm a man.
Every man.
Well, we definitely got to sit down and look at our finances,
not that we didn't hear, but we were able to really plan and look ahead
at what we wanted to do, as far as creating a legacy and creating, you know, a savings
and all that.
And so we got to figure out that.
And we really got to individually spend a lot of time with the Lord, which not that we
couldn't do that here, but being in a new place, you're kind of forced to slow down.
And in that being separated from everything, you know, we both were desperate for the Lord
in an individual way and then we'd come together.
And it was like the Bible became 3D.
Everything that we were learning was so much more intentional.
- Yeah.
I think what was really handy as well
is all the time we spent in the school,
it was like being pumped full of like all this revelation
and teaching and all this stuff.
But when we were in the season we were just in,
like, or have been in, we really got a chance to unpack it
all and put it to use in really practical ways.
like boundaries, you know, how to be utterly awesome
in everyday life, those things.
And what I hearing God's voice, all of it was amazing.
So good. Yeah.
- Yeah.
- So it's funny that God took you literally
to the other side of the world for you to find yourselves
in a sense, because it feels like you're more,
not that you weren't robust before,
but it feels like you're more you.
Is that a good way of putting it?
- I think, yeah, definitely for me,
I think that it's been a really growing time for me.
I think for both of us.
No, just for me.
It's funny how you live sometimes in the shadow of how people perceive you.
Well, well said, Jeez.

Does that make sense?
Or it's maybe even easier to say,
Yes, to what God's been saying about you because you're getting to define yourself for the first time with that group of people.
So it's probably easier to say, oh, yeah, I'm going to stand up and be that person because you don't have the history of, you know, that you're worried that people are going to think you're trying to be something or whatever.
The familiar.
Yeah.
Yeah.
Totally.
That's a really good point.
It makes me think too, like, because we're putting put in leadership positions.
So I was drawing out a lot of stuff in us that we didn't really know was there.
And all of a sudden, like, Oh, I do know how to teach because I learned how to do this.
And now I'm it's being pulled on me.
Oh, people are listening.
I should prepare and like you just find all these things that are there that you
didn't know were there because the draw of being put in a leadership position,
but also with all of the equipping that we got from you guys and the school.
Yeah, I think it was pretty amazing.
We had Gary and Sarah here last week and they were on the podcast and we were
asking them all about the school of prophets, which they were super honoring.
They were like, actually, Sam and Tint came to us and said, "Hey, what's in your
heart?" And they've helped us launch it. So talk to us about the journey of you
guys helping these guys launch school of prophets and talk to me about your
relationship with Gary and Sarah. What's it like being in a relationship with
super prophetic people? You just go to their house and go, "You're fine, how am I?"
Yeah, exactly. What do you see?
Show me all you see is me.
What is it like?
I mean, well, with Gary and Sarah,
we knew that going over there,
our assignment was to serve them,
and to do whatever it was that we could
to honor them and lift them up.
And so, you know, working through the church and everything,
we also wanted to help them expand and follow their dreams.
And so we kind of just sat down with them and we were like,
like, what do you guys want to do?
You know, I know that you're leading a church and I know that this is definitely the call
on your life, but like, is there anything that is like a dream that's on the back burner?
And then that's when they brought up the school.

We just don't know how.

And then from there, we just kind of ball parked.
Really started fleshing out a plan.
Yeah.
Yeah.
Do you realize what you set in motion for yourselves at that point?
No.
No, so what you did, if the law of sewing, reaping is true, which it is, you basically just came to someone and said, oh, I'd like to make your dreams come true.
How can I serve you?
So you set in motion for some point in the future, a young gifted couple to come to you guys and say, Hey, what could we make possible for you?
Thank you.
Send them, Lauren.
It's amazing when you saw your life in somebody else's vision, the life that comes from that.
I can't wait to see what happens from you guys literally giving up everything to move
countries to say, "Oh, I'd love to serve you."
Talk to me about that because nobody loves to talk about serving.
Like the least popular message I do is on the joy of serving, on the joy of submitting
to leaders.
And, you know, AG&I's testimony is that the rapid advance that we've experienced in our
personal and spiritualized with the Lord, I would attribute to our application and the
revelation the Holy Spirit gave us about submitting to healthy leaders.
Yeah, 100%.
100%.
Absolutely.
You know, I'm seeing that in you guys to talk about that.
Cause that's unpopular.
Isn't that like serving?
Yeah.

Right.
This is your peak time for you to build your dream and your vision.

Talk to us about that.
Cause that fascinates me.

I mean, even from you guys, it's the thing to do, to go to where you want to go.
I mean, so where you want to go, all those things that
were those one-liners that we know.
So where you want to go, to be the greatest, to be the least kind of thing.
And I love that whole story.
I think even Bill Johnson talked about it one time saying,
"Jesus never rebuked the disciples for wanting to be great.
He just said, 'To be great, be the least.'"
So I guess in our heads, we're like, our vision will be revealed if we serve.
of someone else's vision, especially if the Lord's calling us to do it.
And I guess that's just a trust there kind of thing.
Does that make sense?
It does.
Have you found joy in doing that?
Yeah.
I think so.
I found joy, a lot of other things.
I mean, a lot of pain, but I guess the pain becomes joy.
Over time.
I think pain is unavoidable in life anyway.
So you're going to have pain no matter what you're doing in some sense.
Do you know what I mean?
Like what do you do?
There's tough seasons of life.
There is pain and growing, isn't there?
Yeah.
Well, I think what was good for us was that we had vision,
because vision gives pain a purpose.
And so the whole time that we were over there,
we had a vision of we know that the Lord has called us
to a great destiny.
But our purpose is to be exactly where we were at.
Destiny is to be great, but our purpose
is to be a daughter and a son.
Yeah, totally.
And so in being a daughter and a son,
we were more than willing to serve.
It was it was a joy to serve Gary and Sarah because we want to, you know, further the kingdom.
It's not our assignment.
It's the Lord's assignment.
It's bigger picture.
Yeah.
About your million dollars.
What's going to happen in about 20 years is you guys are going to be somewhere because he's great and he's kind and he's gracious.
The Lord's going to give you the desires of your heart and people are going to come along and say, Oh, I want to be like them.
If I do what they do, I'll get what they have, but they need to do what you're talking about now.
Does that make sense?
Oh, yeah.
A lot of people say, "Yeah, I've got a great destiny," and then they go off to achieve it.
And I'm like, "I'm not sure that's how destiny arrives."
Yeah, that's exactly right.
Maybe it is. I just...
Not in line with Bible.
I mean...
With all the people.

I get to be more like David.

Like, the runt of the litter.
Joseph was a slave for crying out loud, and then he was accused of like adultery and
Throw it in prison and then boom all of a sudden he's second in command of all the two,
you know just like all those stories like I want to be like those guys and follow in their footsteps
because that's what it yields you know. So not everybody has the opportunity to switch culture,
switch countries and go serve somebody else. What encouragement would you give to people who
are listening today about how to apply service in their normal everyday life? I mean serving
serving under people that you look up to and also serving under people that
You know, you'll look at the way that they're leading and think oh, I would do that differently
But I think serving in serving in any capacity is going to further your walk with the Lord
Yeah, I don't know it's somebody broad answers like humility teach ability like all those things, but I'm let's say
I'm listening to this podcast. Yeah, I'm driving my way to work. I have a job. I go to a church
How do I serve if serving is a key to releasing destiny?
I can't quit my job and you know move to the other side of the world and serve and my point is you don't have to do that
We can we can serve in any capacity
What encouragement would you give to people? I mean serve exactly where you're at even if it's even if you're serving at a restaurant
Like literally waiting tables like serve your leaders there
You know serve at the church that you're at join the join the prayer team or learn from the people around
do. That's what we did when we were here.
Stacked the chairs, cleaned the toilets, things like that.
I mean, I also just asked the Lord where to serve because I feel like He'll give you a call
and then once He gives you that, then serve no matter what.
So something you said just made me think of something.
He said, "Stack the chairs and clean the toilets."
I think people get the idea that once you're in full-time ministry, those aren't the things
that you do anymore, which certainly wasn't our experience.
Once you're in full-time ministry, that means everything's your job.
Exactly.
But tell me about that.
You guys go over there, you're in full-time ministry, you just do the sexy parts of the
job, right?
There's no other stuff.
Oh yeah, you've made it, definitely.
Yeah, yeah.
It's a breeze.
Rockstar status, right?
No, I think that's always part of it.
Well, as soon as we, in our last podcast, we talked about the big dream and getting
over there, that's the destiny.
But then when you get there, all of a sudden you're hit with all the responsibilities.
Now we have to lock up and open up.
That doesn't look pretty, but it was a huge part of where we're going.
I think Sarah Morgan's message at M&A was amazing where she just said that destiny is
hard work.
I think people look at the ministry or if they want to be a musician or they look at
being an artist of some sort or whatever their dream is and they think it once you get there,
everything's great. But it actually does take a lot of work and that's not a bad thing,
it's a great thing. It's something that means that you're living in your destiny.
Yeah. I think you train for responsibility, don't you?
Yeah. So whatever field the Lord's going to release you into, you're going to train for
responsibility in those places. So that's what made me think, because over lunch when we were
chatting and you were saying, yeah, there's been opportunities to stack chairs and clean
toilets and do all this stuff that nobody realizes, you know, people are doing.
They're probably just thinking, oh, but you guys teach too.
You lead Atlas and you do this and you do that.
Yep, but you also stack chairs.
You know, and that's what serving looks like.
You look for the gaps and you stand at them, don't you?
It's all the private victories.
It's the things that no one sees, but the Lord sees.
And I think that's where the joy comes from.
Yeah, totally, because it's always a pleasure to do those things too.
I mean, sometimes it's strenuous, but at the same time, it's not like I'm gritting my teeth.
Oh, I've got to do this again, kind of thing.
Sometimes it is.
You'll find that pain when you're serving really hard.
And I think that most of the joy comes from seeking that affirmation that we need from the Lord,
because the Lord is really proud of all those things that no one else can see.
and that's where we get filled up and that's what keeps us going.
That's what makes us want to serve more.
Yeah, I think it's inspiring to me because I'm reminded that scripture,
those who like pray in secret will, you know, reap a reward other than those
who pray in public.
And I'm like, I like the secret things a lot because I know that that's more
pleasing to him than public things.
Does that make sense?
What do you think favor fits into all this?
Because you guys obviously have favor.
But how does favor work?
I'm on this quest.
understand that. How's it worked in your life, do you think?  What do you think it was
about you guys? We asked them that all the time. Like, did you see something like, did you see like
an angel standing up and like, pick this person kind of thing? They never say that that happened.
Well, I mean, I listened to a teaching that you gave at Emminate about favor that really blessed me
about serving and seeking wisdom and intimacy.
And I think all of that is what we try to steward the most,
is seeking wisdom, being intimate with the Lord,
and serving your leaders and serving your friends
and serving the Lord and spending a good deal of time with Him.
And I think that the more time you spend with the Lord
and the more time you spend serving,
I think favors just a gift that God just kind of sprinkles
on you. He's like, "Oh, you spend time with me." And it's not because we have to, it's because
we want to, and as a good father, he's like, "I'm just going to sprinkle favor on you because
you don't have to do this. You want to do this, and I want to do this for you."
Do you think there's an element, and I like to think that favor's completely impartial,
but I wonder if there's an element, and this is a question, where, you know, that verses
as well done good and faithful servant, you who were faithful and little will be put in
in charge over much. I wonder if if we demonstrate faithfulness and that attracts favor. I mean,
I have no idea. I'm just kind of throwing out ideas based on the favor I see on people's
lives. Like when we grow in favor, we haven't squandered the favor. We've used it responsibly.
Anyway, these are the thoughts that pass through my head. I don't have an answer for it.
Yes, I love to put to practice what you're saying, like in the little things, you know?

But I know Tink and I really make an effort to try to do everything excellently, not in
the performance or striving way, but just to a way to like chase down the loose ends
that otherwise, you know, people would be like, "Ah, you don't need to worry about that."
Tink and I're like, "No, let's take a second to look at that and see."

So yeah, I think in the little things we always do that.
So maybe that has something to do with favor.
I think about what Josh and Sarah said on their podcast too,
while I go like just following favor,
like as doors open, walking through them and things like that.
'Cause sometimes there'll be doors that open
and like, I don't know if I wanna walk through that,
but because it's opening, it's like,
take a second to think about it.
- Here's a question for you.
- Okay.
- If you each could go back five years
and encourage yourself with something,
What would you tell yourself from five years ago?
- I would tell myself that it's not so much
about the destiny on your life.
It's more about the purpose of your life,
which is about being a son of God,
that it's not so much about what you're gonna do.
I mean, that's good and great and awesome,
and there's like a plan and purpose for it,
but it's more about who you are to him
and how you're meant to spend eternity with him.
- I think I would tell myself five years ago
to just not be afraid of who I am.
'Cause I think back then I was very afraid
of just being the raw tank, you know, vulnerable tank.
And I think it took taking me to the other side of the world
for the Lord to just put me face to face
with really who I was.
And I did a really good job of like, you know,
being fun and all that.
But there was a lot of raw stuff that hadn't come to the surface yet.
And so I think for me, I would tell myself, don't be afraid to let that out more.
Cool.
I have a thought for you guys.
And this is along the line of encouragement.
But when Serengarrie were here, we were chatting with them.
And at one point, it was just Sarah and I driving.
And she was waxing on and on about you guys and just how amazingly you have done exactly
what you're talking about, how amazingly you've served.
She was talking about how amazing you both are at teaching and just jumping in there and
not just the behind the scenes stuff, but the stuff with the microphone, like just getting
out there and putting it all in the line.
And when she was talking about that, honestly, I was just so proud.
I was like, yeah, guys, you're going for it.
And we are so proud of you guys for just risking it
and literally flying to the other side of the world.
You know, and just saying, okay, God,
I'm jumping in with both feet.
And it is amazing, amazing to watch you guys come alive
like that or super stoked for you.
- Thank you. - Thank you.
- Okay, I know it's a good thing that I know.
It's a good thing that can't see our tears.
(both laughing)
- Hold it together.
- I'm a crybaby.
Yeah, I love how the Kingdom works through relationships. I love that you guys and Gary
and Sarah and me and AJ, that we all came to know each other through the Kingdom. We all
came to know each other through relationship. I love watching what you're building in Australia.
I love the whole premise behind school of profits. I wish school of profits existed when
I was learning how to prophesy.
I think it's an amazing opportunity.
And I know that you guys are the backbone
and the brains behind the whole thing
and well done on that.
And I just love your heart and serving too.
I think you watch the dividends that that will produce,
not only in the lives of the people that you're serving,
but also in your life, in years to come,
where the Lord says, well done, good and faithful servant,
you've been faithful and little,
and now you're gonna be faithful over much.
And I've just seen it time and time again.
And I love that you live in that message.
Where can people find out more about you?
- Well, we are about to launch our website for Atlas,
which is gonna be atlasmelburn.com.
- And talk to me about Atlas Melburn.
- Well, I guess we were moving to Australia.
We found out we didn't have a community
and there was benefits to that,
but we're also like, how can we make more friends
when we don't have any young adults
like in our church community?
So we kind of thought of this idea of creating a young adult's movement,
like group sort of thing for like a regional meeting.
So we started this idea called Atlas and we made it up with our friends.
And I think Jesse gave us a logo or something like in a day and within two
hours we came up with this idea and then posted a Facebook event and then a bunch
of these young adults from different young adults groups came or around.
They didn't know you.
No, they just saw it on Facebook or something.
I don't even know.
How did you like?
I wish we had more friends.
I know what we'll do.
We'll create an event to attract people.
We might be friends with it.
- It was pretty desperate.
- Yeah, it was a desperate moment.
- We pretty much blasted Facebook.
- That's amazing.
- Messaged everyone that we knew
and asked them to share it and that kind of thing.
And then on the first night,
there were so many people that we didn't know.
Like just young adults from everywhere that had come.
And so it was really cool.
- Okay, I love even that
because a lot of people just said they're in complain,
you know, not to be mean, but they would.
they would sit and complain about their circumstances.
And instead of doing that, you go, all right, well,
Holy Spirit, give me an idea how do we fix this?
How do we answer this?
And you become an answer to an existing problem
rather than just another person who's talking about it.
- Wow, that's a great way to put it.
We wouldn't have seen it that way,
but we still didn't know what we were doing at that point.
We were just like, let's just have a worship night
and gather young adults from different churches
see what happens. And even now we're still trying to catch up with what God's doing.
So the website that we're going to be launching, Sam had a dream about this actually, of creating
like a resource place for people our age to just go online and watch a five minute video
based on what we talk about at the Atlas meeting for the month. And then a Bible verse that's
broken down, a blog, an interview. So we'll be uploading stuff like that onto the website.
Sounds like you're putting together all your skills into an amazing pot to produce incredible
food for Melbourne.
Sorry, trying to do it.
That's what we're trying to do.
Yeah, I mean, we just really want to steward well with the Lord's doing because, yeah,
look at you guys using words like steward and serve.
- It's 'cause of you guys.
- How do we clone you?
- It's 'cause of you.
- All of it.
- Well, it's very sweet.
I'm sure it's more than me and Ajam sure.
Jesus, the Holy Spirit and your own.
You know, you've stewarded things so well.
It's amazing to see.
- Yeah.
- Well done.
- Thanks.
- So if people wanna follow you on social media,
on Instagram, what are your tags?
- Underscore Sam McCloud.
And then he says with a question.
I'm looking at.
She does better than me.
It's underscore Sam.
That's.
And then I'm just taking my cloud.
Oh, and everything on Instagram.
Out of girl.
If you want to see Tink's dance moves every once in a while, she does some
Insta stories that are just absolutely hysterical.
Just for you.
So no word of the lie.
One year from my birthday, I was watching YouTube and I saw this crazy dance.
And so I texted Tink and said, what did I say?
You got 20 24 hours to learn this.
And I did.
And I did.
Tink is an amazing dancer/performer anyway, but I just thought it was hysterical.
I was like, "There's no way you're going to do that."
And you did.
Yeah.
Where our instant flash mobs disappeared when you flew to Australia.
So, you know, I'm great center.
It's about flash mobbing.
There's still on YouTube, though.
Well, that's true.
That's true.
Or Vimeo.
I don't remember.
Sarah Pape sent it to me the other day.
I was like, "Oh my gosh.
That's from the past."
All right.
Well, thank you to our good friend, Sam and Tink, for being here on the podcast.
If you want more information about them, check the show notes.
We'll put links to everything that we talked about today.
So babe, are you ready for this question?
No.
We'll get ready.
Okay.
This is a great one.
This is an anonymous question.
An anonymous right.

He doesn't see anything wrong with it because it's "just TV", but I'm completely against
it for reasons I don't know how to put into words.
What do you think about watching TV like that and what shows do you watch?
Yeah, I would say you want to pay attention to your spirit.
I don't think I could watch something.
I don't think I could watch The Walking Dead.
There's lots of stuff that even lots of believers that I know watch that I can't watch.
So I think you want to really pay attention to content and how it makes you feel because
you know, again, it's about eargate and eyegate.
You want to be careful about what are you looking at?
listening to. So certainly if you feel affected by it, you don't want to watch it. But I mean,
there's lots of stuff I don't watch just because I'm like, wow, that's just making something
sexy that God doesn't say is sexy. If that makes sense, no, that's the wrong way of putting it.
That's glorifying something that God doesn't glorify. And so, but you know.
Here's the thing. Like, I agree with everything you've just said, but the outworking of that is all
deeply personal conviction of the Holy Spirit. Because the shows that you would watch, for example,
I don't know, take designated survivor, right? The key for Southern show that you're currently
watching. You love that, you feel no conviction when watching that.  It's a good, you're loving it. But there could be Christians who'd be like,
I can't watch that because of the violence depicted in it, or I can't watch that for whatever reasons.
Sure. And you can't, you're not expected to live by their convictions. Right.
And equally, I could have friends who might watch The Walking Dead, for example,
and I can't expect them to live by my convictions. So, everything you just said is great.
You want to pay attention to what goes into your eyes and ears,
and you also want to make sure that you've not dumbed your spirit. One of the things that I've noticed
is what I watch often muddies my dreams or my visions.
Yeah, well, that's a lot of why I can't watch stuff like that.
Right. But anyway, I think you let the Holy Spirit guide you through what you're watching.
Yeah. In terms of TV programs that we've watched that we like, I love the West Wing.
The West Wing is awesome. Of course, that's Netflix, like it's older stuff.
Fixer Upper. I love any DIY show. I could live on watching those.
We're currently watching the TV version of Lethal Weapon.
Yep. Yeah, we are. I've been watching something called The Good Doctor,
which is like about a doctor who's on the autistic spectrum kind of thing. It's interesting.
Is he a good doctor? He's a good doctor. He's sweet. He's sweet, but he has no people's skills.
He's just sort of sets up. You have cancer. You're dying. It's a bit, and then everybody runs
around and dries clean up his messes. But anyway, it's amusing. Christmas is coming up.
I haven't even worked out how many weeks till Christmas. But here's the thing.
I'm not ready for Christmas because we have to talk about this.
you can never start your christmas shopping too early and i want to highly recommend
aj's book called finding father it's a twelve week devotional study that you work through each day it's a big book but actually short read.
Because you read a little bit every day and there's activations for you to put in practice every week the whole book has been designed to take you into close relationship with god.
Literally there are five star views tons of them on amazon and apple's i bookstore and it's changed lives all over the world the consistent feedback we get from people who read it earlier.
like, oh my gosh, this book absolutely radically changed my walk with God.
We've got free two day shipping for everybody in the United States.
And if you live further a field, we understand that shipping big books
costs a lot of money. I'm looking at you, Australia.
I'm sorry that it costs more to ship the book than to buy the book,
but we also have versions for your Kindle, for your iPhone,
and a very special edition for those of you who've got iPads and it looks gorgeous.
Head over to allen and aj.com/findingfather for more info.
and they make incredible Christmas gifts,
would encourage you to get your order in.
I think how good it would be to say,
I'm done Christmas shopping,
we can help you get a Head Start.
- Show notes for this week are at alanandaj.com/172,
and we will be back with you next week.
âTMª Faith, life, communication âTMª
âTMª Tacos and video games âTMª
âTMª Pale you donuts and the kindness of God âTMª
But things we deal with every day
From Franklin, Tennessee
They are just like you and me
Allen, and AJ
Keeping up with the Joneses, keeping up with the Joneses
Sharing their life experiences
Keeping up with the Joneses, keeping up with the Joneses
They talk about faith in God and everything under the sun
If you are a human being, there's something here for everyone
(music)
(gentle music)
[ Silence ]


{% set pageTitle = "The service is now closed and will open later" %} {% set mainClasses = "nhsuk-main-wrapper--s" %} {% set version = "v1" %} {% extends "includes/layout.html" %} {% block backLink %}
{% endblock %} {% block content %}We are getting more home test kits and appointments ready.
Do not leave your home if you or someone you live with has symptoms.
Read more about self-isolation if you or someone you live with has symptoms on the NHS website.


Watch Again: Iain Dale interviews: Jo Swinson
by LBCIain Dale interviews the Liberal Democrat leader and candidate Jo Swinson live at 11am and you can watch it here.
With just 24 days to go until the nation goes to the polls to decide who will form the next government, and who will be the next Prime Minister.
On Sunday morning LBC's Iain Dale will be grilling Jo Swinson, the leader of the Lib Dems.
Call Jo on 0345 60 60 973, text on 84850, or tweet @LBC.


Chewsr is an app that helps a user explore the many different type of food places nearby when you get tired of the same, usual, common place. Chewsr has a wide spectrum of places of choose from and all at very close local range. Directions are very simple. First tell the app you general location or the location you want to get food at. Then adjust the range of radius the app will pick up. After that choose the type of food you are craving adn it will randomize your choices within that range you are looking for. If you ever get stuck deciding what to eat there is always the "I'm feeling Adventurous" button, where it will place you at a roulette of any kind of food place nearby. Now go and have fun trying out the many different typees of food your community has to offer.


UK Racer Hamilton Representing Mercedes Team Becomes Formula 1 Champion for 6th Time in His Career
British racing star of the Mercedes team, Lewis Hamilton, became the champion of Formula 1 for the sixth time in his career following the results of the US Grand Prix.
Hamilton, who won the world title for the third year in a row, surpassed the legendary five-time champion, Argentina's Juan Manuel Fangio, and is now behind only to the seven-time champion, Germany's Michael Schumacher.
"Still we rise guys, still we rise. Thank you so much, guys - we did an incredible job... I can't believe it," Hamilton said after finish.
Hamilton finished the US Grand Prix second, behind his teammate Valtteri Bottas of Finland, while Dutch racer Max Verstappen was third.
Hamilton won five out of six world titles (2014, 2015, 2017, 2018 and 2019) with Mercedes in the so-called hybrid era. He won his first championship as a pilot of McLaren back in 2008.


-
private
-
public
-
public
-
public
-
public
-
public
-
public
Edit Collection
privatepublic
New Exhibition
privatepublic
Give access to exhibition


Released January 23, 2020
The Vampire: The Masquerade – New Blood Starter Pack is a print & play PDF bundle that embraces you into the World of Darkness and Vampire: The Masquerade.


In the scene you must have either the SteamVR camera rig or Oculus Avatar rig with a VRInteractor and VRInput script attached to either or both controller objects. It should add all the scripts it needs.
For Tutorial videos please check out the youtube channel here.
The VRInteractor and VRInput scripts need to be attached to either or both controllers in order to pick up anything. You are able to configure exactly what you want each controller button to do from here.
Action Settings:
The name of the Actions (ACTION, PICKUP_DROP) corrospond to the method name in the VRInteractableItem or any script that inherits from a VRInteractbleItem.
The method name will be called on either the held or hover item when the key is pressed and the method name plus Released will be called when that key is released.
public void PICKUP_DROP(VRInteractor hand)
public void PICKUP_DROPReleased(VRInteractor hand)
Weapon Reference:
The weapon reference can be used to attached a weapon to a controller at startup. You can use this in conjunction with setting PICKUP_DROP buttons to none which will lock the weapon to your hand permanently.
For setting up SteamVR 2.0 there are some premade actions in Assets/VRInteraction/SteamVR_Actions, if you copy and paste them to the root folder (That's where the Assembly .csproj files are) then open the Window->SteamVR Input window, you should be able to see them, click Save and generate and they should appear in the VRInput script and should be assigned to bindings already if not then you can assign them in the binding UI page.
If you enable the global toggle on compatable variables in the inspector the item will use the global variable. The can allow you to quickly change how all items behave with one change. The primary reason for this is to allow you to add these settings to your games options menu. As an example if you wanted to add the options for players to change all items to use "Toggle to pickup" in your options menu you would add a line like this:
VRInteractionSettings.instance.settings.toggleToPickup = //Your gui code here VRInteractionSettings.instance.Save();
In the editor the global settings are saved in a text file at "Assets/VRInteraction/Resources/VRInteractionSettings.txt" and also as a player prefs string. This means settings you save before building will be the default settings when a new player installs, then if they change the settings it will be saved to their player prefs so will persist when closing and opening the game.
If you have the FinalIK asset you can create IK Hand poses for when holding. First you'll want to setup your finalIK character. you can check finalIK documentation for that and there should be a rig setup with the pilot model in Assets/VRWeaponInteractor/Integration/FinalIK/Scenes/FinalIKExample.
You can then open the hand poser window from VRWeaponInteractor->FinalIK Hand Poser. With that window open you can reference the VRIK component on the character rig and the VRInteracableItem (VRGunHandler/VRGunSlide/VRAttachment/VRMagazine and most script in VRInteraction inherit from VRInteractableItem.
You can chose which hand you'd like to pose first. Then if there is already a pose that you want to use or just use as a starting off point you can pick it from the Poses list. If this is the first pose that will be empty, you can then name this new pose (all pose names should be unique as the name us used to identify it later). With the name picked you can click "Move Hand To Item" if you chose a pose from the list it will position and pose the hand around the item, you can then change the name if this is a new pose or leave it the same if you want to use the same pose on this new item.
You can press "Reset Hand" at any time for the hand to default back. You can click "Select Hand Object" to select the root bone of the hand in the hiarachy, this is the first bone you'll want to move to start positioning the pose. Once you are happy with that position you can start positioning all the child bones until you are happy with the hand pose. Once that's done you can click "Save Pose" and the new pose will be added as an object under the root of the player rig and the item will have the name and hand offset added. For most items that's it and you should be able to play the scene and see that work.
You can click "Reset Hand" and switch tabs from left to right hand to setup the other hand repeat the steps, usually it not work very well if you try to use a left hand pose with the right hand bones so it's a good idea to keep the naming convention to include which hand the pose if for. Make sure to apply the player rig and item prefabs once you've saved the pose so you don't lose it.
(Something go wrong and it's not mentioned here? Email me at<EMAIL_ADDRESS>and I'll see if I can fix it.)


My team
Fani
Manager
ID: 1234456 Email:
<EMAIL_ADDRESS>Office Number: 15
Jim
Intern
ID: 3456789 Email:
<EMAIL_ADDRESS>School Name: Some School
Mary
Engineer
ID: 4512378 Email:
<EMAIL_ADDRESS>Github:
fanidt


{% extends "base.html" %} {% block "title" %}
Withdrawal successfully initiated! Send Stellar transaction now.


by Peter Cosemans
HTML5/CSS3 - JQuery - JavaScript
HTTP / REST
Workflow (npm, bower & gulp)
Styling - bootstrap, less/sass
Agile