Pink Floyd - The Piper at the Gates of Dawn
A lot of people don't like Pink Floyd. I often hear things like "They are too weird for me".
If you don't like music like the Floyd's sound, well then I definitely don't suggest listening to this album, which is their debut album. If you like psychedelic types of music-genres - make this the next album you listen to!
When Pink Floyd started out it was this English fellow called Syd Barrett who was the mastermind behind their music. He has been called various things in his life: brilliant, ill, misunderstood, mad-man, "crazy diamond", erratic, hilarious. Here's an interesting story: this album propelled Pink Floyd into the music-consciousness at the time, because of its totally unique sound, but Syd was kicked out of Pink Floyd afterwards because of alleged increasing erratic behaviour (his family denies this whole Syd being a crazy schizophrenic LSD-fucked-up image that Pink Floyd has created by the way, they say he just started to prefer doing other things like painting and gardening). After Pink Floyd got got famous/legendary, with the brilliant David Gilmour joining the band, Syd started living a life outside of the lime-light, started to become a bit of a recluse. But he still continued making music for a while, see my later review of his debut solo album here.
I had a very big Pink Floyd phase to which my friends would attest, and this was just one of their albums I listened to on repeat while sometimes skipping class and staying in my "hool" (room) in Wilgenhof, the residence I attended in Stellenbosch. Piper at the Gates of Dawn is certainly a strange album, and I get that a lot of people would not like it at all. But I think it's excellent.
What a lot of people don't know is that Syd Barrett was definitely a musical genius, and also possibly an actual genius. Not only did he totally bring a new psychedelic sound to the world, he was also very well read, and I think he knew or thought he knew things most of us would never discover in our lifetimes.
For example, the song Chapter 24 is about the ancient Chinese book, I Ching, aka The Book Of Changes (the oldest of the so-called "Chinese Classics"):
A movement is done in six stages, and the seventh brings return
Sounds familiar? Maybe like the story of Genesis in the Bible? Well, this is something out of the I Ching which is dated to have been written somewhere between the 10th and 4th centuries BC.
This album shifts across a lot of boundaries: ancient wisdom (the previously mentioned Chapter 24), space (Astronomy Domine), the future (Interstellar Overdrive), JRR Tolkien's works (The Gnome), and one of my favourite songs - Bike, a simple song about him wanting to get a girl "into his world". It includes this wonderful lyric:
I know a mouse, and he hasn’t got a house
I don’t know why I call him Gerald
He’s getting rather old, but he’s a good mouse
There's also one other song that is special to me and that is Lucifer Sam, a song about his cat. I love cats and I love their crazy complex little minds. Syd also obviously loved his pets.
[Verse 1]
Lucifer Sam, siam cat
Always sitting by your side
Always by your side
[Hook]
That cat’s something I can’t explain
A truly original album from a truly original person 😀


| < Day Day Up > |
Chapter 15. Genetic AlgorithmsIt is the game designer's job to create a challenging game environment for the player.  It needs to be challenging enough for the players, or the game will seem too easy and they will lose interest. On the other hand, if it's too difficult, the players will become frustrated. Sometimes players can discover loopholes, or exploits, with which they essentially can cheat. This can be a result of a game design issue that the developers simply overlooked. Another game design problem stems from the fact that the skill levels of different players can vary greatly. Creating a truly balanced and challenging game for players of different skill levels can be a daunting task. Fortunately, genetic algorithms can help. In this chapter, we are not going to attempt to model a true genetic system. A true genetic model probably wouldn't be practical or beneficial in a real computer game. Instead, the system we are going to discuss is merely inspired by a biological genetic system. In some ways it will be similar, but we won't hesitate to bend the rules if it benefits the game design process. In the real world, species constantly evolve in an attempt to better adapt to their environments. Those that are most fit continue to survive. Charles Darwin proposed this phenomenon in 1859 in his famous work entitled "On the Origin of Species." Those that are most able to survive in their environments are able to pass on their traits to the next generation. The individual traits are encoded in chromosomes. In the next generation, these chromosomes are combined in a process called crossover. Crossover is a recombination of the chromosomes in the offspring. Figure 15-1 illustrates this process. Figure 15-1. CrossoverIn Figure 15-1 we used random letters to represent chromosomes. As you can see, each parent passes half of its genetic material on to the child. However, in the real world this crossover process might not be exact. Random mutations also can take place. This is illustrated in Figure 15-2. Figure 15-2. Random mutationsRandom mutations are nature's way of trying new things. If a random mutation improves the species, it gets passed on to future generations. If not, it doesn't get passed on. This constant recombination of chromosomes from the most successful members of the previous generation, combined with random mutations, creates future generations that are better adapted to survive and flourish in their environments. You can apply this same concept in games. Just as in the biological world, the elements in a game world can be made to evolve and adapt to changing situations. |
| < Day Day Up > |


npm init
name: (my-amazing-app)
version: (1.0.0)
license: (BSD)
About to write to /home/user/my-amazing-app/package.json:
npm install -g grunt
grunt init:gruntfile
Please answer the following:
[?] Is the DOM involved in ANY way? (Y/n)
[?] Will files be concatenated or minified? (Y/n)
[?] Will you have a package.json file? (Y/n)
[?] Do you need to make any changes to the above before continuing? (y/N)
cut to demo
require(["my-handy-dep", "the-ultimate-dep"], function(dep1, dep2){
alert("I don't return anything, HA!");
}
define("mega-module", function() { return "I'm amazing, USE ME" }
define("module-with-depp", ["johnny"], function(JohnnyDepp) {
return "I need" + JohnnyDepp + " in my life"
}
to the command line...
Inspect the web


Referenceprivate-network-access. settings withblock-insecure-private-network-requests.
cors.shaneking.host must mapping private ip.


So Joanna was stuck with more than 17,000 unread emails in her gmail account and I’m struggling to handle it! 😕 So I figured I could use Google Apps Script code to help.
Google Apps Script is a programming language based on [javascript] that’s designed to work with the all the different Google apps (gmail, docs, sheets, etc.). I’ve previously used Google Apps Script to work with Google sheets.
Today, I’ve been writing some code to remove all the unread ebay alerts from Joanna’s account. Here’s the function I wrote to do it:
function removeOldEbayEmails(){
// Define the search string to identify emails
var searchString = "label:inbox is:unread<EMAIL_ADDRESS>older_than:1m subject:NEW!";
// Get all threads matching search string
var threads = getThreadsMatchingSearch(searchString);
// Check whether thread search returned some results
if (typeof threads !== 'undefined' && threads.length > 0) {
// Mark as read and remove threads
moveThreadsToTrash(threads);
}
}
I built the searchString
based gmail’s searching key words (loads of info here). The search string does the following:
label:inbox
- look in your inboxis:unread
- select unread<EMAIL_ADDRESS>- select emails<EMAIL_ADDRESS>older_than:1m
- select emails older than 1 monthsubject:NEW!
- select emails with “NEW!” in the subject line
I wrote the getThreadsMatchingSearch()
function to use a search term to retrieve email threads (email receive/reply chains):
function getThreadsMatchingSearch(searchString){
// Get all threads matching search string
try{
var threads = GmailApp.search(searchString);
Logger.log("Found " + threads.length + " threads (conversations of emails) matching search string (" + searchString + "). Note that size limited to 500.");
}
catch(error){
Logger.log("Warning! Unable to complete email search: " + error.message);
}
return(threads);
}
The getThreadsMatchingSearch()
function uses the GmailApp.search()
function and wraps it in a try catch because Google sets a limit on the number of searches (see more info on the quotas here).
Importantly, the maximum number of threads returned is fixed at
500
. If you’ve got more than this to handle, you can use a trigger to set multiple runs of your function.
Once I have retrieved the threads, I use this function to move them to the trash:
function moveThreadsToTrash(threads, batchSize=100){
// Work through the threads in batches (100 is the limit that batch operations can work on)
for (j = 0; j < threads.length; j += batchSize) {
// Select the current batch of threads
var batch = threads.slice(j, j+batchSize);
// Move the threads to the trash
try{
GmailApp.moveThreadsToTrash(batch);
Logger.log("Moved " + threads.length + " threads to trash.");
}
catch(error){
Logger.log("Warning! Unable to move threads to trash: " + error.message);
}
}
}
As with the GmailApp.search()
function the GmailApp.moveThreadsToTrash()
function has a quota limit so I’ve wrapped it in a try catch. It also has a batch size limit of 100
so I’ve worked through the threads
array in batches of 100 (thanks to this GitHub code).
If you think the above code would be useful, then you’ll need to do the following:
- Open up the Google Apps Script editor (click on the New blank project)
- Paste in the three functions above into the
Code.gs
script - Change the
searchString
to suit your needs - Test run the script to check all is well
- If needed, set a trigger to schedule (click the alarm symbol in the left menu) to running the
removeOldEbayEmails()
function multiple times (note that there are quotas on the number of services you can use in a day, which I quickly ran into)
So far I’ve removed ~8,000 of Joanna’s emails and set my script to run overnight so hopefully I’ll a few more thousand overnight! 🎉 🗑


Through a call to Zoltan_Set_Fn, the function user_return_owned_nodes is registered as the ZOLTAN_OBJ_LIST_FN query function. It returns global and local identifiers for each node owned by a processor.
The function user_return_coords is registered as a ZOLTAN_GEOM_FN query function. Given the global and local identifiers for a node, this function returns the node's coordinates. All the examples exploit the local identifier to quickly locate nodal data. If such an identifier is not available in an application, a search using the global identifier can be performed.
The Basic Example includes the simplest implementation of the query routines. In the query routines, it uses global application data structures and a local numbering scheme for the local identifiers. The User-Defined Data Pointer Example uses only local application data structures; this model is useful if the application does not have global data structures or if objects from more than one data structure are to be passed to Zoltan. Differences between the latter example and the Basic Example are shown in red.
| /* in application's program
file */
#include "zoltan.h" /* Declare a global Mesh data structure. */
main()
/* Register query functions.
*/
void user_return_owned_nodes(void *data,
void user_return_coords(void *data,
|
| ! in application's program
file
module Global_Mesh_Data
program query_example_1
! Register query functions.
subroutine user_return_owned_nodes(data, &
subroutine user_return_coords(data, num_gid_entries, num_lid_entries,
&
|
This model is useful when the application does not have a global data
structure that can be accessed by the query functions. It can also
be used for operations on different data structures. For example,
if an application had more than one mesh, load balancing could be performed
separately on each mesh without having different query routines for each
mesh. Calls to Zoltan_Set_Fn
would define which mesh should be balanced, and the query routines would
access the mesh currently designated by the Zoltan_Set_Fn
calls.
| /* in application's program
file */
#include "zoltan.h" main()
/* Register query functions.
*/
void user_return_owned_nodes(void *data,
/* return global node numbers as global_ids.
*/
void user_return_coords(void *data,
/* cast data pointer to type Mesh_Type.
*/
/* use local_id to address the requested node.
*/
|
| /* included in file
zoltan_user_data.f90 */
! User defined data type as wrapper for Mesh type Zoltan_User_Data_1 type(Mesh_type), pointer :: ptr end type Zoltan_User_Data_1
! in application's program file program query_example_3
! Register query functions.
subroutine user_return_owned_nodes(data, &
! extract the mesh from the
User_Data argument
! return global node numbers as global_ids.
subroutine user_return_coords(data, global_id, local_id, &
! extract the mesh from the
User_Data argument
! use local_id to index into the Nodes array.
|
These query routines are simple because the application does not dynamically
allocate memory for each node. Such dynamic allocation would have
to be accounted for in the ZOLTAN_OBJ_SIZE_FN,
ZOLTAN_PACK_OBJ_FN,
and ZOLTAN_UNPACK_OBJ_FN routines.
| main()
{ ... /* Register migration query functions. */ /* Do not register a data pointer with the functions; */ /* the global Mesh data structure will be used. */ Zoltan_Set_Fn(zz, ZOLTAN_OBJ_SIZE_FN_TYPE, (void (*)()) user_size_node, NULL); Zoltan_Set_Fn(zz, ZOLTAN_PACK_OBJ_FN_TYPE, (void (*)()) user_pack_node, NULL); Zoltan_Set_Fn(zz, ZOLTAN_UNPACK_OBJ_FN_TYPE, (void (*)()) user_unpack_node, NULL); ... } int user_size_node(void *data,
void user_pack_node(void *data,
*ierr = ZOLTAN_OK;
void user_unpack_node(void *data, int num_gid_entries,
*ierr = ZOLTAN_OK;
|


Go back to your Home Page
Benco Decision Page
Submitted Information:
Optional
Final Approval
Reject
Submit
Logout


Back
Start Over
1. Design your slides, 2.  Press Play and review your rap!
Your browser does not support the
audio
element.
<< Go to Beginning
Play
Stop
00:00 / 00:00
Search Giphy
Search Bing


Team Tiger
home
Resources
Home
Resources
menu
Trail Search
Find trails accessible by public transit
Start Your Search Below
Starting Address
Trail Destination: City
State
Select State
Alabama
Alaska
Arizona
Arkansas
California
Colorado
Connecticut
Delaware
Florida
Georgia
Hawaii
Idaho
Illinois
Indiana
Iowa
Kansas
Kentucky
Louisiana
Maine
Maryland
Massachusetts
Michigan
Minnesota
Mississippi
Missouri
Montana
Nebraska
Nevada
New Hampshire
New Jersey
New Mexico
New York
North Carolina
North Dakota
Ohio
Oklahoma
Oregon
Pennsylvania
Rhode Island
South Carolina
South Dakota
Tennessee
Texas
Utah
Vermont
Virginia
Washington
Washington,D.C
West Virginia
Wisconsin
Wyoming
Radius
Choose your option
5 miles
10 miles
15 miles
20 miles
25 miles
30 miles
40 miles
50 miles
75 miles
100 miles
Search
Trail Name
City
State
Activities
Transit Availability
Current Weather
Transit Time
Transit Instructions
Transit Directions Map
Let us help you find your next adventure, while reducing your carbon footprint
Click Here for Resources and Tips for Trail Expeditions
Be Safe!


The word pineapple in English was first recorded in 1398, when it was originally used to describe the
reproductive organs of conifer trees (now termed pine cones). When European explorers discovered this
tropical fruit they called them pineapples (term first recorded in that sense in 1664) because of their
resemblance to what is now known as the pine cone. The term pine cone was first recorded in 1694, and
was used to replace the original meaning of pineapple.


|
|
Rock, Paper or Scissor Game - Train and Classify [Volume 2] |
| Tags | train_and_classify☁machine-learning☁features☁extraction |
Previous Notebooks that are part of "Rock, Paper or Scissor Game - Train and Classify" module
Following Notebooks that are part of "Rock, Paper or Scissor Game - Train and Classify" module
|
☌
After the presentation of data acquisition conditions on the previous
Jupyter Notebook
, we will follow our Machine Learning Journey by specifying which features will be extracted.
"Features" are numerical parameters extracted from the training data (in our case physiological signals acquired when executing gestures of "Rock, Paper or Scissor" game), characterizing objectively the training example. A good feature is a parameter that has the ability to separate the different classes of our classification system, i.e, a parameter with a characteristic range of values for each available class. |
Starting Point (Setup)
List of Available Classes:
| Paper | Rock | Scissor |
Acquired Data:
Protocol/Feature Extraction
Extracted Features
Formal definition of parameters
☝ | Maximum Sample Value of a set of elements is equal to the last element of the sorted set
☉ | $\mu = \frac{1}{N}\sum_{i=1}^N (sample_i)$
☆ | $\sigma = \sqrt{\frac{1}{N}\sum_{i=1}^N(sample_i - \mu_{signal})^2}$
☌ | $zcr = \frac{1}{N - 1}\sum_{i=1}^{N-1}bin(i)$
☇ | $\sigma_{abs} = \sqrt{\frac{1}{N}\sum_{i=1}^N(|sample_i| - \mu_{signal_{abs}})^2}$
☍ | $m = \frac{\Delta signal}{\Delta t}$
... being $N$ the number of acquired samples (that are part of the signal), $sample_i$ the value of the sample number $i$, $signal_{abs}$ the absolute signal, $\Delta signal$ is the difference between the y coordinate of two points of the regression curve and $\Delta t$ the difference between the x (time) coordinate of the same two points of the regression curve.
... and
$bin(i)$ a binary function defined as:
$bin(i) = \begin{cases} 1, & \mbox{if } signal_i \times signal_{i-1} \leq 0 \\ 0, & \mbox{if } signal_i \times signal_{i-1}>0 \end{cases}$
0 - Import of the needed packages for a correct execution of the current Jupyter Notebook
# Package that ensures a programatically interaction with operating system folder hierarchy.
from os import listdir
# Package used for clone a dictionary.
from copy import deepcopy
# Functions intended to extract some statistical parameters.
from numpy import max, std, average, sum, absolute
# With the following import we will be able to extract the linear regression parameters after
# fitting experimental points to the model.
from scipy.stats import linregress
# biosignalsnotebooks own package that supports some functionalities used on the Jupyter Notebooks.
import biosignalsnotebooks as bsnb
1 - Loading of all signals that integrates our training samples (storing them inside a dictionary)
The acquired signals are stored inside a folder which can be accessed through a relative path "../../signal_samples/classification_game/data"1.1 - Identification of the list of files/examples
# Transposition of data from signal files to a Python dictionary.
relative_path = "../../signal_samples/classification_game"
data_folder = "data"
# List of files (each file is a training example).
list_examples = listdir(relative_path + "/" + data_folder)
The first digit of filename identifies the class to which the training example belongs and the second digit is the trial number ( <class>_<trial>.txt )
1.2 - Access the content of each file and store it on the respective dictionary entry
# Initialization of dictionary.
signal_dict = {}
# Scrolling through each entry in the list.
for example in list_examples:
if ".txt" in example: # Read only .txt files.
# Get the class to which the training example under analysis belong.
example_class = example.split("_")[0]
# Get the trial number of the training example under analysis.
example_trial = example.split("_")[1].split(".")[0]
# Creation of a new "class" entry if it does not exist.
if example_class not in signal_dict.keys():
signal_dict[example_class] = {}
# Load data.
complete_data = bsnb.load(relative_path + "/" + data_folder + "/" + example)
# Store data in the dictionary.
signal_dict[example_class][example_trial] = complete_data
1.3 - Definition of the content of each channel
# Channels (CH1 Flexor digitorum superficialis | CH2 Aductor policis | CH3 Accelerometer axis Z).
emg_flexor = "CH1"
emg_adductor = "CH2"
acc_z = "CH3"
2 - Extraction of features according to the signal under analysis
The extracted values of each feature will be stored in a dictionary with the same hierarchical structure as "signal_dict"# Clone "signal_dict".
features_dict = deepcopy(signal_dict)
# Navigate through "signal_dict" hierarchy.
list_classes = signal_dict.keys()
for class_i in list_classes:
list_trials = signal_dict[class_i].keys()
for trial in list_trials:
# Initialise "features_dict" entry content.
features_dict[class_i][trial] = []
for chn in [emg_flexor, emg_adductor, acc_z]:
# Temporary storage of signal inside a reusable variable.
signal = signal_dict[class_i][trial][chn]
# Start the feature extraction procedure accordingly to the channel under analysis.
if chn == emg_flexor or chn == emg_adductor: # EMG Features.
# Converted signal (taking into consideration that our device is a "biosignalsplux", the resolution is
# equal to 16 bits and the output unit should be in "mV").
signal = bsnb.raw_to_phy("EMG", device="biosignalsplux", raw_signal=signal, resolution=16, option="mV")
# Standard Deviation.
features_dict[class_i][trial] += [std(signal)]
# Maximum Value.
features_dict[class_i][trial] += [max(signal)]
# Zero-Crossing Rate.
features_dict[class_i][trial] += [sum([1 for i in range(1, len(signal))
if signal[i]*signal[i-1] <= 0]) / (len(signal) - 1)]
# Standard Deviation of the absolute signal.
features_dict[class_i][trial] += [std(absolute(signal))]
else: # ACC Features.
# Converted signal (taking into consideration that our device is a "biosignalsplux", the resolution is
# equal to 16 bits and the output unit should be in "g").
signal = bsnb.raw_to_phy("ACC", device="biosignalsplux", raw_signal=signal, resolution=16, option="g")
# Average value.
features_dict[class_i][trial] += [average(signal)]
# Standard Deviation.
features_dict[class_i][trial] += [std(signal)]
# Maximum Value.
features_dict[class_i][trial] += [max(signal)]
# Zero-Crossing Rate.
features_dict[class_i][trial] += [sum([1 for i in range(1, len(signal))
if signal[i]*signal[i-1] <= 0]) / (len(signal) - 1)]
# Slope of the regression curve.
x_axis = range(0, len(signal))
features_dict[class_i][trial] += [linregress(x_axis, signal)[0]]
Each training array has the following structure/content:
[$\sigma_{emg\,flexor}$, $max_{emg\,flexor}$, $zcr_{emg\,flexor}$, $\sigma_{emg\,flexor}^{abs}$, $\sigma_{emg\,adductor}$, $max_{emg\,adductor}$, $zcr_{emg\,adductor}$, $\sigma_{emg\,adductor}^{abs}$, $\mu_{acc\,z}$, $\sigma_{acc\,z}$, $max_{acc\,z}$, $zcr_{acc\,z}$, $m_{acc\,z}$]
We reach the end of the "Classification Game" second volume. Now all the features of training examples are in our possession. If you are feeling your interest increasing, please jump to the next volume
We hope that you have enjoyed this guide. biosignalsnotebooks is an environment in continuous expansion, so don"t stop your journey and learn more with the remaining Notebooks !


The $.mobile.navigate
method and the navigate
event form the foundation of jQuery Mobile's navigation infrastructure. As such, they can function outside the confines of jQuery Mobile as a clean and intuitive navigation/history API.
jQuery Mobile includes a navigation system to load pages into the DOM via AJAX, enhance the new content, then display pages with a rich set of animated transitions. The navigation system uses progressive enhancement to automatically 'hijack' standard links and form submissions and route them as an AJAX request.
One of jQuery Mobile's core features is the ability to load and view content from disparate pages into the initial document with support for standard navigation methods like anchors and the back button. To accomplish this the library has progressive support for hashchange
and popstate
coupled with internal history tracking which can be used à la carte.
An example use case would be something like Twitter's web client. The first step is to hijack link clicks on the page and use the URL that represents that UI state to track history with $.mobile.navigate
. It's at this point that any additional information about the UI necessary for operation on return using the back button would be stored (see, foo
property of the object argument to the navigate method).
// Define a click binding for all anchors in the page
$( "a" ).on( "click", function( event ){
// Prevent the usual navigation behavior
event.preventDefault();
// Alter the url according to the anchor's href attribute, and
// store the data-foo attribute information with the url
$.mobile.navigate( this.attr( "href" ), {
foo: this.attr("data-foo")
});
// Hypothetical content alteration based on the url. E.g, make
// an ajax request for JSON data and render a template into the page.
alterContent( this.attr("href") );
});
Next, a navigate
event binding helps in responding to backward and forward navigation via the browsers history API. Here the alterContent
function can address the direction in which the browser is navigating as well as any additional information stored on the data object when $.mobile.navigate
was invoked to store the corresponding history entry.
// Respond to back/forward navigation
$( window ).on( "navigate", function( event, data ){
if( data.state.foo ){
// Make use of the arbitrary data stored
}
if( data.state.direction == "back" ) {
// Make use of the directional information
}
// reset the content based on the url
alterContent( data.state.url );
});
jQuery Mobile provides the navigate
event as a wrapper for both hashchange
and popstate
. That is, where a binding to both events would be required to support browsers with and without popstate
only one binding to navigate
is necessary. In this exmaple, altering the hash will trigger popstate
or hashchange
event depending on the browser, but only a single navigate
binding is necessary. Make sure to use the back button after alterting the hash to see that the event is fired in both cases.
Note: when viewing the console output, some browsers (eg, Chrome) fire a popstate on the initial page load
// Bind to the navigate event
$( window ).on( "navigate", function() {
console.log( "navigated!" );
});
// Bind to the click of the example link
$( "#event-example" ).click(function( event ) {
event.preventDefault();
location.hash = "foo";
});
Event Example
jQuery Mobile provides the $.mobile.navigate
method as a means to track history and receive additional information along with navigate
events. In this example, when the method example link is clicked, the url will be changed twice. The first time will it will store additional aribitrary information along with the URL and hash stored by the method. The second time it will simply change the url and store the URL and hash. When the browser moves backward through history the navigate
event is triggered as in the event example above but along with it comes information about the direction of history traversal, the url, the hash, and the arbitrary data stored with the first call to the navigate method.
Note: The arbitrary state properties must be chosen carefully to avoid the url, hash, and direction properties. This is a shortcoming that will be addressed in future releases.
// Bind to the click of the example link
$( "#method-example" ).click(function( event ) {
// Append #bar
$.mobile.navigate( "#bar", {
info: "info about the #bar hash"
});
// Replace #bar with #baz
$.mobile.navigate( "#baz" );
// Log the results of the navigate event
$( window ).on( "navigate", function( event, data ){
console.log( data.state.info );
console.log( data.state.direction );
console.log( data.state.url );
console.log( data.state.hash );
});
// Go back to pop the state for #bar and log it
window.history.back();
});
Method Example


I've created a VPN certificate for lfox and I've emailed it to<EMAIL_ADDRESS>Red Alert
Bruce Banner2:08 PM
We've got monitoring alerts all over the place. We're under a DDOS attack.
Bruce Banner2:08 PM
!friday red alert
Friday von BotBOT2:08 PM
RED ALERT! RED ALERT!
Friday von BotBOT2:08 PM
All ingress network traffic has been disallowed at the gateway. Avengers.com now points to a static maintenance site.
Why ChatOps?
Build Culture
Improved Efficiency
Increased collaboration
Training
Security
Shared Knowledge and Understanding
Build Culture
Common interests
Celebrations
Common humor
What is unique?
Processes
Cat pictures
Natasha Romanoff2:08 PM
!friday show me a cat picture
Friday von BotBOT2:08 PM
Look at this cute cat!
Dog pictures
Natasha Romanoff2:08 PM
!friday show me a dog picture
Friday von BotBOT2:08 PM
Look at this cute dog!
Jedi Code
Tony Stark2:08 PM
!friday jedi code
Friday von BotBOT2:08 PM
There is no emotion, there is peace.
There is no ignorance, there is knowledge.
There is no passion, there is serenity.
There is no chaos, there is harmony.
There is no death, there is the Force.
Common Interests
Tony Stark2:08 PM
!friday current walking totals
Friday von BotBOT2:08 PM
Here are the top 5 people who have logged steps so far this month:
I have found conference room A412 in Avengers Tower free on Friday, June 25 at 9:30 AM. Shall I book it? request=1a231agq
Natasha Romanoff2:12 PM
!friday book-it request=1a231agq
Friday von BotBOT2:09 PM
I have booked conference room A412 in Avengers Tower at Friday, June 25 at 9:30 AM Avengers review of Sprint 22. I will email invitations to team and stakeholders shortly.
Process
Natasha Romanoff2:08 PM
!friday order food team=avengers sprint=22
Friday von BotBOT2:09 PM
I have placed a standard catering order to be delivered in room A412 in Avengers Tower at Friday, June 25 at 9:30 AM for the Avengers review of Sprint 22.
Build #2412 of the quinjet app reported a compilation failure.
The last checkin of the code came from Bruce Banner at 1:55 PM on April 9, 2017.
Bruce Banner2:12 PM
Ooops. I was afraid of that. I'll fix it now everyone.
Production down
Friday von BotBOT2:08 PM
Engine number 3 has stopped functioning. Sensors have detected an explosion in the vacinity.
Nick Fury2:10 PM
Where is Tony? He should be able to get that started again.
Natasha Romanoff2:11 PM
I just called him. He has a 3 minute ETA.
Nick Fury2:12 PM
OK. Steve Rogers, can you please get down to Deck 7 and be ready to help Tony when he gets onsite?
Collaboration
Nick Fury2:08 PM
It looks like Graviton has launched another sneak attack against the Statue of Liberty. This is starting to become a problem.
Tony Stark2:09 PM
I just created a new sensor for the Quinjet that detects anomolies in gravimetic readings. It's still beta, though.
Nick Fury2:09 PM
Is it going to cause a thermal inversion in the thrusters?
Tony Stark2:11 PM
It shouldn't.
Nick Fury2:12 PM
Good enough for me.
Nick Fury2:12 PM
!friday deploy app=quinjet version=beta
Planning Poker
Nick Fury2:08 PM
!friday planning poker ticket=QUINJET-412.
Friday von BotBOT2:08 PM
I am now taking private messages for sizing of QUINJET-412. The user story is "As a quinjet pilot, I need microrepulsors installed to gain better attitude control when flying in thunderstorms to improve safety."
Bids close in 2 minutes.
Friday von BotBOT2:10 PM
Bids are in for QUINJET-412.
Average size: 8 story points
Largest size: 16 story points from Nick Fury
Smallest size: 2 story points from Tony Stark
Training
Help ramp up easier
Show live examples
Central point of help and information
Training
Natasha Romanoff2:08 PM
Can someone tell me how I can get the application logs from the quinjet server? I need to debug an issue with the surveillance systems.
I'm sorry, but you need approval from operations to deploy to production. Request=18AZ231A1
Nick Fury2:12 PM
!friday approve request=18AZ231A1
Friday von BotBOT2:12 PM
Bruce Banner, Nick Fury has approved. Deploying quinjet to prod.
Shared Understanding and Knowledge
Check deployments
Natasha Romanoff2:08 PM
Does anyone know what is deployed to dev1?
Friday von BotBOT2:08 PM
Bruce Banner deployed Quinjet <IP_ADDRESS> Build #102 to dev1 on 04/02/2017 at 12:47 P.M.
Keeping abreast of news
Ansible BlogBOT2:08 PM
Patching BADLOCK with Ansible
If you've been following recent security news, you may have heard of the Badlock vulnerability in the protocols used by the Microsoft Windows Active Directory infrastructure. This vulnerability could lead to a man-in-the-middle attacker intercepting traffic between a client and the Active Directory server, and then impersonating...
That's awesome. It's exactly what I've been looking for to address badlock.
React to the world
Friday von BotBOT2:08 PM
@EverydayCitizen has mentioned @Avengers on Twitter. Here is the tweet: Ugh. @StormGod just struck my car with lightning during an @avengers fight! #brokenwindshield #damagecontrol #avengersareamenace
Nick Fury2:08 PM
AGAIN?!?
Tony Stark2:08 PM
I saw the whole thing. Not his fault. Loki tricked him.
Nick Fury2:08 PM
You all still have to be careful. I'll go handle this, but next time, people are going to have to sign the accords. Seriously.
Human Resources
Tony Stark2:08 PM
!friday How much PTO do I have left?
Friday von BotBOT2:08 PM
You can find out how much PTO you have left on our company HR portal.


Previous: -f90
The list consists of keywords separated by commas or colons. There are three special keywords: all to turn on all the warnings about nonstandard extensions, none to turn them all off, and help to print the list of all the keywords with a brief explanation of each. If list is omitted, -f95 is equivalent to -f95=all, and -nof95 is equivalent to -f95=none. The warning keywords with their meanings are as follows.
There is one other Fortran 77 syntax feature that was deleted in Fortran 95, namely branching to an ENDIF from outside the IF block. However, ftnchek is unable to analyze program flow, and so it does not provide a warning for this.
See also: -f77, -f90, -portability, -pretty, -style, -wordsize.
Next: -help


networkx.generators.geometric.navigable_small_world_graph¶
-
navigable_small_world_graph
(n, p=1, q=1, r=2, dim=2, seed=None)[source]¶ Return a navigable small-world graph.
A navigable small-world graph is a directed grid with additional long-range connections that are chosen randomly.
[…] we begin with a set of nodes […] that are identified with the set of lattice points in an \(n \times n\) square, \(\{(i, j): i \in \{1, 2, \ldots, n\}, j \in \{1, 2, \ldots, n\}\}\), and we define the lattice distance between two nodes \((i, j)\) and \((k, l)\) to be the number of “lattice steps” separating them: \(d((i, j), (k, l)) = |k - i| + |l - j|\).
For a universal constant \(p >= 1\), the node \(u\) has a directed edge to every other node within lattice distance \(p\)—these are its local contacts. For universal constants \(q >= 0\) and \(r >= 0\) we also construct directed edges from \(u\) to \(q\) other nodes (the long-range contacts) using independent random trials; the \(i`th directed edge from :math:`u\) has endpoint \(v\) with probability proportional to \([d(u,v)]^{-r}\).
—[1]
Parameters: - n (int) – The length of one side of the lattice; the number of nodes in the graph is therefore \(n^2\).
- p (int) – The diameter of short range connections. Each node is joined with every other node within this lattice distance.
- q (int) – The number of long-range connections for each node.
- r (float) – Exponent for decaying probability of connections. The probability of connecting to a node at lattice distance \(d\) is \(1/d^r\).
- dim (int) – Dimension of grid
- seed (integer, random_state, or None (default)) – Indicator of random number generation state. See Randomness.
References
[1] J. Kleinberg. The small-world phenomenon: An algorithmic perspective. Proc. 32nd ACM Symposium on Theory of Computing, 2000.


In this section we describe the generic algorithms in the C++ Standard Library that are specific to ordered collections. These algorithms are summarized in Table 20:
| Algorithm | Purpose |
Sorting algorithms | |
partial_sort() | Sorts only part of sequence |
partial_sort_copy() | Partial sorts into copy |
sort() | Rearranges sequence, places in order |
stable_sort() | Sorts, retaining original order of equal elements |
Nth largest element algorithm | |
nth_element() | Locates nth largest element |
Binary search algorithms | |
binary_search() | Searches, returning a boolean value |
equal_range() | Searches, returning both positions |
lower_bound() | Searches, returning first position |
upper_bound() | Searches, returning last position |
Merge ordered sequences algorithm | |
merge() | Combines two ordered sequences |
Set operations algoithms | |
includes() | Compares two sorted sequences and returns true if every element in the range [first2, last2) is contained in the range [first1, last1) |
set_intersection() | Forms intersection of two sets |
set_difference() | Forms difference of two sets |
set_symmetric_difference() | Forms symmetric difference of two sets |
set_union() | Forms union of two sets |
Heap operations algorithms | |
make_heap() | Turns a sequence into a heap |
push_heap() | Adds a new value to the heap |
pop_heap() | Removes largest value from the heap |
sort_heap() | Turns heap into sorted collection |
Ordered collections can be created using the C++ Standard Library in a variety of ways. For example:
The containers set, multiset, map, and multimap are ordered collections by definition.
A list can be ordered by invoking the std::sort() member function.
A vector, deque, or ordinary C++ array can be ordered by using one of the sorting algorithms described in Section 14.2.
Like the generic algorithms described in Section 13, the algorithms described here are not specific to any particular container class. This means that they can be used with a wide variety of types. However, many of them do require the use of random-access iterators. For this reason they are most easily used with vectors, deques, or ordinary arrays.
Almost all the algorithms described in this section have two versions. The first version uses operator<() for comparisons appropriate to the container element type. The second, and more general, version uses an explicit comparison function object, which we will write as Compare. This function object must be a binary predicate (see Section 3.3). Since this argument is optional, we will write it within square brackets in the description of the argument types.
A sequence is considered ordered if for every valid or denotable iterator i with a denotable successor j, the comparison Compare(*j, *i) is false. Note that this does not necessarily imply that Compare(*i, *j) is true. It is assumed that the relation imposed by Compare is transitive, and induces a total ordering on the values.
In the descriptions that follow, two values x and y are said to be equivalent if both Compare(x, y) and Compare(y, x) are false. Note that this need not imply that x == y.
As with the algorithms described in Chapter 13, before you can use any of these algorithms in a program you must include the algorithm header file:
#include <algorithm>


LETTER: Whistleblower did the right thing
by Jim Telschow Las VegasIn his Saturday letter about the whistleblower, Mickey Lohf misses the point. The whistleblower simply brought the matter to the attention of Congress. The impeachment hearings are to determine what actually happened. The only disgrace is what the president allegedly did.


Become owner and investor of properties around the world for as little as 1 $. All secure and based on latest state of the art blockchain technology
We help to tokenize real estate projects into tradable NFTs and provide secondary decentralized market. We split Real Estate project or debt into multiple tradable instruments and allow investors to decrease their overal risk and improve their return on cash.
See MarketplaceInvestors from around the world were limited in terms of investing into reals assets as they would usually need to buy whole projects and houses which costs millions.
With Drem NFTs for Real Estate projects are split into small stakes and enable small scale investors approach big scale projects and earn extra returns associated with these projects.
With traditional real assets Investors also face an issue with illiquid projects (no easy way to exit and invest elsewhere). DREM is here to help here as well. On each project in DREM portfolio we create its own market which allows investor to easy sell stake in their assets in Exchange for stable coins (USD T), which are easily convertible into dollars.
Investors now do not face risks with each individual project where they would need to park excessive parts of their income into single project (house). They can easily split their investment into multiple projects with smaller stakes and diversity risk of default of single one project.
Investors can now easily own part of assets all around the world without need to understand international laws
All financing and investing works in decentralized finance space.


Python Ping Driver
This driver uses the 'management' interface, where getPorts and getProperties methods are called.
Discover function is supported, but really only returns a 'success' verdict, and no information is
really discovered. The polling mechanism invokes the getPorts method which pings the ip address
specified in the 'ipAddress' property. This driver works both on Linux and Windows agents
Tags: Drivers, Management


Productivity
Work
Leisure
Add a task:
Deadline:
Category:
×
Category
Color
Completed
Task
Deadline
Category
Date Added


My name is Dmitriy, I am beginner Java dev and senior student in NTUU KPI on
faculty of information technologies. I am a person who has high passion in
IT. One of my dreams is to become a great developer that makes great programs,
and now I am working toward it.
I love to create things since my childhood thus I found myself in programming.
Especially I like functional programming.
I am always ready to accept any challenges in this ever changing world, and
will try my best effort to become the TOP programmer.
Dmitriy Vasilenko
Kyiv, 02140 Ukraine
+38(067) 194-2849
<EMAIL_ADDRESS>Computer Engineer • September 2015 untill now
Currently I'am student of KPI, studying on the Faculty of Informatics and Computer Technology on Computer engineer's specialty. During my second year i was involved in the development of the Big Data service, yet due to the lack of investment it was canceled.
Junior Engineer/Developer • February 2017 - July 2017
In WDC I mostly worked as data analyst and system administrator. My main tasks were creating and embedding algorithms(MapReduce and etc) in the Hadoop system which was also maintaining. Stopped working due to the end of the working contract.
Feel free to contact me about anything at all,call me or just write email, message in facebook/telegram. I am avalible for freelance, full/part time work.


Check Box
This is a checkbox
Swimming Pool
fitness center
restaurant
children's activities
complimentary breakfast
Meeting facilities
Pets allowed


Use 2–10 mL of a saturated E. coli culture (see page 8, table 3), pellet cells in a standard benchtop microcentrifuge
for 30 s at > 12,000 x g.
Discard the supernatant and remove as much of the liquid as possible.
> 12,000 x g, 30 s
2 Cell lysis
Add 150 μL Buffer A1. Resuspend the cell pellet completely by vortexing or pipetting up and down. Make sure no cell
clumps remain before addition of Buffer A2!
Attention: Check Buffer A2 for precipitated SDS. If a white precipitate is visible, warm the buffer for several
minutes at 30–40 °C until precipitate is dissolved completely. Cool buffer down to room temperature (18–25 °C) before
use.
Add 250 μL Buffer A2. Mix gently by inverting the tube 5 times. Do not vortex to avoid shearing of genomic DNA.
Incubate at room temperature (18–25 °C) for up to 2 min or until lysate appears clear.
Add 350 μL Buffer A3. Mix thoroughly by inverting the tube until LyseControl has turned colorless throughout the
lysate without any traces of blue color. Do not vortex to avoid shearing of genomic DNA!
+ 150 μL A1
Resuspend
+ 250 μL A2
Mix
RT, 2 min
+ 350 μL A3
Mix
3 Clarification of lysate
Centrifuge for 3 min at full speed (> 12,000 x g).
> 12,000 x g, 3 min
4 Bind DNA
Place a NucleoSpin® Plasmid EasyPure Column into a Collection Tube (2 mL) and decant the supernatant from step 3 onto
the column.
Centrifuge for 30 s at 1,000–2,000 x g.
Discard flow-through and place the spin column back into the collection tube.
Load supernatant
1,000– 2,000 x g, 30 s
5 Wash and dry silica membrane
Add 450 μL Buffer AQ (supplemented with ethanol, see section 3).
Centrifuge for 1 min at full speed (> 12,000 x g).
Very carefully discard the collection tube and the flow- through and make sure the spin cup outlet does not touch the
wash buffer surface. Otherwise repeat the centrifugation step.
Note: To reduce ethanol carry-over to a minimum for better performance in downstream applications, incubate spin cup
for 10–15 min at 37 °C to dry silica membrane completely.
+ 450 μL AQ
> 12,000 x g, 1 min
6 Elute DNA
Place the NucleoSpin® Plasmid EasyPure Column in a 1.5 mL microcentrifuge tube (not provided) and add 50 μL Buffer
AE.
Incubate for 1 min at room temperature (18–25 °C).
Centrifuge for 1 min at full speed (> 12,000 x g).
Note: For more efficient elution procedures and alternative elution buffer (e.g., TE buffer or water) see section
2.4.
+ 50 μL AE
RT, 1 min
> 12,000 x g, 1 min
1 Preparation of starter culture
Inoculate a 3–5 mL starter culture of LB medium with a single colony picked from a freshly streaked agar plate. Make
sure that plate and liquid culture contain the appropriate selective antibiotic to guarantee plasmid propagation (see
section 4.3 for more information). Shake at 37 °C and ~ 300 rpm for ~ 8 h.
2 Preparation of large overnight culture
Inoculate an overnight culture by diluting the starter culture 1 / 1000 into the given volumes of LB medium also
containing the appropriate selective antibiotic. Grow the culture overnight at 37 °C and ~ 300 rpm for 12–16 h.
100 mL 300 mL
3 Harvest of bacterial cells
Measure the cell culture OD 600 and determine the recommended culture volume.
V [mL] = 400 / OD 600
V [mL] = 1200 / OD
600
Pellet the cells by centrifugation at 4,500–6,000 x g for ≥ 10 min at 4 °C and discard the supernatant completely.
Note: Optimal lysis conditions are achieved by a unique ratio of lysis buffer RES, LYS, and NEU to the cell mass. See
section 4.5 for recommendations concerning the optimal pelleted culture volume for cells containing high-copy
plasmids and section 4.6 for recommendations concerning cells with low-copy plasmids. Read section 4.5 carefully as
excess cell input will result in reduced yield. The recommended culture volumes below are calculated for a final OD
600 of around 4.
4 Resuspension (Buffer RES)
Resuspend the cell pellet completely in Resuspension Buffer RES + RNase A by pipetting the cells up and down or
vortexing the cells.
For an efficient cell lysis it is important that no clumps remain in the suspension.
Note: Increase RES buffer volume proportionally if more than the recommended cell mass is used (see section 4.8 for
information on optimal cell lysis and section 4.9 regarding difficult-to-lyse strains).
5
Cell lysis (Buffer LYS) !
Check Lysis Buffer LYS for precipitated SDS prior to use. If a white precipitate is visible, warm the buffer for
several minutes at 30–40 °C until precipitate is dissolved completely. Cool buffer down to room temperature (18–25
°C).
Add Lysis Buffer LYS to the suspension.
Mix gently by inverting the tube 5 times. Do not vortex as this will shear and release contaminating chromosomal DNA
from cellular debris into the suspension.
Incubate the mixture at room temperature (18–25 °C) for 5 min.
Warning: Prolonged exposure to alkaline conditions can irreversibly denature and degrade plasmid DNA and liberate
contaminating chromosomal DNA into the lysate.
Note: Increase LYS buffer volume proportionally if more than the recommended cell mass is used (see section 4.8 for
information on optimal cell lysis).
8 mL 12 mL
6 Equilibration (Buffer EQU)
Equilibrate a NucleoBond® Xtra Column together with the inserted column filter with Equilibration Buffer EQU.
Apply the buffer onto the rim of the column filter as shown in the picture and make sure to wet the entire filter.
Allow the column to empty by gravity flow. The column does not run dry.
12 mL 25 mL
7
Neutralization (Buffer NEU) !
Add Neutralization Buffer NEU to the suspension and immediately mix the lysate gently by inverting the tube until
blue samples turns colorless completely! Do not vortex.
The flask or tube used for this step should not be filled more than two thirds to allow homogeneous mixing. Make sure
to neutralize completely to precipitate all the protein and chromosomal DNA. The lysate should turn from a slimy,
viscous consistency to a low viscosity, homogeneous suspension of an off-white flocculate. In addition, LyseControl
should turn completely colorless without any traces of blue.
Immediately proceed with step 8. An incubation of the lysate is not necessary.
Note: Increase NEU buffer volume proportionally if more than the recommended cell mass is used (see section 4.8 for
information on optimal cell lysis).
8 mL 12 mL
8
Clarification and loading !
Make sure to have a homogeneous suspension of the precipitate by inverting the tube 3 times directly before applying
the lysate to the equilibrated NucleoBond® Xtra Column Filter to avoid clogging of the filter.
The lysate is simultaneously cleared and loaded onto the column. Refill the filter if more lysate has to be loaded
than the filter is able to hold. Allow the column to empty by gravity flow.
Alternative: The precipitate can be removed by centrifugation at ≥ 5,000 x g for at least 10 min, for example if more
than double the recommended cell mass was used. If the supernatant still contains suspended matter transfer it to a
new tube and repeat the centrifugation, preferably at higher speed, or apply the lysate to the equilibrated
NucleoBond® Xtra Column Filter.
This clarification step is extremely important since residual precipitate may clog the NucleoBond® Xtra Column. To
load the column you can either apply the cleared lysate to the equilibrated filter or remove the unused filter
beforehand. Allow the column to empty by gravity flow.
Note: You may want to save all or part of the flow-through for analysis (see section 8.1).
Midi Maxi
9
1st Wash: Column filter and column !
(Buffer EQU)
Wash the NucleoBond® Xtra Column Filter and Nu-cleoBond® Xtra Column with Equilibration Buffer EQU.
Apply the buffer to the funnel shaped rim of the filter and make sure it is washing out the lysate which is remaining
in the filter. Omitting this step or just pouring the buffer directly inside the funnel may reduce plasmid yield.
5 mL 15 mL
10 Filter removal
Either pull out the NucleoBond® Xtra Column Filter or discard it by turning the column upside down.
11
2nd Wash: Column only (Buffer WASH) !
Wash the NucleoBond® Xtra Column with Wash Buffer WASH. It is important to remove the column filter before applying
the washing buffer to avoid low purity.
8 mL 25 mL
12 Elution (Buffer ELU)
Elute the plasmid DNA with Elution Buffer ELU. Collect the eluate in a 15 mL or 50 mL centrifuge tube (not provided).
Note: Preheating Buffer ELU to 50 °C prior to elution may improve yields for large constructs such as BACs.
Optional: Determine plasmid yield by UV spectrophotometry in order to adjust desired concentration of DNA in step 15
and calculate the recovery after precipitation.
5 mL 15 mL !
NucleoBond® Xtra Midi / Maxi Plus:
Proceed with step 13 for the centrifugation protocol after isopropanol precipitation or continue with section 7.3 for
plasmid concentration and desalting by using the NucleoBond® Finalizer (NucleoBond® Xtra Midi Plus) or NucleoBond®
Finalizer Large (NucleoBond® Xtra Maxi Plus).
13 Precipitation
Add room-temperature isopropanol to precipitate the eluted plasmid DNA.
Vortex thoroughly!
Centrifuge at ≥ 4,500 x g for ≥ 15 min at ≤ room temperature, preferably at 15,000 x g for 30 min at 4 °C. Carefully
discard the supernatant.
3.5 mL 10.5 mL
14 Washing and drying
Add room-temperature 70 % ethanol to the pellet.
2 mL 14 mL
Centrifuge at ≥ 4,500 x g, preferably ≥ 15,000 x g for 5 min at room temperature (18–25 °C).
Carefully remove ethanol completely from the tube with a pipette tip. Allow the pellet to dry at room temperature
(18–25 °C).
Note: Plasmid DNA might be harder to dissolve when over-dried.
10–15 min 15–30 min
15 Reconstitution
Dissolve the DNA pellet in an appropriate volume of buffer TE or sterile H2O.
Depending on the type of centrifugation tube, dissolve under gentle pipetting up and down or constant spinning in a
sufficient amount of buffer for 10–60 min (3D-shaker).
Determine plasmid yield by UV spectrophotometry. Confirm plasmid integrity by agarose gel electrophoresis.
Measure 1 gram of agarose.
Add 100 mL of 1x TAE buffer.
Microwave for 1-3 min until the agarose is completely dissolved.
Let the agarose cool down to around 50 degrees celcius.
Add 100 µL GelRed, swirl the flask, and pour slowly into a geltray with well comb.
Let the gel solidify for 20 to 30 minutes at room temperature
Load DNA samples mixed with loading buffer / loading dye
Run at 80 to 150 V for 1 to 2 hours (dependent on gel percentage and voltage used)
Thaw a tube of NEB 10-beta Competent E. coli cells on ice for 10 minutes.
Mix gently and carefully pipette 50 µl of cells into a transformation tube on ice.
Add 1-5 µl containing 1 pg-100 ng of plasmid DNA to the cell mixture. Carefully flick the tube 4-5 times to mix
cells and DNA. Do not vortex.
Place the mixture on ice for 30 minutes. Do not mix.
Heat shock at exactly 42°C for exactly 30 seconds. Do not mix.
Place on ice for 5 minutes. Do not mix.
Pipette 950 µl of room temperature NEB 10-beta/Stable Outgrowth Medium into the mixture.
Place at 37°C for 60 minutes. Shake vigorously (250 rpm) or rotate.
Warm selection plates to 37°C.
Mix the cells thoroughly by flicking the tube and inverting, then perform several 10-fold serial dilutions in
NEB 10-beta/Stable Outgrowth Medium.
Spread 50-100 µl of each dilution onto a selection plate and incubate overnight at 37°C. Alternatively, incubate
at 30°C for 24-36 hours or 25°C for 48 hours.
Per 50 µL reaction mix the following:
Up to 1 µg
5 µL 10x Cutsmart Buffer
10 units of restriction enzyme one
10 units of restriction enzyme two
Fill reaction to 50 µL with nuclease free water
Incubate at 37 degrees Celsius for two hours to overnight
Inactivate enzymes by incubating for 20 minutes at 65 degrees Celcius
Materials:
Overnight Culture from the right bacteria.
Tfb1, icecold: 30 mM natriumacetaat, 100mM rubidium chloride,10 mM calcium chloride, 50mM mangaan chloride, 15 %
glycerol; pH 5,8 achieved by adding diluted NaOH. Sterilize by filter.
Tfb2, icecold: 10 mM MOPS, 75 mM calcium chloride, 10 mM rubidium chloride, 15% glycerol; pH 6,6 achieving by
adding diluted NaOH/ Sterilize by filter.
Eppendorf cups
Spectrofotometer
Shaker at 37 degrees Celsius
Centrifuge + tubes
Day before making competent cells:
Put a bacteria into 2 ml LB medium at the beginning of the day. Shake at 125 rpm at 37 degrees celsius for at least 6
hours.
Dilute the culture 1:500 into 20 ml LB medium. (40 ul/20 ml). Shake at 125 rpm at 37 degrees celsius overnight.
Day of making competent cells:
Dilute the overnight culture 1:100 into 200 ml LB medium (in a 1L flask). (2ml /200 ml)
Shake the cells at 250 rpm and 37 degrees celsius till an OD600 of 0,5-0,7 is reached (this can take 2 hours).
Measure every 30 minutes the OD600 with a cuvette and sterile LB medium as blanco.
When a OD600 between 0,5-0,7 is reached. Cool the cells down to 4 degrees celsius and centrifuge the culture for 10
minutes at 5000 x g and 4 degrees celsius. The cells need to stay at ice from this step on as much as possible.
Dispose the supernatant and ad 66,4 ml cold TBF1 buffer /200 ml culture. Resuspended the pellet in the buffer
completely.
Centrifuge the culture for 10 minutes at 5000 x g and 4 degrees celsius.
Dispose the supernatant and ad 24 ml cold TBF1 buffer /200 ml culture. Resuspended the pellet in the buffer
completely. Incubate the cells on ice for 15 minutes.
Centrifuge the culture for 10 minutes at 5000 x g and 4 degrees celsius.
Dispose the supernatant and ad 4 ml cold TBF2 buffer /200 ml culture. Resuspended the pellet in the buffer
completely. Incubate the cells on ice for 20 minutes.
Divide the solution over eppendorf cups by pipetting 50 ul per cup. Code the cups and place the cups on dry ice for
10 minutes. After fully frozen, store the cells at -80 degrees celsius.
For a double restriction enzyme digestion the following protocol was followed:
Per 50 µL reaction mix the following:
DNA: Up to 1 µg
Cutsmart Buffer(10x): 5 µL
Restriction enzyme one: 10 units
Restriction enzyme two: 10 units
Fill reaction to 50 µL with nuclease free water.
Incubate at 37 degrees Celsius for two hours or overnight, depending on which restriction enzymes you use.
Inactivate enzymes by incubating for 20 minutes at 65 degrees Celsius or by freezing the digestion solution for at least an hour by -20 degrees celsius.
To make glycerol stocks a overnight culture was needed. The culture was made by putting a colony in LB-medium and incubate the culture for a night at 37ºC.
After a night, the cultures are full enough and ready. To make a glycerol stock, 1 ml culture is mixed with 0,250 ml 87% glycerol solution. This is mixed by flicking the tube 3-5 times. The glycerol stock needs to be stored at -80ºC.
When a glycerol stock is used, be sure that the stock is not fully thawed before putting it back at -80ºC.
LB medium
Mix 5 grams of Lithium Broth combination with 200 ml demi water. After full dissolving, the medium needed to be sterilised by heating it to 121 degree celsius for at least 30 minutes.
Store at 4 degrees Celsius :
LB agar
Per 200 ml LB medium, 3 gram Agar-Agar was added and dissolved. After full dissolving, the medium needed to be sterilised by heating it to 121 degree celsius for at least 30 minutes.
Store at 4 degrees Celsius :
SOC medium
The following protocol is for 1L SOC- Medium
Mix the following substances:
2% (m/v) tryptone
0,5% (m/v) yeast extract
10mM NaCl
2,5 mM KCl
Ad 980 ml demi water to this mixture. After full dissolving, the medium needed to be sterilised by heating it to 121 degree celsius for at least 30 minutes.
Make the following solutions:
10 mM MgCl2 (10 ml)
20 mM Glucose (10 ml)
Sterilize these solutions by filtering through a 0,22 um filter.
Add both solutions aseptic to the premade medium. Be sure the medium was cooled down before adding the MgCl2 and Glucose.
Store at 4 degrees celsius.
TAE buffer
This protocol is for a 50x TAE buffer.
For use, we make a 1X solution by diluting it 50 times.
Weigh out 242 grams of Tris-base (MW = 121.14 g/mol) and dissolve in approximately 700 milliliters of demi water.
Carefully add 57.1 milliliters of 100 % glacial acid (or acetic acid) and 100 milliliters of 0.5 M EDTA (pH 8.0).
Adjust the solution to a final volume of 1 liter.
The pH of this buffer is not adjusted and should be about 8.5.
Store stock solution at room temperature.
Materials: For our PCR (Both plasmid and colony) reactions we have used the standard neb protocols for a 25 μl reaction , with the following concentrations:
10X Standard Taq Reaction Buffer
2.5 μl
10 mM dNTPs
0.5 μl
10 μM forward Primer (VF2)
0.5 μl
10 μM reverse Primers (VR)
0.5 μl
Taq DNA Polymerase
0.125 ul
Nuclease-free water
to 25 μl
Methods: A master mix is made with the concentrations shown above. In case of a plasmid pcr, a volume of plasmid is added before the reaction is filled with Nuclease-free water. With the colony PCR we used a toothpick to touch on the desired colony. Before briefly submerging and shaking the tip of the toothpick in the PCR Eppendorfcup filled with the mastermix. Before pricking it into a clean Agar plate a couple of times to grow more colonies in case the PCR shows us the desired products


Dev Queue
The team's fearless leader, Nataile is always ready with a reassuring word.
Robert is always first in and last out, ready to get his hands dirty and the job done.
Ben is a workhorse who powers through tasks like a hot knife through butter.
Sean keeps us grounded and reminds us all where our priorities truly lie.
Newbie of the group here, Vince is soaking up the knowlege and experience of the rest of the team.


Address
York, UK
Innovative, logical, and a dedicated engineer. With extensive knowledge gained from working across the engineering field and experience operating in teams from a wide range of international cultures, through studying in the UK and the US, I am currently seeking a position in design engineering.
SolidWorks | TurboCAD | Maya | Keyshot | EAGLE CAD
BASIC | C/C++ | JavaScript | Python | PHP | PCB Design | Consumer Electronics
3D Printing | Machining & tool work | CES Edupack | DFM, DFA & LCA methods
Microsoft Office | Adobe Creative Suite | HTML | CSS
• Analysing industry trends and discovering niches in the market for innovative IR and thermal camera systems
• Drafting product assembly explosions for production SOP’s, and technical drawings for tool makers
• Liaising with external sources to tender and assess different suppliers to attain government funding
• Development of mechanical systems using sketching, TurboCAD and 3D prototyping
• Development meeting with senior management to discuss industry feedback, plan project milestones etc
• PCB design using Eagle CAD to be used in both prototypes and manufactured products
• Design of microcontrollers TTL communication using flowcharts, state table logic & basic schematic diagrams
• International travel to Asia to source components and speak with existing suppliers through factory visits
• Software design using Python to develop multi-display synchronisation, scheduled content updates & more
• Web development to showcase new products and features using HTML, CSS and JavaScript
• Creating media content using Adobe Suite and organising a Kickstarter campaign for the CM1 in-home fridge
• Helped to lead and organise the team in discussion and idea generation meetings
• Designed and developed wooden projects such as the coaster and wall mounted clock range
• Created and maintained website, social media accounts, and marketing content
• Face-to-face sales with customers at trade events such as at The Metro Centre in Gateshead
• Planning and organising production to ensure that deadlines and orders were met
• Designed and developed the mechanical and control systems of a modular robot, PetRo, using Solidworks, Keyshot and 3D printing. While also creating animations for use in research and presentations worldwide.
• Helping to develop visible light communication (VLC) between PetRo robots using Arduino C/C++
• Communicating with suppliers when organising and implementing stock parts when used
• Planned, organised and met deadlines that projects needed to meet
• Published research paper on PetRo surrounding emotional communication between robot and human at Columbia University in NYC
• Designing and developing products and product recalls such as vehicle beacons, through the use of Solidworks, 3D printing and testing. Also preparing 3D renders and prototypes to present to clients.
• Creating 3D files from 2D drawings ready for FEA analysis to improve the injection moulding process
- Achieved (1st) First Class Honours Degree (77.1% Average)
Design for X, Graduate Enterprise for CEIS, Product Design Practice Competition, Product Design Project, Application of Mechanical Systems, Engineering Product Design, Digital Product Design for Designers, Electronic Product Design, Engineering Economics and Professional Skills, Product Design Practice, Design, Technology and its Application, Engineering Skills in Experimentation and Presentation, Engineering Product Design, Design Development Communication, Materials and Manufacture.
Introduction to Digital Media (A), Design Fundamentals for the Web (A), Physical Computing (A), Animation 1 (B+). Creative Design (B), Entrepreneurship/Small Business (B), Introduction to Interactive Computing (A-), Marketing Principles (B+).
A-Level Engineering (B), BTEC Level 3 Extended Diploma in Manufacturing Engineering (QCF) (Triple Distinction*), EAL Level 2 NVQ Diploma in Performing Engineering Operations (Engineering Practices) (Pass).
The task was to create and design a new product or product improvement using the power of aluminium.
1st place was awarded to my design, the Football Multi-Goal, a telescopic football goal that can quickly be adjusted to suit a wide range of small sided, junior and mini soccer games
Komatsu Award for the best final year project in Product Design Engineering BSc
A robotic language of emotions could be as an effective mean to communicate a robot’s internal state and condition. Such a communication would be beneficial within the context of a human robot interaction. We propose a vocabulary of emotions, and report on experiments about their recognition.
- View Publication


1,500 YBS buses to launch payment card system
by Pyae Phyo Aung and Hsan Htoo Aung
Plans are underway to install payment card system in 1,500 YBS (Yangon Bus Service) buses this month, Yangon Region Transport Authority Joint Secretary Hla Aung told the media on November 6.
The installation period will be 18 days.
"Machinery has arrived. Installation and cooperation among the companies under YBS have started. We will complete the installation within 18 days," Hla Aung said.
Payment card (YPS) machines will be installed in 500 buses of Yangon Urban Public Transport Company, 300 buses of Maha Bandoola Company and 80 buses of Shwe Taungbaing Company.
Since November 1, discussion has been underway among Asia Starmar Company permitted to run YPS machines, YBS companies and YRTA to install machines in those buses.
Yangon city has 100 bus lines in YBS system with 6,635 registered buses. Over 4,500 buses transport about 1.8 million passengers daily.


Our aim is to explore learning from the student's perspective, where the main source of guidance for a student
is other students. Each student can be a source of knowledge for others. Hence, for a student, developing their
unique point of view on a subject is one of the primary goals. Students are encouraged to develop and share
their learning experiences with others.
This page is under construction and will remain so until we are further down the line in terms of implementation
when we have a much clearer direction we want to go in. If you want to read the ongoing discussion
about wikilearn, visit
this blog post.
Home
Blog


Open Issues with Standards
This page lists the open issues with standards related to FreeRADIUS
Acct-Status-Type and subsystems
The Acct-Status-Type attribute has only a few values defined. These values do not fully match new practices in RADIUS. The Acct-Status-Type subsystem page discusses the problems and recommended solutions.
Acct-Session-Id and Acct-Multi-Session-Id uniqueness
The Acct-Session-Id and Acct-Multi-Session-Id attributes are opaque tokens generated by the NAS. They are not required to be unique. The Acct-Session-Id uniqueness page discusses the problems and recommended solutions.


It is through Introspection that I'm able to place myself in the context of the world. Many of the other values are important but introspection is what strengthens them. For me, it provides a better understanding of things. It helps with the most difficult situations I've faced and has made the enjoyable ones even more worthwhile.
The personal importance of living up to these values:
Extremely Important (5): Accountability, Commitment, Compassion, Creativity, Health, Helping Other People, Honesty, Integrity, Introspection, Personal Development, Self-Respect
Very Important (4): Achievement, Affection, Autonomy, Close Relationships, Community, Confidence, Environmentalism, Fairness, Friendships
Important (3): Adventure, Challenge, Cooperation, Economic Security, Having a Family, Insight, Nature, Self-Reliance
Slightly Important (2): Meaningful Work
Not very important (1):
What was the last topic that someone asked for your advice on?:
How to better socialize in a new city. I'm not the best socializer myself, so I've thought out the overwhelming number of hardships the task presents.


Opens a popup with a partly transparent background. Uses the ElementsContainer internally to place elements.
Includes scrollbar.
container: if null, container is set to document.body
headText: the headline text of the popup
columnCount: number of columns in which elements are placed
with: the width of the ElementsContainer
height: the height of the ElementsContainer
[subHeaderText]: a further header text which is placed below the head (e.g. used in the wizard)
Members
content
the content node which contains the shown elements
Functions
addElement(element, fillLine)
see innovaphone.ui.ElementsContainer
If you're finished with adding elements, you must call either adjustColumnWidth or resize to ensure a correct scrollbar height inside the popup


Salmaz kitchen is a local home made food delivery System. Integreted with wordpress theme,plugins and woocomerce to take order from customers online. Anyone around the aria can call or messege them or contact via whatsapp and messenger. Also they can add whichever items they like in their cart and set order from there.
As a Front End Web Developer, I design websites that work across all devices. Specializing in wordpress theme and plugin development from scratch and wordpress theme customization. Always looking to learn new technologies.


Welcome to Todo List..
Login if your already registered:
Login
Click on Sign Up button to start creating your to-dos from now.
Sign Up


NOTE: Although this uses PDO, a handful of methods in this class will probably only work with MySQL particularly those which retrieve information about tables such as getPrimaryKey, etc. All methods that Insert/ Read/ Update/ Delete data should be pretty database agnostic.
NOTE: At the moment this class has ONLY been tested on MySQL
TO SET NAMES, USE ON THE $opts PARAM OF THE CONSTRUCTOR: array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'')
| __construct | ( | $dbName, | |
| $user, | |||
| $pass, | |||
$opts = null , |
|||
$dbType = 'mysql' , |
|||
$hostORpath = 'localhost' , |
|||
$port = '' |
|||
| ) |
class constructor
| string | $dbName | database name |
| string | $user | database username |
| string | $pass | database password |
| array | $opts | connection options. |
| string | $dbType | type of database - must be one of the following: mysql, sqlite, pgsql, firebird, informix, oracle, odbc, dblib, ibm |
| string | $hostORpath | ip or name of host (in the case of mysql or pgsql) or file path to db (in case of sqlite, firebird) |
| string | $port | additional param where you can specify the port |
| PDOException |
| __destruct | ( | ) |
Destructor. Unsets all object variables and closes the database handle
| Close | ( | ) |
Explicitly closes the database handle
| conn | ( | ) |
Connects to PDO
| CreateDB | ( | $database | ) |
Creates a database
| string | $database | name of the database we're creating |
| CreateTable | ( | $query | ) |
Runs a generic PDO::exec on a query to create a table
| string | $query | the SQL statement used to create the table |
| dataToCSV | ( | $query, | |
| $file, | |||
$mode = 'w' , |
|||
$delimiter = ',' , |
|||
$enclosure = '"' |
|||
| ) |
| $query | ||
| $file | ||
| string | $mode | |
| string | $delimiter | |
| string | $enclosure |
| DeleteData | ( | $query | ) |
deletes data from the database using any arbitrary query
| string | $query | the query to delete the data |
| DeletePrepared | ( | $table, | |
| $field, | |||
| $val, | |||
$extras = null |
|||
| ) |
deletes a specific record from the database using a prepared statement
| string | $table | the table we're deleting a record from |
| string | $field | the criteria field in the table |
| int | string | $val | the criteria value for the record to be deleted |
| string | $extras | any arbitrary extra criteria for the deletion |
| DeleteRecord | ( | $table, | |
| $field, | |||
| $val, | |||
$extras = null |
|||
| ) |
deletes a specific record from the database
| string | $table | the table we're deleting a record from |
| string | $field | the criteria field in the table |
| int | string | $val | the criteria value for the record to be deleted |
| string | $extras | any arbitrary extra criteria for the deletion |
| DescribeTable | ( | $table | ) |
gets details about a table NOTE: This is MySQL specific.
| string | $table |
| DropDB | ( | $database | ) |
Drops a database
| string | $database | name of the database we're dropping |
| DropTable | ( | $table | ) |
runs a simple SQL query on a table to drop it
| string | $table | the name of the table to drop |
| DumpDescribe | ( | $data | ) |
prints a purdy formatted table using information gained from the DescribeTable method (above)
| array | $data | the data that comes from DescribeTable |
| EmptyTable | ( | $table | ) |
runs a simple SQL truncate query on a table to empty it
| string | $table | the table to be truncated |
| EscapeString | ( | $string, | |
$stripTags = false , |
|||
$paramType = PDO::PARAM_STR |
|||
| ) |
replacement for PDO::quote, this escapes special characters. Also, PDO::quote adds quotes at the beginning and end of strings which is lame and unwanted, so we're not doing that
| string | $string | the string we're working with |
| bool | $stripTags | whether or not to strip tags from the input string |
| int | $paramType | parameter type hint to provide to PDO. See http://php.net/manual/en/pdo.constants.php for more |
| ExplainQuery | ( | $query | ) |
STATUS: TESTED
| string | $query |
| FieldExists | ( | $field, | |
| $table | |||
| ) |
checks to see if a field exists in the database
| string | $field | the field we're looking for |
| string | $table | the table we're looking into |
| findDuplicates | ( | $table, | |
$fields = '*' , |
|||
$groupBy = null |
|||
| ) |
| $table | ||
| string | $fields | |
| null | $groupBy |
| generateKey | ( | $table, | |
| $field, | |||
$length = 8 |
|||
| ) |
Generates a random string for use as a key
| string | $table | |
| string | $field | |
| int | $length |
| getAvgField | ( | $field, | |
| $table, | |||
$clause = '' , |
|||
$label = null |
|||
| ) |
| string | $field | |
| string | $table | |
| string | $clause | |
| string | $label |
| GetDBInfo | ( | $database | ) |
gets an array of information about a database NOTE: this is MySQL specific
| string | $database | the database we're working with |
| getEnumDefaults | ( | $table, | |
| $field | |||
| ) |
| $table | |
| $field |
| getIDFromKey | ( | $table, | |
| $idField, | |||
| $keyField, | |||
| $keyVal | |||
| ) |
Gets the primary key ID from a key. Used when providing a key that isn't the PKID
| string | $table | |
| string | $idField | |
| string | $keyField | |
| string | $keyVal |
| GetItemCount | ( | $table, | |
$field_name = '' , |
|||
$id = '' , |
|||
$extras = '' |
|||
| ) |
function to count the items in the table based on (optional) specific criteria
| $table | ||
| string | $field_name | |
| string | $id | |
| string | $extras |
| getLatestRecords | ( | $table, | |
| $orderField, | |||
$orderDir = 'DESC' , |
|||
$limit = 1 , |
|||
$fields = '*' , |
|||
$extras = null |
|||
| ) |
retrieves the latest n records in the database
| string | $table | |
| string | $orderField | the field used to order the results |
| string | $orderDir | the direction to do the ordering. |
| int | $limit | limit for the # of results returned |
| string | $fields | the fields to return |
| string | $extras | any optional extras to be included in the query for determining results |
| getLatestSingleRecord | ( | $table, | |
| $orderField, | |||
$orderDir = 'DESC' , |
|||
$fields = '*' , |
|||
$extras = null |
|||
| ) |
retrieves the latest single record in the database
| string | $table | |
| string | $orderField | the field used to order the results |
| string | $orderDir | the direction to do the ordering. |
| string | $fields | the fields to return |
| string | $extras | any optional extras to be included in the query for determining results |
| getMaxField | ( | $field, | |
| $table, | |||
$clause = '' , |
|||
$label = null |
|||
| ) |
| string | $field | |
| string | $table | |
| string | $clause | |
| null | $label |
| getMinField | ( | $field, | |
| $table, | |||
$clause = '' , |
|||
$label = null |
|||
| ) |
| string | $field | |
| string | $table | |
| string | $clause | |
| string | $label |
| getPrimaryKey | ( | $table | ) |
gets the primary key of a table NOTE: this method is MySQL specific
| string | $table | the table we're working with |
| getSumField | ( | $field, | |
| $table, | |||
$clause = '' , |
|||
$label = null |
|||
| ) |
| string | $field | |
| string | $table | |
| string | $clause | |
| string | $label |
| getTableStatus | ( | $table, | |
$key = null |
|||
| ) |
gets the table's status info
| string | $table | |
| null | $key |
| INClause | ( | $field, | |
| $ids, | |||
$escape = true |
|||
| ) |
Creates a SQL 'IN' Clause
| string | $field | the field part of the clause |
| array | $ids | the IDs for the IN clause |
| bool | $escape | whether or not to escape the values |
| InsertArray | ( | $data, | |
| $table | |||
| ) |
Inserts a new record using an associative array of values
| array | $data | |
| string | $table |
| InsertData | ( | $query | ) |
inserts data into the database using any arbitrary query
| string | $query | the query to insert the data |
| InsertMultiple | ( | $table, | |
| $values | |||
| ) |
Allows the insert of multiple records into the same table
| $table | |
| $values |
| InsertMultiplePrepared | ( | $table, | |
| $values | |||
| ) |
Uses prepared statement to insert multiple new records using a multidimensional associative array Borrowed from elsewhere. Props to whoever it was (I forgot)
| string | $table | the table we're inserting data into |
| array | $values | the array of values to be inserted |
| InsertPrepared | ( | $data, | |
| $table | |||
| ) |
Like "InsertArray", this method inserts an associative array using a prepared statement NOTE: this method is preferred over InsertArray
| array | $data | the array of key=>value pairs to be inserted |
| string | $table | the table into which we'll be performing |
| ListFields | ( | $table | ) |
lists all fields in the table NOTE: This is MySQL specific.
| string | $table | the table we're looking into |
| ListTables | ( | $database | ) |
lists all tables in the database NOTE: This is MySQL specific.
| string | $database | the database we're looking into |
|
static |
Loops through an array of options to build a query with them as " $field='$item1' OR $field='$item2'" etc. This is preferred over the SQL 'IN' syntax mostly because this method can be extended in sub-classes
| string | $field | |
| array | $array |
| makeRand | ( | $table, | |
$field_name = '' , |
|||
$id = '' , |
|||
$extras = '' |
|||
| ) |
gets a random integer based on # of results. this can be used instead of RAND() This is the preferred over RAND() because of its portability beyond MySQL
| string | $table | |
| string | $field_name | |
| int | string | $id | |
| string | $extras |
| MultiQuery | ( | $array, | |
$sleep = false , |
|||
$sleepNum = null , |
|||
$sleepTime = null |
|||
| ) |
submits multiple queries to the database. Primarily used for disparate queries. Inserting multiple values for essentially the same query is the domain of prepared statements. See InsertMultiple for a way to do that
| array | $array | the array of queries |
| bool | $sleep | whether or not to sleep every so often (to reduce some load) |
| int | $sleepNum | how many iterations to run before sleeping |
| int | $sleepTime | how long to sleep |
| MultiQueryTransaction | ( | $queries | ) |
Like above: submits multiple queries to the database. Primarily used for disparate queries. Inserting multiple values for essentially the same query is the domain of prepared statements. See InsertMultiple for a way to do that This version performs this work as a transaction NOTE: This method will return true, even for MyISAM tables (which do not support transactions)
modify to check whether a transaction is already running first. See: http://www.php.net/manual/en/pdo.begintransaction.php#81022
| array | $queries | the array of queries |
| NextID | ( | $table | ) |
gets the next autoincrementing id from a table NOTE: This is MySQL specific.
| string | $table |
| OptimizeDatabase | ( | $database | ) |
optimizes all tables in the database NOTE: This is MySQL specific.
| string | $database | the database we're working with |
| OptimizeTable | ( | $table | ) |
optimizes a specified table NOTE: This is MySQL specific.
| string | $table | the database we're optimizing |
| RawExec | ( | $query | ) |
Performs a raw PDO::exec() on a query. Really meant for queries that don't return results
| string | $query | the query to be run |
| RawQuery | ( | $query, | |
$mode = PDO::FETCH_BOTH , |
|||
$falseOnZero = true |
|||
| ) |
performs a PDOStatement::query and fetchAll to run a query that returns results
| string | $query | the query to insert the data |
| int | $mode | this is the type of array to be returned. |
| bool | $falseOnZero | whether or not to return FALSE when 0 results are returned |
| RawQueryFetchAll | ( | $query, | |
$mode = PDO::FETCH_ASSOC , |
|||
$falseOnZero = true |
|||
| ) |
performs a PDOStatement::query and fetchAll to run a query that returns results
| string | $query | the query to insert the data |
| int | $mode | this is the type of array to be returned. |
| bool | $falseOnZero | whether or not to return FALSE when 0 results are returned |
| RecordExists | ( | $table, | |
| $fieldname, | |||
| $fieldvalue, | |||
$extras = '' |
|||
| ) |
| $table | ||
| $fieldname | ||
| $fieldvalue | ||
| string | $extras |
| SanitizeValues | ( | $expected, | |
| $tehGlobal | |||
| ) |
loops through a superglobal array to sanitize variables
| array | $expected | an array of expected key names |
| string | $tehGlobal | indicator of which global we're working with |
| SelectData | ( | $query, | |
$mode = PDO::FETCH_BOTH , |
|||
$falseOnZero = true |
|||
| ) |
selects data from the database using any arbitrary query
| string | $query | the query to insert the data |
| int | string | $mode | this is the type of array to be returned. |
| bool | $falseOnZero |
| SelectPrepared | ( | $table, | |
| $criteria, | |||
$fields = '*' , |
|||
$limit = null , |
|||
$orderBy = null , |
|||
$orderDir = null |
|||
| ) |
Selects data from database using prepared statements. NOTE: This is the preferred method of retrieving data NOTE: This method does not work with LIKE statements
| string | $table | the table from which the data will come |
| array | $criteria | array of key=>val pairs for selection criteria |
| string | $fields | the fields to retrieve from the database |
| int | $limit | limit to the # of results to return |
| string | $orderBy | the field to order the results by |
| string | $orderDir | the direction to order the results |
| SelectSingleRecord | ( | $query, | |
$mode = PDO::FETCH_BOTH |
|||
| ) |
selects one single record from the database using any arbitrary query
| string | $query | the query to select the item |
| int | $mode | the fetch mode for the selection |
| SelectSpecificRecord | ( | $table, | |
| $criteriaField, | |||
| $criteriaValue, | |||
$fields = '*' , |
|||
$extras = null |
|||
| ) |
Selects a specific record from the database
| string | $table | the table to select from |
| string | $criteriaField | the specific field used for the criteria to select the record |
| string | $criteriaValue | the specific value for the field to select the record |
| string | $fields | the fields to retrieve from the query |
| string | $extras | any extra stuff for the query |
| showCreateDatabase | ( | $database | ) |
Runs mysql-specific SHOW CREATE DATABASE query and shoots back the result
| $database |
| showCreateTable | ( | $table | ) |
Runs mysql-specific SHOW CREATE TABLE query and shoots back the result
| $table |
| ShowIndexes | ( | $table | ) |
shows the indexes for a particular table NOTE: This is MySQL specific.
| string | $table | the table we're looking ag |
| SQLImport | ( | $file, | |
$sleep = 3 |
|||
| ) |
imports a text file of SQL statements into the database IMPORTANT! All SQL statements must be on their own line and CANNOT contain multiple lines DOES NOT check for file existence before proceeding. This is your responsibility
make a version of this which uses transactions
| string | $file | the name/ path of the file to import |
| int | $sleep | number of seconds to sleep between queries. Necessary when doing a huge import |
| TableExists | ( | $database, | |
| $table | |||
| ) |
checks whether a table exists or not
| string | $database | the database to look in |
| string | $table | the table to look for |
| UpdateArray | ( | $table, | |
| $array, | |||
| $keyField, | |||
| $keyVal, | |||
$extras = null |
|||
| ) |
Updates a single record using an associative array of values
| string | $table | |
| array | $array | |
| string | $keyField | |
| string | $keyVal | |
| string | $extras |
| UpdateData | ( | $query | ) |
updates data in the database using any arbitrary query
| string | $query | the query to update the data |
| UpdatePrepared | ( | $data, | |
| $table, | |||
| $keyField, | |||
| $keyVal | |||
| ) |
Like "UpdateArray", this method updates a table using an associative array using a prepared statement NOTE: this method is preferred
| array | $data | the array of key=>value pairs to be updated |
| string | $table | the table into which we'll be performing |
| $keyField | ||
| $keyVal |
| urlDomainString | ( | $field | ) |
Returns a useful string to be used in SQL queries for finding the domain portion from a URL
| string | $field |


Swedish Pancakes
From Sweden to America, Have Some Fresh And Crispy Pancakes Like No Other!
Ingredients
- 4 eggs
- 2,5 dl milk
- 2,5 dl flour
- 4 teaspoons vanilla
- Zest from 1 lemon
- 40 gram butter
- A pinch of salt
Directions
- Start with mixing the flour, salt, vanilla and the zest from the lemon in a large bowl.
- Add half of the milk in the bowl and stir and then let that rest.
- Take another bowl and whisk the eggs porous. Mix this with the other bowl
- Melt the butter and then add this in the bowl.
- Add the rest of the milk and let the paste rest for 30 minutes.
- Now fry the pancakes on a hot frying pan. Use some butter for the first 2-3 batches
By:Nathalie Gerke


Find your fit amongst our exciting projects!
We are the rover team! Our mission is to build robots for the annual University Rover Challenge (URC). From dexterously repairing equipment, to traversing extreme terrain, to autonomously searching the open desert for wooden posts, our rovers have to be complex feats of electrical engineering, computer science, and mechanical engineering. Every year we embark on the journey to build a new rover from scratch to both innovate and educate.
We build open-source legged robots that push the boundary of where robots can go. Our first robot, Stanford Doggo, received worldwide recognition in 2018 after setting a new bar for robot agility at an affordable price. Our current projects include Woofer, a larger quadruped robot designed to enrich robotics research, and Pupper, a smaller quadruped designed to engage the open source community.
3 teams for which we will define the goal of the projects soon. These teams will offer more mentorship through big weekly meetings in between all explore teams. Talk to the team leads or the co-presidents if you have an idea that you would like to see become an explore team.


WATCH | Brazil's freed leftist leader Lula calls to continue 'the fight'
Brazil's left-wing leader Luiz Inacio Lula da Silva urged his followers to continue "the fight" on Sunday evening at his first major rally since his release from prison a week ago.
"The fight isn't over," the former president chanted to several tens of thousands of cheering supporters in the north-eastern city of Recife.
"After seeing so many people mobilise across the country, I want to say: 'The fight is not over.' The fight cannot end because we still want more," Lula said, referring to the thousands of left-wing activists who mobilised across Brazil during his 580-day incarceration.
"The 'Free Lula' campaign must become something even bigger!" he added, as the crowd welcomed him with cries of, "Lula, warrior for the Brazilian people!"
READ | Brazil's Lula jailed to keep him from 2018 election: report
Lula, who held presidential office from 2003 to 2010, was arrested in April 2018 for corruption, though he said he was innocent. He was sentenced to eight years and 10 months in prison.
The 74-year-old was released on November 8 in a politically sensitive Supreme Court ruling that could free thousands of convicts.
On Sunday, he returned to Recife, the capital of his home state Pernambuco, to take part in a music festival organized in his honour.
READ | Brazil ex-leader Lula returns to jail after grandson's funeral
Though he claimed multiple times he didn't want to discuss politics during a music festival, Lula viciously attacked his political rival, right-wing President Jair Bolsonaro, during his speech.
"You can be sure that every minute of the rest of my life will be devoted to freeing our country from this gang of militiamen who have seized it," he said, referring to the Bolsonaro family's suspected links with paramilitary groups.
Lula has already given three public speeches since his release from prison, but the one in Recife was the first time he had spoken to such a large crowd.


Methods
- aliased_prefix
- aliased_primary_key
- aliased_table_name
- column_names_with_alias
- extract_record
- instantiate
- new
- record_id
Attributes
| [R] | active_record | |
| [R] | table_joins |
Public Class methods
[ show source ]
# File vendor/rails/activerecord/lib/active_record/associations.rb, line 1360 1360: def initialize(active_record, joins = nil) 1361: @active_record = active_record 1362: @cached_record = {} 1363: @table_joins = joins 1364: end
Public Instance methods
[ show source ]
# File vendor/rails/activerecord/lib/active_record/associations.rb, line 1366 1366: def aliased_prefix 1367: "t0" 1368: end
[ show source ]
# File vendor/rails/activerecord/lib/active_record/associations.rb, line 1370 1370: def aliased_primary_key 1371: "#{ aliased_prefix }_r0" 1372: end
[ show source ]
# File vendor/rails/activerecord/lib/active_record/associations.rb, line 1374 1374: def aliased_table_name 1375: active_record.table_name 1376: end
[ show source ]
# File vendor/rails/activerecord/lib/active_record/associations.rb, line 1378 1378: def column_names_with_alias 1379: unless @column_names_with_alias 1380: @column_names_with_alias = [] 1381: ([primary_key] + (column_names - [primary_key])).each_with_index do |column_name, i| 1382: @column_names_with_alias << [column_name, "#{ aliased_prefix }_r#{ i }"] 1383: end 1384: end 1385: return @column_names_with_alias 1386: end
[ show source ]
# File vendor/rails/activerecord/lib/active_record/associations.rb, line 1388 1388: def extract_record(row) 1389: column_names_with_alias.inject({}){|record, (cn, an)| record[cn] = row[an]; record} 1390: end
[ show source ]
# File vendor/rails/activerecord/lib/active_record/associations.rb, line 1396 1396: def instantiate(row) 1397: @cached_record[record_id(row)] ||= active_record.instantiate(extract_record(row)) 1398: end
[ show source ]
# File vendor/rails/activerecord/lib/active_record/associations.rb, line 1392 1392: def record_id(row) 1393: row[aliased_primary_key] 1394: end


Stylesheet will only be loaded on pages without any.
Note: Any changes will be applied after a reload.


Lorem Ipsum dolor ameti, story of Wolf hall has a good ending with accompanying drama, suspense and intrigue, this is a real master deal, you'll like it.
Added on 16th of January, 2016


{% extends "watsan/dashboard/base.html" %} {% block content %}
We've sent a confirmation email to the new email address you provided.