--- layout: default title: Swallow Js Documentation || Beta v0.29 permalink: /doc/routes ---
Swallow route allows you to create "single page" applications using Hashbangs and HTML5 pushState, purely javascript.
// You can use any methods as actions. You can define them as I do below,
// assign them to variables, or use anonymous functions. The choice is yours.
function notFound() {
renderView('404', swallowJsContainer);
}
function notFound() {
$("#output .content").html("404 Not Found");
}
Below we define our routes. You'll notice that we only define three routes, even though there are four links. Each route has an action assigned to it (via the `to` method, as well as an `enter` method. The `enter` method is called before the route is performed, which allows you to do any setup you need (changes classes, performing AJAX calls, adding animations, etc.
Path.map("/users").to(function () {
renderView('layout_user', swallowJsContainer);
}).enter(this_function_is_called);
Path.map("/about").to(function () {
renderView('layout_about', swallowJsContainer);
}).enter(this_function_is_called);
Path.map("/contact").to(function () {
renderView('layout_contact', swallowJsContainer);
}).enter(this_function_is_called);
function this_function_is_called() {
// You can put some code in here to do fancy DOM transitions, such as fade-out or slide-in.
}
This route will match things such as "#/users/1", "#/users/500", and "#/users/mike"
. Inside the action of that route, you have access to the parameters via the `this.params`
object.
Path.map("#/users/:user_id").to(function(){
var user_id = this.params["user_id"];
logMessage(user_id);
});
This is a route with optional components. Optional components in a route are contained within brackets. The route below will match both "#/about" and "#/about/olatunde"
.
Path.map("#/about(/author)").to(function(){
logMessage(About & About/Author share a route!);
});


JavaScript Basics: Objects, Collections, Functions and Quotes
And about all those brackets []
, braces {}
and parentheses
()
by: Peter Torr Smith
22nd September, 2018
Tags/Categories
Explain to a non-tech friend
In the JavaScript language, describe all the use cases for each of ()
, []
,
{}
, '
&"
:
I’m actually going to go over these in the following order, roughly:
- Ok, what's an Object?
- brackets
[]
- for collections of things - braces
{}
- defines an “object” (thing) - parentheses
()
- contains input values to pass into a function
and as an <aside> ... </aside>
,
- single quotes
'text'
and double quotes"more text"
- Well, it sorta doesn’t matter, but it does :-)
But first, what is an object?
In programming, an “object” is a piece of code that holds and makes available sets of information and answers about a single thing (real-world or conceptual). An object can also contain “functions” (code algorithms) that can be called as “methods” from other pieces of code in an application to then perform some other code actions on some given and / or internal data.
An object could be a car with a make: , model: , VIN: , colour: property and value. It could
have a collection of “tyres: ”, which may have 5 “tyre” objects in it, that each have their
own model: , size:, and other relevant properties.
It could also have a method we could call to start the car if we have the keys that would
invoke a function in our object’s code (e.g. myCar.start(myKeyAuthorisation))
The JavaScript language works a lot with “objects” and collections of things. Different parts of our application code will create, load, and interact with our collections of objects, perhaps only a single object (e.g. myCar) or many at once (myCars, or myCarWishlist).
In JavaScript, everything is an object, including simple things like the number 5, or the string of text “Sprint 6 blog”, but also a simple or complex collection, list, or “array”, of values (or other objects), and as we’ll see below, a function is also an object :-)
We create, or declare (and optionally directly populate) objects with the instruction var
Simple, or “primitive” type variables like myName, or myDriverPoints only have simple constructs:
var myName = ‘Peter’;
var myDriverPoints = 4567.5;
var isCurrentMember = true;
OK, now for the Square Brackets [ ... ]
Lists or collections, called Arrays, are created with square brackets []
;
Var myPreferredColours = [‘Blue’, ‘Green’, ‘Orange’];
// Or alternatively
varMyTrips = []; // creates an empty array
And now about the curly braces { ... }
Objects are created with curly braces {}
, and will have a list of 0 or more
properties and
their values (known as a name:value pair)
Var myCar = {
licencePlateNumber: “123ABC789”,
colourName: “Dark Night’s Blue”,
tyres: [
{ tyreId: 0, type: ‘pneumatic’ },
{ tyreId: 1, type: ‘pneumatic’ },
{ etc }...
],
startEngine: function (myKeyAuthorisation) {
if (myKeyAuthorisation.isValid() {
this.start();
}
}
};
You’ll notice that the last “property” called startEngine
is defined as a
method (function) that can
be called, and provided a KeyAuthorisation token/id. The function then decides what to do
and what results to return, in this case determining if the car should start, taking
appropriate action.
See the page header screenshote for an example in our minesweeper application:
And now, about those Parentheses ( ... )
Functions can optionally take in one or more input values, or “parameters”. So when defining and calling a function, the parentheses are used after the function name to hold these values.
So I can now address any of those properties elsewhere in this code, and the properties and collections of other objects.
alert(“Plate Number “ + myCar.licencePlateNumber
+ “, Engine Status: “
+ myCar.startEngine(myKeyAuthorisation))
And here in our minesweeper app:


This group was founded on 22-02-2014 by Alfred Pellegrino.
After playing Battlefield 3 solo for a few months in 2010 I joined The Hardcore Clan. Several months later i noticed that this clan was dead, although me and two other players played a lot. We met a good friend at that clan and still am in contact with him, Scare-NL.
I left the clan and ended up with the Brothers of Benelux. This was a fun clan but when BE-Scorpion aka SeriallKillers aka Gen-Scorpion ( this dude changes his nickname every other day...lol ) left, the group fell apart. I switched to the Benelux Fighters Clan which BE-Scorpion aka SeriallKillers aka Gen-Scorpion
had founded. After a while, the name of this clan changed to Dogs Of War. Then after some thinking we decided that it was time to go official and we founded an official community. In January 2014, BE-Scorpion aka Dimitry VDB aka SeriallKillers aka Gen-Scorpion the community ( whilst still being a board-member) after a
disagreement with me. Because BE-Scorpion aka SeriallKillers aka Gen-Scorpion left and took most of our group, Dogs Of War was left bleeding to death. We, as in Dion and I, then decided to leave the community as board-members as well. This decision was taken after there was no longer any contact with the last
board-member. I joined the NextRevolution for a little while but didn't quite feel at ease there so I left. After being rejected by the Addict-Clan I decided that it was time to try to do it on my own.
Don't know where this is gonna end up but sometimes you just have to start something.
We have a Teamspeak-server and two game-servers. Our teamspeak link can be found in the left menu. You can find our platoon of Battlefield 3 and Battlefield 4 by clicking these links.
What is our goal?
Our goal is to game together in an kind and fun way. With our TeamSpeak we can communicate and discuss tactics, but the TeamSpeak is also for interacting with our other members.


Timeoutsedit
Configuring requests timeouts can be done by providing an instance of
RequestConfigCallback
while building the RestClient
through its builder.
The interface has one method that receives an instance of
org.apache.http.client.config.RequestConfig.Builder
as an argument and has the same return type. The request config builder can
be modified and then returned. In the following example we increase the
connect timeout (defaults to 1 second) and the socket timeout (defaults to 30
seconds).
RestClientBuilder builder = RestClient.builder( new HttpHost("localhost", 9200)) .setRequestConfigCallback( new RestClientBuilder.RequestConfigCallback() { @Override public RequestConfig.Builder customizeRequestConfig( RequestConfig.Builder requestConfigBuilder) { return requestConfigBuilder .setConnectTimeout(5000) .setSocketTimeout(60000); } });


ESP8266 is very highly integrated SOC which includes Xtensa LX106 core processor, RAM, RF front end and allow WIFI TCP-IP stack to be implemented on board with just few components beside ESP8266. It's very new but promising IC and it attracted lot of attantion and community with it's launch.


Full Furnished Lavish Bungalow
Price : ₹ 20,00,000
Location: Camp, Pune
HMDA approved lands sale at medchel price 12k per sqd gated community 24x7 security all 33 black top roads clear title best developments bank loan available spot registration
Contact : +91-9111556677
Row house
Price : ₹ 30,00,000
Location: Rasta-peth, Pune
HMDA approved lands sale at medchel price 12k per sqd gated community 24x7 security all 33 black top roads clear title best developments bank loan available spot registration
Contact : +91-9111556666


Rashid Sumaila shines as Al Qadsiya thrash Al Yarmouk in the Kuwaiti Federation Cup
Ghana defender Rashid Sumaila starred for Al Qadsiya as they thumped Al Yarmouk in the Kuwaiti Federation Cup on Friday night.
Sumaila lasted the entire duration as the Yellow Castles whitewashed Yarmouk 6-1 at their own backyard.
Al Yarmouk opened the scoring just six minutes into the game but Al Qadsiya equalized and took the lead before the break.
Al Qadsiya were rampant in the second half, netting four goals in 20 minutes.
The Kings have now qualified for the next stage where they will face Al Nasr.


Open Cabinet: Tracking the Work of Cabinet
Search
Alerts
- Sign up to our mailing list to receive email notifications
- ICON
About
- Open Orders originally came out of CivicTech Toronto. The project is an attempt to increase transparency in government. Contact us here
Glossary
- Orders-in-council, also known as governor-in-council decisions, are cabinet decisions that can be made without having to go to Parliament. They can cover anything from minor appointments, regulatory changes and housekeeping items to major decisions such as authorizing the signing of a treaty, weapons sales and questions of national defence or national security.
- Under the Statutory Instruments Act, a government can choose not to publish an order-in-council if its “publication could reasonably be expected to be injurious” to federal-provincial affairs, the conduct of international affairs, “the defence of Canada or any state allied or associated with Canada” or the “detection, prevention or suppression of subversive or hostile activities.”


[Erowid Warning: Breathing high levels of CO2 can cause respiratory or circulatory failure and death.]
I came across the idea to try CO2 from a brief mention by Aldous Huxley in his book 'Doors of Perception / Heaven and Hell'.
While Huxley used a breathing mask and a 30% CO2 / 70% Oxygen mix, I had to fall back C02 whippits in a balloon, using a whipped cream dispenser.
When you hold your breath, carbon dioxide builds up in the lungs. The body does not detect lack of oxygen as such, buy rather the build up of CO2 to tell you that you urgently need to breath. With a high enough level of CO2 in the lungs, the body starts shutting down parts of the brain as an emergency form of protection against lack of of oxygen. It is this shutting down that causes the psychedelic effects, which seems consistant with Huxley's theories on the brain being a filter and the historical use of underground CO2 vents for divination.
My first attempt was a single CO2 whippet in a balloon. As soon as I took my first sip of a breath, I suddenly felt I could not breath in any more (as if my lungs where already full). I breathed fully out and consciously forced myself to breath in on the balloon. It has an acidic taste, comparable to getting bubbles from a fizzy drink up your nose. The body's first reaction is to panic, to breath out and then gasp for air.
To make it easier on the lungs and the body, I took another balloon and filled it 50/50 with CO2 and nitrous oxide (as a mixer). This was easier to breath in and hold. The body still tries to panic though, and possibly hyper-ventilate. With the right frame of mind and mental focus it is possible to mostly calm the body. The most difficult thing about doing CO2 is simply keeping the stuff in my lungs for long enough.
When doing a nitrous oxide balloon for 2-3 minutes, I tend to fade off into a dream/vision world, which builds up from the darkness of my closed eyes but is always colorless.
With CO2, within 10-20 seconds I start to fade off not into darkness but into amazing colors and patterns (on a background of intense white light). I could visualize symbols and objects ahead of me, a skull, a goddess in lotus position and even the scene from the Matrix where they load the construct program and the camera flies towards two people in an empty white room.
For others I have introduced CO2 to, it can take quite alot of effort and willpower to hold in the CO2 in for 10-20+ seconds and most do not get that far. The effects of CO2 below that required for a visionary state are comparable to a quick sharp adrenaline rush, caused by the body suddenly going into panic mode.
[Note: In theory CO2 should be safe as there is no actual oxygen starvation to the brain, and CO2 does not interact chemically with the brain, but I don't know if in the panic to shut the brain down if there is any damage or potential caused. From my own limited and recent CO2 experiments, I have not noticed any long-term negative side effects]
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Sep 23, 2015 Meeting note
Importants
Next meeting : Sep 29 (Tue), 1:00 pm
Notes
- Visualization should be changed so that we can see the line clearer.
- Smoothness issue
- leverage local laplacian, i.e. describe a pixel crossing with two neighbors.
- find out what we want, i.e. the optimization function.
- We can
- use network results as initial value (i.e. using network to do the feature pattern->crossing value mapping, because it’s hard to formulate as a numerical optimization.)
- and do a post-optimization for smoothness (this one is easier to do optimization.)
- Also, we can try to incorporate this process into the network, as a new layer.
- The current result can be consider as first-order prediction, we can try to make the loss (objective) function complicated and try to predict some other things.
- For interactive usage, if post-optimization (globally) is needed, we can only do it once a while, but not after every update.
Action Items
- generate double feature set -> for reflective symmetries
- Run experiment -> use triangle and rect to reconstruct arrow.
- drafting the introduction, including notation and target optimization function.
- experiment with the two step optimization including laplacian
- integrate caffe model into c++
- Implement the new representation and compare..


| Department: | Programming |
| Hire date: | 06/23/2013 |
| Date of Birth | 01/24/1988 |
| Gender | Male |
| Home Address | Metro Manila,Philippines |
|<EMAIL_ADDRESS>| Phone Number | 123-4567-890(Landline) 555-4567-890(Mobile) |
| Department: | Programming |
| Hire date: | 06/23/2013 |
| Date of Birth | 01/24/1988 |
| Gender | Male |
| Home Address | Metro Manila,Philippines |
|<EMAIL_ADDRESS>| Phone Number | 123-4567-890(Landline) 555-4567-890(Mobile) |
| Department: | Programming |
| Hire date: | 06/23/2013 |
| Date of Birth | 01/24/1988 |
| Gender | Male |
| Home Address | Metro Manila,Philippines |
|<EMAIL_ADDRESS>| Phone Number | 123-4567-890(Landline) 555-4567-890(Mobile) |


All of life's moments in one place.
My Diary helps you curate life moments so that you'd never forget about those times that are memorable.
Features
Secured
My diary is designed with your privacy in mind and that your memories remains private to you alone.
Modern UI/UX
Because we care, the app employs the use of the latest cutting-edge technology in crafting the rich user interface and overall experience. A ploy to keep you focused on your story.
Get Notifications
Get daily notifications so you never again miss an oppotunity to write today in history.


{% extends "base.html" %} {% block title %}About{% endblock %} {% block content %}
The FaiRDy platform was originally envisioned and developed by Veronica Estrada Galiñanes and coded in the Wolfram Language.
FaiRDy-Py and fairdy.ux.uis.no were created by Adam Becker and Lars Kartevoll in Spring 2020 for their exit project in the Bachelor of Computer Science program at the University of Stavanger, Norway. The goal of FaiRDy-Py was to create a Python version of FaiRDy with an accompanying web platform. The creator of FaiRDy, Veronica Estrada Galiñanes, advised us on our work to implement the framework in Python.
Our project is open source, you can download and customize our code on github.com/nextgen-codes/fairdy-py


/* <CoffeeScript>
</CoffeeScript> */
/**
* @class analize
*
*
* # Lumenize Core #
*
* Lumenize Core is a set of classes and functions that have no dependencies. It can stand alone or act as the base
* functionality for other packages including tzTime, and Lumenize proper.
*
* Simple group-by, 2D pivot-table and even multi-dimensional aggregations (OLAP cube) are provided by:
* * OLAPCube - Generic OLAP Cube with support for hierarchical roll-ups
*
* Mathematical and statistical functions provided by:
* * functions - count, sum, standardDeviation, percentile coverage, min, max, etc.
* * distributions - Taylor approximations for F, T, and Normal distributions including some inverse and inverse-upper forms
* * histogram - create a histogram of scatter data
* * RandomPicker - supply a non-parametric distribution and it will randomly pick according to that. Great for
* non-parametric Monte Carlo simulation
*
* Three transformation functions are provided:
* * arrayOfMaps_To_CSVStyleArray - Used to transform from record to table format
* * csvStyleArray_To_ArrayOfMaps - Used to transform from table to record format
* * arrayOfMaps_To_HighChartsSeries - Used to transform from record format to the format expected by the HighCharts charting library
*
* And last, additional functionality is provided by:
* * utils - utility methods used by the rest of Lumenize (type, clone, array/object functions, etc.)
* * table - output Array of Maps style data as a text table
*
*/
/* <CoffeeScript>
#exports.utils = tzTime.utils
datatransform = require('./src/dataTransform')
exports.arrayOfMaps_To_CSVStyleArray = datatransform.arrayOfMaps_To_CSVStyleArray
exports.csvStyleArray_To_ArrayOfMaps = datatransform.csvStyleArray_To_ArrayOfMaps
exports.arrayOfMaps_To_HighChartsSeries = datatransform.arrayOfMaps_To_HighChartsSeries
exports.csvString_To_CSVStyleArray = datatransform.csvString_To_CSVStyleArray
exports.csvStyleArray_To_CSVString = datatransform.csvStyleArray_To_CSVString
exports.functions = require('./src/functions').functions
exports.histogram = require('./src/histogram').histogram
exports.multiRegression = require('./src/multiRegression').multiRegression
exports.table = require('./src/table').table
exports.OLAPCube = require('./src/OLAPCube').OLAPCube
exports.anova = require('./src/anova').anova
correlate = require('./src/correlate')
exports.correlate = correlate.correlate
exports.correlationTable = correlate.correlationTable
exports.distributions = require('./src/distributions').distributions
exports.BayesianClassifier = require('./src/Classifier').BayesianClassifier
exports.Classifier = require('./src/Classifier').Classifier
exports.RandomPicker = require('./src/RandomPicker').RandomPicker
exports.utils = require('./src/utils')
exports.top = require('./src/top').top
</CoffeeScript> */


Damian Lillard: ‘Hopefully We Can Be Part of a Great Bounceback for Melo’
by Marcel MutoniDamian Lillard believes new Trail Blazers teammate Carmelo Anthony can provide crucial help.
Lillard, who says he’s unconcerned about Portland’s early-season struggles, hopes to be “part of a great bounceback for Melo.”
Anthony, 35, inked a a non-guaranteed deal after being out of the NBA for over a year.
Per The Athletic:
But signing the 35-year-old forward is a risk the Blazers have to take after losing six of the last seven games while being exposed at power forward. The signing of the 16-year veteran is a clear indication that Blazers management felt it couldn’t wait until Dec. 15 to pursue the expanded trade market, and that the deficit left by the injury to Zach Collins was too great to let go unattended.
That’s why team star Damian Lillard says signing the 35-year-old is “worth a shot.”
“We added a good player,” Lillard said in a text. “Another scoring threat, experience, rebounder.”
Related ‘Two Thousand Percent’: Carmelo Anthony Still Wants to Play in the NBA


04/05/14 Don't be resentful
Usually, if I feel that something is not feeling right, that somebody might have gotten something wrong I did or said or that I am upset of an action of somebody else, I am asking the person to meet as soon as possible and ask him or her if what I sensed is true. If yes, I am talking about it with him or her. Being in a calm environment when discussing always helps. I try not to confront nor to accuse my counterpart but to start a good and reasonable discussion. In my opinion, the best way to solve an emotional conflict is to talk in person. I want to understand the other person's thoughts, the intention when he or she did something that troubled me. And I do the same, I share my thoughts and feelings with that person. The solution should be found by collaboration and compromises made by both sides.
That should always be possible, you only need to be open. Depending on the conflict's topic, I am sometimes the person who makes more and sometimes the person who does less compromises. But there's a "middle" where we can meet and both parties feel good with. I am not saying finding and doing compromises is easy nor is reaching an agreement. It can take some time but luckily until now, at some point I was able to solve emotional conflicts and to find a solution that satisified both parties.
What really helps me is the fact that I am not resentful. After we settle a conflict, it is and will be settled for me. I have the great talent to forget about what we quarreled about because we settled it and it is not longer important/ existing. That might sounds odd and maybe also like I don't care much, but it's the opposite. I love harmony and I don't want to stay in the state of a conflict and having the feeling that something is/ might be wrong. That's why I address it as soon as I can, i.e. after I reflected and know what I actually want to address in the discussion. And after we solved that issue, we are friends, family, co-workers or whatever again. Back to zero. If that person would ask me if I remember what the conflict was about a couple of months later, it would take me some time to remember. Not because I don't care, but because I move on and it doesn't matter what it was.
The relationship to that person might have changed since the last conflict, but in a way that should be acceptable and good for both sides. Therefore we can continue together but at the same time, we started over the moment we solved the issue because we don't bring old conflicts with us.


This is an example OpenID Connect client application for IAM hosted at:
The authorization request will include the following scopes:
You're now logged in as: {{home.user}}
The authorization request included the following scopes:
This application has received the following information:
{{home.access_token_jwt}}
{{home.access_token | prettyJSON }}
{{home.introspect_result | prettyJSON}}
{{home.id_token_jwt}}
{{home.id_token | prettyJSON }}
{{home.user_info | prettyJSON }}
{{home.refresh_token}}


Initial concurrency level for delivery to the same destination
initial_destination_concurrency
This parameter specifies the initial per-destination concurrency level for
parallel delivery to the same destination. This limit applies to delivery via
SMTP, via the local delivery agent and via the pipe mailer.
With concurrency of 1, one bad message is enough to block all mail
to a site. A concurrency of 2 seems a reasonable choice.


About
We are a small group of Communists with the aim to compile a large amount of content with potential to be lost or which is publicly available only behind certain barriers. Our foci encompass in Value-Form Theory, Communization, Maoism, and Radical Ecology.


Client side simple data grid example.
To set client side operations in datagrid, add columns and dataSource in grid defination.
dataSource is typeof BehaviorSubject<DataSource>.
Retrive all data and pass those data to dataSource with "next()" method.
DataSource class has below properties:
- data (Array of all data, total will be calculated from length of data for client side)
- total (Only required in server side operations, for client side pass 0)
- summary (Pass summary data object if showSummary is set to true)
- isAllPages (This will be used for server side export to CSV functionality, default value is false)


The following error occurred while trying to connect to Overcast. Try again and, if the error persists, please report the issue to the SmartFoxServer team.
This node is already running the latest SmartFoxServer version.
Installed server version:
Available server version: CRITICAL
NOTE: the update will be installed immediately upon confirmation and a server restart will be triggered at then of the process, closing the current session as well.


| Path: | vendor/plugins/less_js_routes/README |
| Last Update: | Thu May 15 13:22:25 -0700 2008 |
LessJsRoutes
Have you ever wanted to use named routes in your JavaScript? So have I. Now you can.
LessJsRoutes will generate a javascript file with functions that give you the path to the route and functions that will call these routes using ajax (uses jQuery or Prototype).
Installation
RAKE TASK: rake less:js:routes will create public/javascripts/less_routes.js AND/OR ENVIRONMENT: add Less::JsRoutes.generate! to your environment file. This will auto generate less_routes.js every time your rails app is started.
Usage
In your routes file:
map.resources :users do |user| user.resources :profiles end
In your layout:
<%= javascript_include_tag :defaults, 'less_routes' %>
In your applicaiton.js (or any script block):
users_path() => '/users/' users_ajax() => GET '/users/' user_path(1) => '/users/1/' user_ajax(1) => GET '/user/1' user_profile_path(1,5) => '/users/1/profiles/5/' user_profile_ajax(1,5) => GET '/users/1/profiles/5/' user_ajax('post', {name: 'fonzie', password: 'cool', password_confirmation: 'cool'}) => POST '/users/' change_password_user_ajax('put', {password: 'cool', new_password: '2cool', password_confirmation: '2cool'}) => PUT '/users/' _path functions return the path and take the proper variables, :id, :nested_id, :format, etc. _ajax functions return the server response of the ajax call. The parameters are (1) the proper variable, :id, :nested_id, :format, :etc, (2) the http verb (get, post, put, delete) (get is default), an object of parameters, an object of any jQuery.ajax options that should be added to the ajax call.
Notes
Brought to you with love, from Less Everything (lesseverything.com)
Copyright (c) 2007 Less Everything, Inc., released under the MIT license


Buy a License
FileBot may be downloaded and evaluated for free, however a license must be purchased for continued use. Licenses are per-user, rather than per-machine, so you can enjoy FileBot on as many computers and operating systems as you wish with your license.
Purchase 1 year universal license
US$6.00
Purchase life-time universal license
US$60.00
- Please type your email address correctly when purchasing a license.
- Please download and evaluate FileBot before purchasing a license.
- Please read the refund policy carefully before purchasing a life-time license.
- A single per-user license is valid on all platforms and can be used on multiple machines.
- Microsoft Store and Mac App Store purchases neither include nor require a universal license.
Please read How do I activate my license? for details on license activation.


Moving Drop Box items to
another folder
To copy item(s) from one Drop Box folder to another, follow these steps:
- In the menubar of the relevant course or project site, click
Drop Box
.
- Click the black triangles to the left of "Title" to expand all the
folders in the Drop Box. Or, click the folder icon to the left of the
name of the folder you want to expand. (If a folder contains any items
not currently being displayed there will be a plus sign on the folder
icon.)
- Mark the checkbox next to the item you want to move. Click
Copy Checked
. The copied item(s) will become highlighted.
- Click
Paste Copied Items
next to the folder in which you
want to paste the item(s).
- If you wish to delete the original item, mark the checkbox next to
the item in its original location and click
Remove Checked
.


Event Location:
Jurys Inn Exeter
Western Way, Exeter
Exeter, England, United Kingdom
Abstract:
Every good DBA should have a DBA database. A place to store information about all of their instances and databases. They should automatically gather information into that database. They are also often required to query that information to answer questions from other technical teams, Project Managers, Client Account managers, Compliance Teams, Auditors, Directors In this session I will talk about the way that I automate the gathering of this information and also how I use Power BI to be able to allow people to self serve answers to their own questions and remove some load from the DBA team. I am no BI expert so this session is aimed at DBAs who want to be able to show information using the latest tools rather than BI professionals
Speaker(s): Rob Sewell,
Abstract:
SSMS is the love child of what was Query Analyzer and Enterprise Manager and has ever since been used as the dev tool of choice for people creating and modifying database schemas and code. Whilst SSMS is a really good management tool it is not suited to modern development. Instead Microsoft has created SSDT (SQL Server Data Tools) which has had a lot of attention from Microsoft in the last few years which means that it is now ready for us to use full time. We will cover: * How to get your databases into SSDT and critically how to get them to compile correctly. * A tour of the SSDT features that show how T-SQL development is actually easier and how SSDT makes you more productive * The build deployment process so you can start concentrating on writing useful code instead of upgrade and release scripts. If you write, debug or modify SQL Server database code and haven't yet started using SSDT full time then this session will help you get started and be productive quickly.
Speaker(s): Ed Elliott,
Abstract:
The most coveted features of SQL Server are made available in Enterprise Edition and are sometimes released into Standard Edition a few years later. This often leaves a vast group of users who "window shop" the latest and greatest features and return to the office wishing they never saw those features presented. This session will show you how you can achieve the same, or at least a similar, outcome to some of those features without having to fork out for Enterprise Edition licenses or breaking any license agreements. You will leave the session with a set of solution concepts covering Partitioning, Data Compression and High Availability that you can build upon or extend and maybe save you and your company a nice pile of cash.
Speaker(s): William Durkin,
Abstract:
Do you want to be able to query huge amounts of data at cloud scale on a distributed infrastructure that is capable of scaling with your needs? Do you want to use a language that is both familiar and powerful to extract valuable insights from your data? If the answer to both of these questions is "yes" then Data Lake is definitely something you should be looking at. In this session we will look at the Data Lake analytics service, a service capable of handling queries against data of any size instantly simply by requesting more compute for each query. U-SQL is a query language that blends the declarative nature of SQL with the expressive power of C#. Visualisations of your U-SQL jobs let you see how your code runs at scale. Come to this session to see why people are talking about this new offering from Microsoft and see some of the problems it solves
Speaker(s): Allan Mitchell,
Abstract:
The quickest way to migrate your on-premises OLTP database to Azure is to simply "Lift Shift". You create a vm in Azure and size it to match your local system and move your database into it. This might not be the most cost effective way though and also, you still have to do all the database maintenance yourself. In this session we will investigate how we could use more of the cloud features like SQL Database, Redis Cache, Search, etc. in order to truly scale our system. And we'll see if this increases or lowers the total cost of ownership. This excercise is about an OLTP system but we will also look at how it affects loading our DWH from this new setup.
Speaker(s): André Kamman,
Abstract:
SQL Sever 2016 is just around the corner and with it come some great new features and enhancements to existing capabilities, in this session we will look at some of these and understand how they might make us change the way that we look at designing and implementing SQL Server solutions. We will focus on the SQL Server engine, covering topics including Operational Analytics, Temporal amp; Stretch Tables and Always Encrypted. And we will be having a look at some of the old favourites, including enhancements to In-Memory OLTP (Hekaton) AlwaysOn Availability Groups. In part 1 we will look at the new DBA features which include: * Setup and behaviour Changes * HA/DR (Availability Groups, Backup/Restore) * Stretch DB * Temporal Tables
Speaker(s): John Martin,
Abstract:
If you have worked with SQL Server Integration Services (SSIS) 2012 or above for few years then you already familiar with SSIS Catalog reports. SSISDB Catalog reports - help us to monitor projects, which you've deployed to the server. By using these reports, we can quickly find information related to executions, logging and other interesting things with few mouse clicks. However, have you ever wondered how to design an SSIS Project so we can take maximum benefit of SSISDB Catalog? How to troubleshoot SSIS Project executions from the Catalog? How to navigate your way around the built-in catalog reports? How to design a dashboard with SSIDB Catalog data? This session will focus on these scenarios by diving into SSISDB catalog views using PowerBI.
Speaker(s): Prathy Kamasani,
Abstract:
Errors can occur anywhere within an SSIS package and the cause and error message can be somewhat cryptic. This session focuses on identifying error causes and handling them dynamically and proactively. The means of dealing with errors is defined by where the error occurs and we will cover error handling in control flow, data flow, and script tasks in great detail. You will learn: •To identify the different error handling methods in control flow, data flow, and script tasks •Be able to utilize event handlers to proactively handle errors •Be able to redirect data error and proactively handle data flow errors •Be able to identify error descriptions and log error details
Speaker(s): David Dye,
Abstract:
You are a secret agent with Licence To Kill, posing as a developer in Exeter. This is your briefing (For Your Eyes Only) on how to turn business logic into database objects. Learn about SQL Server's data security mechanisms (including SQL Server 2016), implement multi-tiered data access with business rules and roles, make your app/database immune to infrastructure changes (like scaling from single server into clustered or to the cloud) and M's moods in the future, avoid SQL injection and other security and app coding bugs using stored procedures and database server side logic. Session suited for Developers and Students (Johnny English level). Disclaimer: No actual state secrets will be revealed. Please do not send agents to my house again.
Speaker(s): André Melancia,
Abstract:
SQL Sever 2016 is just around the corner and with it come some great new features and enhancements to existing capabilities, in this session we will look at some of these and understand how they might make us change the way that we look at designing and implementing SQL Server solutions. We will focus on the SQL Server engine, covering topics including Operational Analytics, Temporal amp; Stretch Tables and Always Encrypted. And we will be having a look at some of the old favourites, including enhancements to In-Memory OLTP (Hekaton) AlwaysOn Availability Groups. In part 2 we will focus on dev features: * New Security Features (AlwaysEncrypted, Row Level Security Dynamic Data Masking) * In -Memory OLTP (Hekaton) * Query Data Store setup and overview
Speaker(s): John Martin,
Abstract:
Learn about Microsoft’s SQL Data Warehouse Fast Track solutions. Microsoft’s Data Warehouse Fast Track program offers: #183; Faster deployment and tamed complexity with pre-configured, partner-led solutions #183; Flexibility and choice of the latest generation of hardware from top vendors in the industry #183; Out-of-the-box offerings with reduced risk and greater confidence With support for SQL Server 2005 ending in April 2016, now is the time to upgrade to SQL Server 2014. With Flash architectures now being considered mainstream, now is also an opportunity to optimise your data platform infrastructure. This presentation discusses the process undertaken to achieve a certification, whilst focusing on a cost effective (single socket), scalable 7 TB SMP Data Warehouse solution (Lenovo x360M5 and SanDisk SSD) which achieves an efficient out-of-box balance between SQL Server data processing capability and hardware resources.
Speaker(s): Niall MacLeod,
Abstract:
At the heart of SQL Server is the cost based optimizer. Stop and think about that a minute, it attempts to give the “best plan” based on the cost of the work undertaken. How does it know the cost of the work before its done the work ? This isn’t a conundrum, it doesn’t. It estimates! How does it estimate ? That is statistics. This will be a deep dive into how the optimizer makes its decisions to give you a plan, the things that can go wrong and how you can have influence over these choices.
Speaker(s): Dave Ballantyne,
Abstract:
The system database TempDB has often been called a dumping ground, even the public toilet of SQL Server.  In this session you will learn to find those criminal activities that are going on deep in the depths of SQL Server that are causing performance issues, not just for one session, but that affects everybody on that instance.
Speaker(s): Lord Richard Douglas,
Abstract:
Lightning talks to include: Alex Yates - Post-its on the wall Andrew Pruski - Introduction to partitioning Ben Watt - Three Ingredients. Only three pieces of data to produce 60+ visualisations. Gavin Campbell - Unit testing with tsqlt and Visual Studio
Speaker(s): Annette Allen,
Abstract:
Office 365 plays a key role in the Microsoft Cloud offering. It combines many different capabilities that have historically been separated into different products. The convergence of the products on one platform is opening up new possibilities for delivering new and exciting ways of collaborating. This session will explain some of the ways that Office 365 is being used and demonstrate some of the capabilities that convince millions of companies to invest in Office 365 to replace existing products with a single unified environment making the most of the familiar business critical tools from Microsoft.
Speaker(s): Al Eardley,
Abstract:
In this session, we will focus in on how we can use temporal tables, along with a Stretch table, to provide an alternative solution to Type 2 Dimensions and archiving data with SQL Server 2016 and Azure DB. We will cover an overview of each technology, feature setup/install, compatibility with other SQL Server 2016 features, wait types and how to monitor these two important features.
Speaker(s): Mike Boswell,
Abstract:
Any data, anywhere and at any time. A discussion on the latest roadmap and features from SQL server 2016 BI though to cloud capabilities with PowerBI. Understand how to leverage and create an integrated hybrid BI experience across your enterprise.
Speaker(s): Andrew Fryer,
Abstract:
Do you find SQL deployments risky and painful? Do you struggle to keep track of changes across multiple environments? Do you need to find a balance between automation and human intervention? If the business wants you to deploy more frequently but your SQL deployments are a bottleneck, this session may provide you with some answers. At last year’s SQL Saturday Alex showed you how to set up a working automated build and test process. This year he will take a you one step further by adding release management to that set-up.
Speaker(s): Alex Yates,
Abstract:
We will cover the basics of PowerShell DSC with the differing deployment modes - what it is and why it matters for your future infrastructure deployments and why this is one of the technologies to work with in future.This will then give the audience opportunity to begin to understand how this can be used with SQL Server which we will cover in Part 2. We will also cover in this session why Source control is a crucial feature to use alongside PowerShell DSC also the OSS movement by Microsoft for the Server Configurations.
Speaker(s): Ryan Yates,
Abstract:
"It is much easier to trick someone into giving a password for a system than to spend the effort to crack into the system." This is a common line of thought in today's world of increased cyber-security dangers. In this interactive session we'll take a look at how social engineering works, the psychology behind it and why is it still the most effective way to gain access to your company's secrets. The best attacks happen when people don't even realize they are being attacked and in this session we're going to try to fix that and educate you on how to realize when someone is trying to hack you.
Speaker(s): Mladen Prajdić,
Abstract:
What are these DATA Scientists upto? How can we see their statistical model in our day to day familiar tool like Microsoft SQL Server? You now have answers to these questions and thanks to Microsoft for integrating R Revolution within new SQL Server 2016. We all now have the opportunity to use R packages and see the outcome within SQL 2016 itself. In this session, you will definitely take away a breakthrough concept of Advanced R Analytics within SQL 2016 and get ready to kick your creative horse, and go beyond your imagination on how you can build advanced analytics and impress your employers/customers.
Speaker(s): Dr. Subramani Paramasivam,
Abstract:
In this session we will look at the dedicated SQL specifics that we will be looking to apply using PowerShell DSC and in this session we will have standup a SQL Server using DSC and with an existing SQL Server we will cover with a live demo the changing of some SQL Settings in the Configuration and how this makes life easier for Management of SQL Servers at scale - No more need for manually changing Service Account passwords on mulitple SQL Servers when we can apply it via a configuration to many servers at once.
Speaker(s): Ryan Yates,
Abstract:
Introduction to Panorama Necto 14: Suggestive, Collaborative Visual BI Platform. Panorama believe the next big business idea will arise, by cultivating the collective brain-power of your team with the leading BI 3.0 system. That is why Panorama developed Necto - Suggestive Visual Insight Discovery Solution. Necto provides your users within one unique platform all the tools to focus, collaborate, decide and act.
Speaker(s): Santiago Castro,
Abstract:
Session Details not available
Speaker(s): n/a n/a,
Abstract:
Those maths lessons in school were long ago, and now the new hotness requires lots of statistics. It's enough to make a person think about changing careers. Tackle this worry by coming along to this session where I make statistics simple(-ish)!
Speaker(s): Stephanie Locke,
Abstract:
Whether you are a Data Wizard, a Dwarf mining for insights, an Elf creating elegant visualisations or an ordinary Hobbit seeking business enlightenment before second breakfast, BI Office from Pyramid Analytics can help you achieve your quest for insights and timely business information. With the summer announcement of the integration of Power BI and BI Office, on premise BI solutions are now easily achievable. This session will show you how Power BI with BI Office can make you a Superhero in your organisation!
Speaker(s): Ian Macdonald,
Abstract:
U-SQL is the new kid on the SQL language block. In this session we'll look at the what, where, why and how of the language. Is it a query language? Is it a data transformation language? Will it replace T-SQL? Should you learn it? How do you learn it? We'll discuss all this and more.
Speaker(s): Alex Whittles,
Abstract:
Numerous techniques for concatenating string data can be found online, and even in some books. In this session you will learn two of them that are reliable, and fairly easy to understand, implement, and deploy. You will also learn how to control the order of the values being concatenated, a feature that is not natively provided by SQL Server.
Speaker(s): Matija Lah,
Abstract:
With Microsoft’s acquisition of DataZen dashboard and mobile BI is not easier than ever, with DataZen being bundled with SQL Server. Come along and see how to get started with DataZen. We will be showing an end to end demo of creating and publishing dashboards for mobile and tablet devices.
Speaker(s): Bob Duffy,
Abstract:
To be confirmed
Speaker(s): Annette Allen,
Abstract:
Extended Events provide deep insight into SQL Server's behavior and allow us to gather information not available by other means. However, compared to other technologies such as SQL Trace and Event Notifications, a way to react to the events as soon as they happen seems to be lacking. In this session we will see how the Extended Events streaming API can be used to process events in a near real-time fashion. We will demonstrate how this technology enables new possibilities to solve real world problems, such as capturing and notifying deadlocks or blocking sessions.
Speaker(s): Gianluca Sartori,
This is a list of speakers from the XML Guidebook records. The details and URLs were valid at the time of the event.
LinkedIn: http://uk.linkedin.com/in/johnqmartin/
Contact: https://www.mssqltips.com/sqlserverauthor/291/john-martin/
John Martin is a Data Platform Engineer working in the financial sector, as well as Vice President Marketing for the PASS organization and currently a Microsoft Data Platform MVP. Previously John has worked as a product manager for SentryOne and a Premier Field Engineer with Microsoft UK. John has over a decade of experience working with SQL Server and the Microsoft Data Platform. Working as a DBA, developer and consultant for Microsoft, he has been lucky enough to see how best, and how not, to use SQL Server and the Data Platform effectively.
LinkedIn: https://www.linkedin.com/profile/preview?locale=en_USamp;trk=prof-0-sb-preview-primary-button
Contact: http://uk.linkedin.com/pub/ian-macdonald/1/381/2a1
Ian is a data wizard, who has nearly 30 years’ experience in the Enterprise Business Intelligence market. Starting in Technical Support, training and consulting with Information Builders in 1986, he subsequently developed a career in presales, product marketing and marketing , holding senior VP positions with companies such as Microsoft, Hyperion Solutions and HP. Ian has been working with Pyramid Analytics for five years, initiating their UK presence in 2011.
LinkedIn: http://LinkedIn.COM/in/AndreMelancia
Contact: http://Andy.PT
Owner / Principal Consultant at LunarCat.PT Microsoft Certified Trainer (MCT) focusing on SQL Server, Azure, IoT and Security. 19+ years' fun developing information and multimedia systems, DBA, project and IT management. Data Community Portugal, IT Pro Portugal and PowerShell Portugal communities organiser. IPv6 Portugal, DNSSec Portugal and Windows Development Portugal online communities moderator. Actively volunteering, organising, speaking or just participating at community meetings and events around the world. Proud uncle and food devouring expert, with dangerous рuϧϧy cat as companion. Go to http://Andy.PT and you'll know the same as the NSA...
David is a Sergeant with the Cape Coral Police Department and currently works as a database administrator and developer in the Administrative Services Division. He began his career with the police department in 1990 in the patrol division and worked various assignments until being promoted to Sergeant in 1998. Based on his education and experience David was assigned to his current position in 2002 and is responsible for database administration, software integration, and development for public sa
Contact: http://www.andrewfryer.com
Andrew Fryer (@deepfat) is 8 years in to his role as a Technical Evangelist at Microsoft UK Ltd, specialising in Cortana Analytics, database management amp; BI. When not blogging and making screencasts in the office he can be found presenting at various technical events across the UK including SQL Bits, SQL Relay, and of course SQL Saturdays. He also works on various data science projects in collaboration with Microsoft Research.
LinkedIn: https://www.linkedin.com/in/benonline/
Ben came from a SQL Server developer background moving to Business Intelligence consulting in the UK, Australia and Switzerland and now Ireland.
LinkedIn: http://uk.linkedin.com/in/dageop
Contact: http://www.yoursqlman.com/index.php/blogs
Dr.SubraMANI Paramasivam is a Microsoft MVP, PhD, Microsoft Certified Trainer and Head of Data AI at DAGEOP Ltd having 21 years of DB, BI, Analytics and AI experience. Mani has also spoken in various events like MS IGNITE, PASS Summit, MS Inspire, SQLBITS, Power Platform Summit, Global AI Bootcamp, Data BI Summit, SQLRelay, Power BI World Tour, Data Platform Summit, INSIDESQL UK, Global AI Nights, SQLServerGeeks Summit, MCT Global Summits, Data Day Events and various user group events. Mani also believes in Empowering Every Person in the planet and spreads the awareness on Global challenges via www.EmpoweringEveryPerson.com. He is also a co-owner of 1 Global AI Meetup and 3 Power BI PUG PASS local / user groups.
Contact: http://www.kilasuit.org/blog
SharePoint amp; PowerShell Specialist - moving more into a dedicated PowerShell focus to help coach organisations in methods that they can use to improve their configuration management on a larger scale allowing them to deploy production ready code quicker, easier and with more confidence and importantly at scale in a repeatable manner. Co-Ordinator of the UK PowerShell User Groups - with groups in Manchester amp; London but with a view to expand this across the UK in 2016 - If interested in getting one going in your area then lets talk about it :-)
LinkedIn: http://uk.linkedin.com/in/richardpdouglas
Contact: http://SQL.RichardDouglas.co.uk
Lord Richard Douglas is a Principal Solutions Engineer at SentryOne, where he specialises in the SQL Server product range. He has worked with SQL Server since version 7.0 in various developer and DBA roles and holds a number of Microsoft certifications. Richard is a keen member of the SQL Server community, having run a PASS Chapter in the UK and having served on the organizing committee for SQLRelay. Richard is on Twitter as @SQLRich.
LinkedIn: http://uk.linkedin.com/in/gavincampbell
Contact: http://arapaima.uk
Gavin Campbell is a recovering Business Intelligence developer specialised in improving working practices in database delivery through the use of tools such as SQL Server Data Tools, tSQLt, Visual Studio Team Services, Git and Jenkins, on platforms such as AWS and Microsoft Azure, and methodologies such as Continuous Delivery and Agile.
Niall is a Senior Applications Architect for SanDisk, specializing in Microsoft SQL Server and Flash Storage Solutions. Niall has extensive knowledge and experience in utilizing infrastructure resources to deliver application performance. Having began his career in IT in the late 1990s at Data General and EMC, Niall has since worked with several enterprise storage companies; the latter being Fusion-io where he was responsible for the direction of technical marketing in EMEA.
Dave has been working in the IT field for over 20 years, the past 15 of which has been specialising within SQLServer environment. Tuning and optimizing SQLServer processes is his particular talent but no newbie either when it comes to database development and design. Dave regularly contributes to online forums and is a regular speaker at UK events such as SQL Bits and user groups. He also is founder of the SQL Lunch UK user group
LinkedIn: http://uk.linkedin.com/in/aleardley
Contact: http://blog.eardley.org.uk
Alan Eardley is a Solution Architect at Corporate Project Solutions (CPS) specialising in Office 365. He has worked with SQL Server since version 7 and with SharePoint and associated products for the last seven years. He has been involved in the planning and delivery of on-premises and on-line solutions for a wide variety of clients ranging in size from small to global.
LinkedIn: http://www.linkedin.com/in/wdurkin
Contact: http://williamdurkin.com
William Durkin is a DBA, Data Platform MVP, and Data Platform Architect for Data Masterminds (http://datamasterminds.io). He uses his decade of experience with SQL Server to help multinational corporations achieve their data management goals. Born in the UK and now based in Germany, William has worked as a Database Developer and DBA on projects ranging from single server installations, up to environments spanning 5 continents, using a range of high availability solutions. William is a regular speaker at conferences around the globe, organizes the popular event SQLGrillen (http://sqlgrillen.com).
LinkedIn: http://it.linkedin.com/pub/gianluca-sartori/23/50b/a12
Contact: http://spaghettidba.com
Gianluca Sartori is a Data Platform MVP, independent consultant and performance tuning specialist. He has been working in the software industry since 1999 and has been working with SQL Server ever since. He also works as a SQL Server trainer and in his spare time he writes technical articles and participates the SQL Server forums. Gianluca enjoys presenting SQL Server topics at conferences in Europe and in Italy in particular. He is currently working as lead DBA at a famous Formula 1 team.
LinkedIn: https://www.linkedin.com/in/andrewpruski
Contact: https://dbafromthecold.com/
SQL Server DBA with over 10 year's experience. Originally from Wales but now living in Ireland
Contact: https://onlysearch.wordpress.com/
Allan Mitchell is a SQL Server MVP and runs elastio, a small consultancy helping customers to make informed decisions about their data storage and integration. His focus is on enterprise search as well as real-time data integration.
Contact: http://andrekamman.com
André Kamman is a DBA and SQL Server Solutions Architect for CloudDBA. He has done a lot of DBA work on 1000’s of servers where he discovered his love for Powershell, architecting SQL Server solutions, building and tuning ETL processes (with BIML). He also likes to work with MPP platforms APS and AzureDW. André is a Data Platform MVP, Dutch PASS Chapter Leader and organiser of SQL Saturday Holland.
I have worked with SQL Server for 15 years predominantly as a Developer and more recently moving into the role of DBA. I am an author on Simple Talk, co-run the SQL South West User group and SQL Saturday Exeter and am involved in the organisation of SQL Bits.
LinkedIn: https://www.linkedin.com/in/mladenprajdic
Contact: http://weblogs.sqlteam.com/mladenp
Mladen Prajdić is a Data Platform MVP from Slovenia. He's been programming for 20 years, developing diﬀerent types of applications in .Net (C#) and SQL Server, ranging from standard line-of-business, image-processing applications to high performace and IoT applications. He's a regular speaker at various conferences and usergroup meetings, really likes to optimize slow SQL statements, analyze performance, and find unconventional solutions to difficult SQL Server problems. In his free time, he also develops a very popular add-in for SSMS, called the SSMS Tools Pack (www.ssmstoolspack.com).
LinkedIn: https://uk.linkedin.com/in/robsewellsqldba
Contact: http://sqldbawithabeard.com
Rob was once a production SQL Server DBA, but is now generally found automating the Data Platform and providing training for clients. He has a passion for PowerShell, Data, and DevOps. He is an MVP, an officer for the DevOps PowerShell VG, and has spoken and volunteered at many PowerShell and Data events. He is a member of the committee that organises Data In Devon and the European PowerShell Conference. He is a proud supporter of the Data and PowerShell communities. He relishes sharing and learning and can be found doing both via Twitter @sqldbawithbeard and his blog sqldbawithabeard.com. He spends most of his time looking at a screen and loves to solve problems.
Contact: http://www.kilasuit.org/blog
SharePoint amp; PowerShell Specialist - moving more into a dedicated PowerShell focus to help coach organisations in methods that they can use to improve their configuration management on a larger scale allowing them to deploy production ready code quicker, easier and with more confidence and importantly at scale in a repeatable manner. Co-Ordinator of the UK PowerShell User Groups - with groups in Manchester amp; London but with a view to expand this across the UK in 2016 - If interested in getting one going in your area then lets talk about it :-)
LinkedIn: https://uk.linkedin.com/in/stephanielocke
Contact: https://itsalocke.com
Steph Locke leads a life of data, coffee, books and board games. During the day, Steph runs her own consultancy helping people start doing data science. Steph enjoys being her own gal as it means she gets to spend plenty of time building communities to provide platforms for people to help each other be better with data.
LinkedIn: http://uk.linkedin.com/in/boswellmike
Mike works for Microsoft as a Data Platform Solution Architect. He likes to get involved in SQL Saturdays and the larger Data Platform conferences within Europe. You will also often see him talking at Microsoft events and how data is changing the way we work. During his time, in Microsoft, he has worked with customers across the EMEA region in Finance, Utilities, Healthcare Public Sector and Retail. He was one EMEA Data Platform leads, where he has worked with others to with engineer’s knowledge, product launches, IP and career development. He has extensive knowledge on our APS Systems along with core, and BI skills on SQL Server 2014/2016 and hybrid solutions on Azure.
LinkedIn: https://uk.linkedin.com/in/alexwhittles
Contact: http://www.PurpleFrogSystems.com/blog
Alex is a Data Platform MVP, and is the owner and lead consultant at Purple Frog, a SQL Server Business Intelligence consultancy in the UK. He specializes in Data Warehouse modelling, ETL, Cubes, MDX amp; DAX. He#39;s a chartered engineer amp; has an MSc in Business Intelligence. He runs the Birmingham (UK) SQL Pass chapter amp; Azure user groups, and is on the SQLBits and SQL Relay committees in the UK. Alex is a regular speaker at global events including SQLBits, PASS Summit, SQL Relay, SQL Saturdays as well as numerous SQL Pass chapters around Europe
Santiago has fourteen years of experience facilitating change for a wide variety of clients to become data driven decision making organisations. He’s experienced in data analytics and technical skills combined with management consulting work. He has substantial knowledge and practical skills with a range of data products for decision analysis, Reporting, Business Intelligence, Data Analytics and Decision Support Systems. As Head of Business Analytics, Santiago primarily oversees the UK operations for BIPB and also takes on wider group responsibilities providing deep knowledge and leadership to the Analytics Practice. His role combines strong technical capability of self-service BI tools, data modelling, relational databases and program
I have worked with SQL Server for 15 years predominantly as a Developer and more recently moving into the role of DBA. I am an author on Simple Talk, co-run the SQL South West User group and SQL Saturday Exeter and am involved in the organisation of SQL Bits.
Contact: http://blogs.prodata.ie/author/bob.aspx
Bob Duffy is a SQL Server MVP from Dublin, Ireland who is MCA, MCM. and Analysis Services Maestro certified. Bob works as a Database Architect at the Prodata SQL Centre of Excellence where he specializes in business intelligence and performance tuning.
LinkedIn: https://uk.linkedin.com/in/edelliottuk
Contact: https://the.agilesql.club
Ed has worked with SQL Server for 10 years and is a SQL developer who uses his skills gained as a DBA, Developer and Support Engineer to build continuous integration and automated deployment processes. Ed is passionate about getting SQL databases under source control, under test and deployable whether they want it or not. Ed is always happy to talk development processes and SQL server any time (except tea time).
LinkedIn: http://uk.linkedin.com/in/alexanderyates
Contact: http://www.workingwithdevs.com
Alex Yates has been helping organisations to apply DevOps principles to relational database development and deployment since 2010. He’s most proud of helping Skyscanner develop the ability to deploy 95 times a day. Originally for Redgate, later for DLM Consultants, Alex has worked with clients on every continent except Antarctica – so he’s keen to meet anyone who researches penguins. A keen community member, he co-organises SQL Relay, is the founder of www.SpeakingMentors.com and has been recognised as a Microsoft Data Platform MVP since 2017.
LinkedIn: http://uk.linkedin.com/in/johnqmartin/
Contact: https://www.mssqltips.com/sqlserverauthor/291/john-martin/
John Martin is a Data Platform Engineer working in the financial sector, as well as Vice President Marketing for the PASS organization and currently a Microsoft Data Platform MVP. Previously John has worked as a product manager for SentryOne and a Premier Field Engineer with Microsoft UK. John has over a decade of experience working with SQL Server and the Microsoft Data Platform. Working as a DBA, developer and consultant for Microsoft, he has been lucky enough to see how best, and how not, to use SQL Server and the Data Platform effectively.
LinkedIn: http://uk.linkedin.com/in/alexanderyates
Contact: http://www.workingwithdevs.com
Alex Yates has been helping organisations to apply DevOps principles to relational database development and deployment since 2010. He’s most proud of helping Skyscanner develop the ability to deploy 95 times a day. Originally for Redgate, later for DLM Consultants, Alex has worked with clients on every continent except Antarctica – so he’s keen to meet anyone who researches penguins. A keen community member, he co-organises SQL Relay, is the founder of www.SpeakingMentors.com and has been recognised as a Microsoft Data Platform MVP since 2017.
LinkedIn: https://uk.linkedin.com/in/prathy
Contact: http://prathy.com/
Prathy Kamasani is a Microsoft Valuable Professional working as an independent MSBI contractor based in London. She specialises in Power BI, SSIS, SSAS and SSRS. Prathy organisers London Power BI user group and co-organizes the London PASS Local Group. She is a regular speaker at events like SQLSaturday and local user groups.
LinkedIn: http://si.linkedin.com/in/matijalah/
Contact: http://milambda.blogspot.com
Matija Lah has more than a decade of experience working with Microsoft SQL Server, mostly architecting data-centric solutions in the legal domain. His contributions to the SQL Server community have led to the Microsoft Most Valuable Professional award in 2007 (Data Platform), which he held until 2017. In 2008 Matija joined SolidQ as a Mentor, located in Central and Eastern Europe. He spends most of his time on projects involving advanced information management, and natural language processing.
The following is a list of sponsors that helped fund the event.


Mexican gang slaughters family of 5 in resort of Acapulco
MEXICO CITY — The bodies of five members of a family have been found in the Mexican Pacific coast resort of Acapulco, and four men have been arrested in the killings.
The family members ranged in age from 11 to 70. No motive was given for the slayings, which are believed to be gang-related.
The prosecutors’ office in the southern state of Guerrero said Friday the family disappeared a month ago. Their bodies were found Friday.
The office said the four suspects belonged to a local gang known as “The Virus.” Two suspects who died in a shootout with marines in October were also members of the gang and probably also participated in the kidnap-killing of the family.
The once-glittering resort has been plagued by drug-gang violence for about the last 15 years.
© Copyright 2019 The Associated Press. All rights reserved. This material may not be published, broadcast, rewritten or redistributed.


section ‹Introduction to the IsarMathLib project›
theory Introduction imports ZF.equalities
begin
text‹This theory does not contain any formalized mathematics used in
other theories, but is an introduction to IsarMathLib project.›
subsection‹How to read IsarMathLib proofs - a tutorial›
text‹Isar (the Isabelle's formal proof language) was designed to be similar
to the standard language of mathematics. Any person able to read proofs in
a typical mathematical paper should be able to read and understand
Isar proofs without having to learn a special proof language.
However, Isar is a formal proof language and as such it does contain a
couple of constructs whose meaning is hard to guess. In this tutorial
we will define a notion and prove an example theorem about that notion,
explaining Isar syntax along the way. This tutorial may also serve as a
style guide for IsarMathLib contributors. Note that this tutorial
aims to help in reading the presentation of the Isar language that is used
in IsarMathLib proof document and HTML rendering on the
FormalMath.org site, but does not teach how to write proofs that can be
verified by Isabelle. This presentation is different than the source
processed by Isabelle (the concept that the source and presentation
look different should be familiar to any LaTeX user). To learn
how to write Isar proofs one needs to study the source of this tutorial as well.›
text‹The first thing that mathematicians typically do is to define
notions. In Isar this is done with the ‹definition› keyword.
In our case we define a notion of two
sets being disjoint. We will use the infix notation, i.e. the string
‹{is disjoint with}› put between two sets to denote our notion
of disjointness.
The left side of the ‹≡› symbol is the notion
being defined, the right side says how we define it. In Isabelle/ZF ‹0›
is used to denote both zero (of natural numbers) and the empty set, which is
not surprising as those two things are the same in set theory.›
definition
AreDisjoint (infix "{is disjoint with}" 90) where
"A {is disjoint with} B ≡ A ∩ B = 0"
text‹We are ready to prove a theorem. Here we show that the relation
of being disjoint is symmetric. We start with one of the keywords
''theorem'', ''lemma'' or ''corollary''. In Isar they are synonymous.
Then we provide a name for the theorem. In standard mathematics
theorems are numbered. In Isar we can do that too, but it is
considered better to give theorems meaningful names.
After the ''shows'' keyword we give the statement to show. The
‹⟷› symbol denotes the equivalence in Isabelle/ZF. Here
we want to show that "A is disjoint with B iff and only if B is disjoint
with A". To prove this fact we show two implications - the first one that
‹A {is disjoint with} B› implies ‹B {is disjoint with} A›
and then the converse one. Each of these implications is formulated
as a statement to be proved and then proved in
a subproof like a mini-theorem.
Each subproof uses a proof block to show the implication. Proof blocks
are delimited with curly brackets in Isar.
Proof block is one of the constructs that
does not exist in informal mathematics, so it may be confusing.
When reading a proof containing a proof block I suggest to focus first
on what is that we are proving in it. This can be done by looking
at the first line or two of the block and then at the last statement.
In our case the block starts with
"assume ‹A {is disjoint with} B› and the last statement
is "then have ‹B {is disjoint with} A›". It is a typical pattern
when someone needs to prove an implication: one assumes the antecedent
and then shows that the consequent follows from this assumption.
Implications are denoted with the
‹⟶› symbol in Isabelle.
After we prove both implications we collect them
using the ''moreover'' construct. The keyword ''ultimately''
indicates that what follows is the conclusion of the statements
collected with ''moreover''. The ''show'' keyword is like ''have'',
except that it indicates that we have arrived at the claim of the
theorem (or a subproof).›
theorem disjointness_symmetric:
shows "A {is disjoint with} B ⟷ B {is disjoint with} A"
proof -
have "A {is disjoint with} B ⟶ B {is disjoint with} A"
proof -
{ assume "A {is disjoint with} B"
then have "A ∩ B = 0" using AreDisjoint_def by simp
hence "B ∩ A = 0" by auto
then have "B {is disjoint with} A"
using AreDisjoint_def by simp
} thus ?thesis by simp
qed
moreover have "B {is disjoint with} A ⟶ A {is disjoint with} B"
proof -
{ assume "B {is disjoint with} A"
then have "B ∩ A = 0" using AreDisjoint_def by simp
hence "A ∩ B = 0" by auto
then have "A {is disjoint with} B"
using AreDisjoint_def by simp
} thus ?thesis by simp
qed
ultimately show ?thesis by blast
qed
subsection‹Overview of the project›
text‹
The ‹Fol1›, ‹ ZF1› and ‹Nat_ZF_IML› theory
files contain some background material that is needed for
the remaining theories.
‹Order_ZF› and ‹Order_ZF_1a› reformulate
material from standard Isabelle's
‹Order› theory in terms of non-strict (less-or-equal)
order relations.
‹Order_ZF_1› on the other hand directly continues the ‹Order›
theory file using strict order relations (less and not equal). This is useful
for translating theorems from Metamath.
In ‹NatOrder_ZF› we prove that the usual order on natural numbers
is linear.
The ‹func1› theory provides basic facts about functions.
‹func_ZF› continues this development with more advanced
topics that relate to algebraic properties of binary operations,
like lifting a binary operation to a function space,
associative, commutative and distributive operations and properties
of functions related to order relations. ‹func_ZF_1› is
about properties of functions related to order relations.
The standard Isabelle's ‹Finite› theory defines the finite
powerset of a set as a certain "datatype" (?) with some recursive
properties. IsarMathLib's ‹Finite1›
and ‹Finite_ZF_1› theories develop more facts about this notion.
These two theories are obsolete now.
They will be gradually replaced by an approach based on set theory
rather than tools specific to Isabelle. This approach is presented
in ‹Finite_ZF› theory file.
In ‹FinOrd_ZF› we talk about ordered finite sets.
The ‹EquivClass1› theory file is a reformulation of
the material in the standard
Isabelle's ‹EquivClass› theory in the spirit of ZF set theory.
‹FiniteSeq_ZF› discusses the notion of finite sequences
(a.k.a. lists).
‹InductiveSeq_ZF› provides the definition and properties of
(what is known in basic calculus as) sequences defined by induction,
i. e. by a formula of the form $a_0 = x,\ a_{n+1} = f(a_n)$.
‹Fold_ZF› shows how the familiar from functional
programming notion of fold can be interpreted in set theory.
‹Partitions_ZF› is about splitting a set into non-overlapping
subsets. This is a common trick in proofs.
‹Semigroup_ZF› treats the expressions of the form
$a_0\cdot a_1\cdot .. \cdot a_n$, (i.e. products of finite sequences),
where "$\cdot$" is an associative binary operation.
‹CommutativeSemigroup_ZF› is another take on a similar subject.
This time we consider the case when the operation is commutative
and the result of depends only on the set of elements we are
summing (additively speaking), but not the order.
The ‹Topology_ZF› series covers basics of general topology:
interior, closure, boundary, compact sets, separation axioms and
continuous functions.
‹Group_ZF›, ‹Group_ZF_1›, ‹Group_ZF_1b›
and ‹Group_ZF_2›
provide basic facts of the group theory. ‹Group_ZF_3›
considers the notion of almost homomorphisms that is nedeed for the
real numbers construction in ‹Real_ZF›.
The ‹TopologicalGroup› connects the ‹Topology_ZF› and
‹Group_ZF› series and starts the subject of topological groups
with some basic definitions and facts.
In ‹DirectProduct_ZF› we define direct product of groups and show
some its basic properties.
The ‹OrderedGroup_ZF› theory treats ordered groups.
This is a suprisingly large theory for such relatively obscure topic.
‹Ring_ZF› defines rings. ‹Ring_ZF_1› covers
the properties of rings that are specific to the real numbers construction
in ‹Real_ZF›.
The ‹OrderedRing_ZF› theory looks at the consequences of adding
a linear order to the ring algebraic structure.
‹Field_ZF› and ‹OrderedField_ZF› contain basic facts
about (you guessed it) fields and ordered fields.
‹Int_ZF_IML› theory considers the integers
as a monoid (multiplication) and an abelian ordered group (addition).
In ‹Int_ZF_1› we show that integers form a commutative ring.
‹Int_ZF_2› contains some facts about slopes (almost homomorphisms
on integers) needed for real numbers construction,
used in ‹Real_ZF_1›.
In the ‹IntDiv_ZF_IML› theory we translate some properties of the
integer quotient and reminder functions studied in the standard Isabelle's
‹IntDiv_ZF› theory to the notation used in IsarMathLib.
The ‹Real_ZF› and ‹Real_ZF_1› theories
contain the construction of real numbers based on the paper \cite{Arthan2004}
by R. D. Arthan (not Cauchy sequences, not Dedekind sections).
The heavy lifting
is done mostly in ‹Group_ZF_3›, ‹Ring_ZF_1›
and ‹Int_ZF_2›. ‹Real_ZF› contains
the part of the construction that can be done
starting from generic abelian groups (rather than additive group of integers).
This allows to show that real numbers form a ring.
‹Real_ZF_1› continues the construction using properties specific
to the integers and showing that real numbers constructed this way
form a complete ordered field.
‹Cardinal_ZF› provides a couple of theorems about cardinals that are mostly used for studying
properties of topological properties (yes, this is kind of meta).
The main result (proven without AC) is that if two sets can be injectively mapped into an
infinite cardinal, then so can be their union.
There is also a definition of the Axiom of Choice specific for a given cardinal
(so that the choice function exists for families of sets of given cardinality).
Some properties are proven for such predicates, like that for finite families of sets the choice
function always exists (in ZF) and that the axiom of choice for a larger cardinal implies
one for a smaller cardinal.
‹Group_ZF_4› considers conjugate of subgroup and defines simple groups.
A nice theorem here is that endomorphisms of an abelian group form a ring.
The first isomorphism theorem (a group homomorphism $h$ induces an isomorphism between the group
divided by the kernel of $h$ and the image of $h$) is proven.
Turns out given a property of a topological space one can define a local version of a property in general.
This is studied in the the ‹Topology_ZF_properties_2› theory and applied to local
versions of the property of being finite or compact or Hausdorff
(i.e. locally finite, locally compact, locally Hausdorff).
There are a couple of nice applications, like one-point compactification that allows to show
that every locally compact Hausdorff space is regular.
Also there are some results on the interplay between hereditability of a property and local properties.
For a given surjection $f : X\rightarrow Y$, where $X$ is a topological space one can consider the
weakest topology on $Y$ which makes $f$ continuous, let's call it a quotient topology generated by $f$.
The quotient topology generated by an equivalence relation r on X is actually a special case
of this setup, where $f$ is the natural projection of $X$ on the quotient $X/r$.
The properties of these two ways of getting new topologies are studied in ‹Topology_ZF_8›
theory. The main result is that any quotient topology generated by a function is homeomorphic
to a topology given by an equivalence relation, so these two approaches to quotient
topologies are kind of equivalent.
As we all know, automorphisms of a topological space form a group. This fact is proven in ‹Topology_ZF_9›
and the automorphism groups for co-cardinal, included-set, and excluded-set topologies are identified.
For order topologies it is shown that order isomorphisms are homeomorphisms of the topology induced by the order.
Properties preserved by continuous functions are studied and as an application it is shown
for example that quotient topological spaces of compact (or connected) spaces are compact (or connected, resp.)
The ‹Topology_ZF_10› theory is about products of two topological spaces.
It is proven that if two spaces are $T_0$ (or $T_1$, $T_2$, regular, connected) then their product is as well.
Given a total order on a set one can define a natural topology on it generated by taking the rays
and intervals as the base. The ‹Topology_ZF_11› theory studies relations between the order
and various properties of generated topology. For example one can show that if the order topology
is connected, then the order is complete (in the sense that for each set bounded from above the
set of upper bounds has a minimum). For a given cardinal $\kappa$ we can consider
generalized notion of $\kappa-separability$. Turns out $\kappa$-separability is related to (order)
density of sets of cardinality $\kappa$ for order topologies.
Being a topological group imposes additional structure on the topology of the group, in particular
its separation properties. In ‹Topological_Group_ZF_1.thy› theory it is shown that if
a topology is $T_0$, then it must be $T_3$ , and that the topology in a topological group
is always regular.
For a given normal subgroup of a topological group we can define a topology on the quotient
group in a natural way. At the end of the ‹Topological_Group_ZF_2.thy› theory it is shown
that such topology on the quotient group makes it a topological group.
The ‹Topological_Group_ZF_3.thy› theory studies the topologies on subgroups of a
topological group. A couple of nice basic properties are shown, like that the closure of a
subgroup is a subgroup, closure of a normal subgroup is normal and, a bit more surprising
(to me) property that every locally-compact subgroup of a $T_0$ group is closed.
In ‹Complex_ZF› we construct complex numbers starting from
a complete ordered field (a model of real numbers). We also define
the notation for writing about complex numbers and prove that the
structure of complex numbers constructed there satisfies the axioms
of complex numbers used in Metamath.
‹MMI_prelude› defines the ‹mmisar0› context in which
most theorems translated from Metamath are proven. It also contains a
chapter explaining how the translation works.
In the ‹Metamath_interface› theory we prove a theorem
that the ‹mmisar0› context is valid (can be used)
in the ‹complex0› context.
All theories using the translated results will import the
‹Metamath_interface› theory. The ‹Metamath_sampler›
theory provides some examples of using the translated theorems
in the ‹complex0› context.
The theories ‹MMI_logic_and_sets›, ‹MMI_Complex›,
‹MMI_Complex_1› and ‹MMI_Complex_2›
contain the theorems imported from the
Metamath's set.mm database. As the translated proofs are rather verbose
these theories are not printed in this proof document.
The full list of translated facts can be found in the
‹Metamath_theorems.txt› file included in the
IsarMathLib distribution.
The ‹MMI_examples› provides some theorems imported from Metamath
that are printed in this proof document as examples of how translated
proofs look like.›
end


About
💙 Static Blog Builder is loosely based on a complete ripoff of the
bear blogging platform. If what you're looking for is a minimal, text-only blogging platform and
you don't care about hosting it yourself, close this page and go check out
bear!
I made 💙 Static Blog Builder because I love the bear blogging platform but wanted some additional customizations.
Read the full story on my blog about why I think platforms like bear are perfect for blogging and an antidote for many of web's current maladies. A tutorial on hosting on AWS is also included.


jFactor
providing solutions to Web Components with jQuery
The following text is highlighted and also bold:
highlighted text


PHY321: Classical Mechanics 1
Homework 1, due Monday January 25 (midnight)
Jan 22, 2021
Practicalities about homeworks and projects
- You can work in groups (optimal groups are often 2-3 people) or by yourself. If you work as a group you can hand in one answer only if you wish. Remember to write your name(s)!
- Homeworks are available approximately ten days before the deadline.
- How do I(we) hand in? You can hand in the paper and pencil exercises as a scanned document. For this homework this applies to exercises 1-6. You should upload the scan to D2L. Alternatively, you can hand in everyhting (if you are ok with typing mathematical formulae using say Latex) as a jupyter notebook at D2L. The numerical exercise (exercise 7 here) should always be handed in as a jupyter notebook by the deadline at D2L.
Exercise 1 (10 pt), math reminder, properties of exponential function
The first exercise is meant to remind ourselves about properties of
the exponential function and imaginary numbers. This is highly
relevant later in this course when we start analyzing oscillatory
motion and some wave mechanics. As physicists we should thus feel comfortable with expressions that
include \( \exp{(\imath\omega t)} \). Here \( t \) could be interpreted as time and \( \omega \) as a frequency and \( \imath \) is the imaginary unit number.
- 1a (2pt): Perform Taylor expansions in powers of \( \omega t \) of the functions \( \cos{(\omega t)} \) and \( \sin{(\omega t)} \).
- 1b (2pt): Perform a Taylor expansion of \( \exp{(i\omega t)} \).
- 1c (3pt): Using parts (a) and (b) here, show that \( \exp{(\imath\omega t)}=\cos{(\omega t)}+\imath\sin{(\omega t)} \).
- 1d (3pt): Show that \( \ln{(−1)} = \imath\pi \).
Exercise 2 (10 pt), Vector algebra
- 2a (4pt) One of the many uses of the scalar product is to find the angle between two given vectors. Find the angle between the vectors \( \boldsymbol{a}=(1,2,4) \) and \( \boldsymbol{b}=(4,2,1) \) by evaluating their scalar product.
- 2b (6pt) For a cube with sides of length 1, one vertex at the origin, and sides along the \( x \), \( y \), and \( z \) axes, the vector of the body diagonal from the origin can be written \( \boldsymbol{a}=(1, 1, 1) \) and the vector of the face diagonal in the \( xy \) plane from the origin is \( \boldsymbol{b}=(1,1,0) \). Find first the lengths of the body diagonal and the face diagonal. Use then part (2a) to find the angle between the body diagonal and the face diagonal.
Exercise 3 (10 pt), More vector mathematics
- 3a (5pt) Show (using the fact that multiplication of reals is distributive) that \( \boldsymbol{a}(\boldsymbol{b}+\boldsymbol{c})=\boldsymbol{a}\boldsymbol{b}+\boldsymbol{a}\boldsymbol{c} \).
- 3b (5pt) Show that (using product rule for differentiating reals) \( \frac{d}{dt}(\boldsymbol{a}\boldsymbol{b})=\boldsymbol{a}\frac{d\boldsymbol{b}}{dt}+\boldsymbol{b}\frac{d\boldsymbol{a}}{dt} \)
Exercise 4 (10 pt), Algebra of cross products
- 4a (5pt) Show that the cross products are distribuitive \( \boldsymbol{a}\times(\boldsymbol{b}+\boldsymbol{c})=\boldsymbol{a}\times\boldsymbol{b}+\boldsymbol{a}\times\boldsymbol{c} \).
- 4b (5pt) Show that \( \frac{d}{dt}(\boldsymbol{a}\times\boldsymbol{b})=\boldsymbol{a}\times\frac{d\boldsymbol{b}}{dt}+\frac{d\boldsymbol{a}}{dt}\times \boldsymbol{b} \). Be careful with the order of factors
Exercise 5 (10 pt), Area of triangle and law of sines
Exercise 1.18 in the textbook of Taylor, Classical Mechanics. Part (1.18a) gives 5pt and part (1.18b) gives also 5pt.
Exercise 6 (10pt), Matrices and rotations in the \( xy \) plane
The rotation of a three-dimensional vector \( \boldsymbol{a}=(a_x,a_y,a_z) \) in the \( xy \) plane around an angle \( \phi \) results in a new vector \( \boldsymbol{b}=(b_x,b_y,b_z) \). This operation can be expressed in terms of linear algebra as a matrix (the rotation matrix) multiplied with a vector. We can write this as
$$
\begin{bmatrix} b_x \\ b_y \\ b_z \end{bmatrix} = \begin{bmatrix} \cos{\phi} & \sin{\phi} & 0 \\ -\sin{\phi} & \cos{\phi} & 0 \\ 0 & 0 & 1\end{bmatrix}\begin{bmatrix} a_x \\ a_y \\ a_z \end{bmatrix}.
$$
We can write this in a more compact form as \( \boldsymbol{b} = \boldsymbol{R}\boldsymbol{a} \), where the rotation matrix is defined as
$$
\boldsymbol{R} = \begin{bmatrix} \cos{\phi} & \sin{\phi} & 0 \\ -\sin{\phi} & \cos{\phi} & 0 \\ 0 & 0 & 1\end{bmatrix}.
$$
- 6a (4pt) Find the transpose of the matrix \( \boldsymbol{R} \). We label this as \( \boldsymbol{R}^T \).
- 6b (4pt) This matrix is a so-called unitary/orthogonal matrix. Show that \( \boldsymbol{R}^T\boldsymbol{R}= \boldsymbol{I} \) where \( \boldsymbol{I} \) is the so-called identity matrix with ones only along the diagonal. How would you interpret this result? For example, are scalar products changed under this transformations?
- 6c (2pt) Find the matrix for rotating a coordinate system by \( 90 \) degrees about the \( x \)-axis.
Exercise 7 (40pt), Numerical elements, getting started with some simple data
This exercise should be handed in as a jupyter-notebook at D2L. Remember to write your name(s).
Our first numerical attempt will involve reading data from file or
just setting up two vectors, one for position and one for time. Our data are from
Usain Bolt's world record 100m during the olympic games in Beijing in
2008. The data show the time used in units of 10m (see below). Before we however
venture into this, we need to repeat some basic Python syntax with an
emphasis on
- basic Python syntax for arrays
- define and operate on vectors and matrices in Python
- create plots for motion in 1D space
For more information, see the introductory slides.
Here are some of the basic packages we will be using this week
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
The first exercise here deals with simply getting familiar with vectors and matrices.
We will be working with vectors and matrices to get you familiar with them
- Initalize two three-dimensional \( xyz \) vectors in the below cell using np.array([x,y,z]). Vectors are represented through arrays in python
- V1 should have x1=1, y1 =2, and z1=3.
- Vector 2 should have x2=4, y2=5, and z2=6.
- Print both vectors to make sure your code is working properly.
V1 = np.array([1,2,3])
V2 = np.array([4,5,6])
print("V1: ", V1)
print("V2: ", V2)
If this is not too familiar, here's a useful link for creating vectors in python
https://docs.scipy.org/doc/numpy-1.13.0/user/basics.creation.html. Alternatively, look up the introductory slides.
Now lets do some basic mathematics with vectors.
Compute and print the following, and double check with hand calculations:
- 7a (2pt) Calculate \( \boldsymbol{V}_1-\boldsymbol{V}_2 \).
- 7b (2pt) Calculate \( \boldsymbol{V}_2-\boldsymbol{V}_1 \).
- 7c (2pt) Calculate the dot product \( \boldsymbol{V}_1\boldsymbol{V}_2 \).
- 7d (2pt) Calculate the cross product \( \boldsymbol{V}_1\times\boldsymbol{V}_2 \).
Here is some useful explanation on numpy array operations if you feel a bit confused by what is happening,
see https://www.pluralsight.com/guides/overview-basic-numpy-operations.
The following code prints the first two exercises
print(V1-V2)
print(V2-V1)
For the dot product of V1 and V2 below we can use the dot function of numpy as follows
As a small challenge try to write your own function for the dot product of two vectors.
Matrices can be created in a similar fashion in python. In this
language we can work with them through the package numpy (which we
have already imported)
M1 = np.matrix([[1,2,3],
[4,5,6],
[7,8,9]])
M2 = np.matrix([[1,2],
[3,4],
[5,6]])
M3 = np.matrix([[9,8,7],
[4,5,6],
[7,6,9]])
Matrices can be added in the same way vectors are added in python as shown here
What happens if we try to do \( M1+M2 \)?
- 7e (4pt) Let us go back to exercise 6. Define a vector \( \boldsymbol{a}=(1,0,0) \) and set the angle \( \phi \) in the rotation matrix (rotation in the \( xy \) plane) to \( 45 \) degrees. Set up the matrix \( \boldsymbol{R} \) and find the vector \( \boldsymbol{b}=\boldsymbol{R}\boldsymbol{a} \).
To perform a matrix-vector multiplication of the above type, the following python code may be of use. Here we just define a random vector and a random \( 3\times 3 \) matrix
import numpy as np
#We define a 3 dimensional vector with random numbers
n = 3
a = np.random.rand(n)
# define a matrix of dimension 3 x 3 and set all elements to random numbers with x \in [0, 1]
R = np.random.rand(n, n)
#print the vector and the matrix
print(a)
print(R)
# perform a matrix-vector multiplication. Note that we need to transpose the vector and the odd way to indicate a multiplication with @
b = R @ a.T
print(b)
That's enough vectors and matrices for now. Let's move on to some physics problems! Yes, the actual subject we are studying for.
We can opt for two different ways of handling the data. The data is listed in the table here and represents the total time Usain Bolt used in steps of 10 meters of distance. The label \( i \) is just a counter and we start from zero since Python arrays are by default set from zero. The variable \( t \) is time in seconds and \( x \) is the position in meters.
| i | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| x[m] | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 |
| t[s] | 1.85 | 2.87 | 3.78 | 4.65 | 5.50 | 6.32 | 7.14 | 7.96 | 8.79 | 9.69 |
- 7f (4pt) You can here make a file with the above data and read them in and set up two vectors, one for time and one for position. Alternatively, you can just set up these two vectors directly and define two vectors in your Python code.
The following example code may help here
# we just initialize time and position
x = np.array([10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 90.0, 100.0])
t = np.array([1.85, 2.87, 3.78, 4.65, 5.50, 6.32, 7.14, 7.96, 8.79, 9.69])
plt.plot(t,x, color='black')
plt.xlabel("Time t[s]")
plt.ylabel("Position x[m]")
plt.title("Usain Bolt's world record run")
plt.show()
- 7g (4pt) Plot the position as function of time
- 7h (10pt) Compute thereafter the mean velocity for every interval \( i \) and the total velocity (from \( i=0 \) to the given interval \( i \)) for each interval and plot these two quantities as function of time. Comment your results.
- 7i (10pt) Finally, compute and plot the mean acceleration for each interval and the total acceleration. Again, comment your results. Can you see whether he slowed down during the last meters?


The story begins as Don Vito Corleone, the head of a New York Mafia family, oversees his daughter's wedding. ... but given to ruthless violence whenever anything stands against the good of the family.
$scope.fieldsetOptions = { collapsed : true }; $scope.collapseFieldset = function() { $scope.fieldsetOptions.collapsed = true; }; $scope.expandFieldset = function() { $scope.fieldsetOptions.collapsed = false; };