Plugin Information |
|---|
View Matrix Reloaded on the plugin site for more information. |
Developed by
Sponsored by
The Matrix Reloaded Plugin allows rebuilding parts of an already built Matrix build.
Rebuilding a Matrix build
On all Matrix builds that has run while the plugin was installed there will be a Matrix reloaded link. Click this, and it will take you to a dialog, where you can check-mark the configurations that should be build again. Nothing is checked by default, but the check-marks you set will be cascaded as default settings, if applicable, to any down-stream jobs triggered by the re-run.
Typical Use Case
Occasionally when using matrix builds some of the configurations may fail due to reasons, that are not necessarily related to the quality of your code. We refer to them as false negatives, typical examples could be that a slave didn't manage to obtain a license for some product you are dependent on, a glitch in the network communication or a wrong hard-ware configuration for the particular slave that ran it.
When that happens, you would probably want to rebuild those false negatives simply by rerunning them and then paint over the original result in the matrix with the new one.
With the Matrix Reloaded Plugin installed, all matrix builds will hereafter offer a link named "Matrix reloaded" which takes you to a dialog where you are presented to the original results of the matrix run and offered an option to mark to ones you want to rebuild.
When you hit the "Rebuild Matrix" button a new Matrix build is scheduled for execution. In the result all the configurations that were not selected for rebuilding will continue to point to the original build results, while the configurations that you did select are being rebuilt and replaced in the new resulting matrix.
Reload option sometimes not available
The Matrix Reloaded link is only available on the builds that were executed while the Matrix Reloaded Plugin was actually installed. Sometimes you may see a Matrix Build, that doesn't offer the Reload option, even though you did install the plugin. When that happens you can simply do a regular re-run (of the entire matrix) and the Matrix Reloaded option will be available on the new result.
Using Matrix Reloaded
Once a build has been run, a link in the side panel of the Matrix build and each of the sub runs have been added. This can be seen in the following image:
When the "Matrix Reloaded" link is clicked, the user can select which runs to rebuild. See the following image:
By default the failed and unstable runs are checked.
When the "Rebuild Matrix" button is clicked, the resulting build should, hopefully, look like:
Matrix Runs
Selecting a specific Matrix run from a Matrix build, the "Matrix Reloaded" link checks that specific run by default and no other run.
Downstream building
It is possible to let downstream builds inherit the Matrix Loaded configuration. This will rebuild the same combinations in any downstream project.
- If the downstream project is a Matrix project and does not have any of the selected combinations, none will be build.
- If the downstream project is a Matrix project and have some of the selected combinations, those will be built. Just check Matrix Reload downstream builds.
- If the downstream project is a non-matrix project (Freestyle project for example), it will be anyway rebuilt.
Considerations
We do not plan that the Matrix Reloaded plugin should have any influence on jobs actually being rebuilt. This could potentially create a bit of a paradox: If a build is rebuilding only some configurations and the job is configured to get the latest commit from a SCM, and a new commit actually exists, then some of the configurations are based on one commit, while others are actually based on the newer commit.
Potentially a mess!
Issues
Changelog
Version 1.1.3(2014-16-6)
- Combination filters are now handled properly (JENKINS-22966)
- Added a filter for aborted builds (JENKINS-22964)
Version 1.1.2(2014-9-5)
- Fixed a detection issue, are we working with MatrixRun or MatrixBuild (JENKINS-22535)
- Avoid NPE by removal of upstream (JENKINS-17964)
Version 1.1.1(2013-6-5) Thanks to lvotypko for the contributions.
- Bubble links on matrix reloaded action have incorect url (issue #17748)
- matrix rebuild allows all users to issue builds (issue #16628)
- Fix bad url for configurations.
Version 1.1.0(2012-6-5)
- Use Action instead of state object (issue #13670)
- Matrix Reloaded should trigger the same combination in downstream matrix job (issue #13514)
- Link to plugin from plugin configuration page is wrong (issue #12227)
Version 1.0.2(2012-1-27)
- Matrix Reloaded rebuilds entire matrix instead of just selected ones (issue #11647)
Version 1.0.1(2011-6-21)
- Updated design to comply with baseBuild
Version 1.0.0(2011-5-23) Initial release
Design wiki: Matrix Reloaded Plugin Design
Attachments:
mrp-view.png (image/png)
mrp-select.png (image/png)
mrp-view-success.png (image/png)
matrix-reloaded.jpeg (image/jpeg)
mrp-view-success2.png (image/png)
downstream-build.png (image/png)
praqmalogo.png (image/png)
sony.png (image/png)
compart.png (image/png)


Reviewed by Ed Thommes
As luck would have it, I re-read the book by Robert Heinlein upon which this movie is based not too long ago. The back of my copy proclaims this book to be "The controversial classic of military SF!" Why controversial? Well, the lesson the book tries to teach is that nothing builds character and morality like brutal discipline, and it paints a picture of a "utopia" where democracy has failed and the planet is ruled by a military-established government which only grants citizen status after one performs "Federal Service" (anything from government R&D to soldiering...the final decision is made by the government). In other words, the book has what can only be called strong fascist overtones.
This angle is played up quite a bit in the movie. But in contrast to Heinlein's book, which tried to sell this ominous political order to the reader, the movie takes a decidedly tongue-in-cheek approach. It has a lot of dark, twisted fun, for instance, with recruitment commercials that are part Uncle Sam Wants You, part Leni Riefenstahl. And then there's the snortingly hilarious moment when Doogie Howser--uh, I mean Neil Patrick Harris--strides in wearing his Military Intelligence outfit, which just happens to look exactly like an SS uniform.
So how good an action movie is this? Pretty good, in many ways. The bug computer effects are well-done and appropriately imposing, especially the really big flame-throwing critters. The spaceships are all highly detailed; in a scene where one breaks in half, one can actually see the individual decks inside. And as one can infer from the trailers, all the action stuff is very visceral, with loads of muzzle flashes and spraying bug juice and troopers getting gored, torn limb from limb, cut in half, set on fire...
However, gaps in logic are all over the place, and while this movie is basically meant to be enjoyed at the level of a live-action cartoon, why go out of the way to strain the suspension of disbelief? Here's one problem: You don't have to be a master tactician to realize that if you've got firearms and most of the bad guys just have big nasty pincers and mandibles, you want to be shooting them from afar as much as possible, and avoid going toe-to-toe with them at all costs. But no, the troopers have other ideas. Every time a bug rears up next to them they actually ADVANCE as they shoot, until they're practically underfoot of the alien.  It's basically World War I trench warfare without the trenches. No wonder the human casualties are so staggering.
In its depiction of combat the movie is almost the exact opposite of the book which, being military SF, payed a lot of attention to things like tactics. Also, the powered armor suits which played such a central role in the book are completely absent in the film. An odd decision from a merchandising point of view...they would've made the perfect action figure.
Also, we've got the usual sci-fi movie space-time problems. The asteroids launched by the bugs come from their home system, which is on the other side of the Galaxy from Earth. We're about 25 000 lightyears from the Galactic center, so that makes the distance to the bug homeworld something on the order of 50 000 lightyears. Unless these asteroids are self-guiding, that's pretty amazing aim. OK, fine, but then there's the little matter of travel time. The asteroids are going along at sublight speed, at least the one that hits a spaceship and later splatters Buenes Aires is, and in any case the aliens don't appear to possess any faster-than-light technology (or any technology, period; they seem do it all with excreted "bug plasma"). So those asteroids have been in the mail longer than 50 000 years. The bugs must really plan ahead.
The acting? Well, the acting is quite bad, as is the writing, but it seems like this is intentional, in keeping with the cartoonish tone of the movie. Troopers die screaming by the thousands, but as soon as a battle is over, the survivors continue unconcernedly exchanging inane dialogoue. The whole effect is dehumanizing in the extreme, but that, too, is probably intentional.
So, in summary, provided you're in the right frame of mind for a violent science fiction action movie, you'll probably enjoy yourself while watching Starship Troopers. If you read the book and shook your head in disgust at the ideology it espouses, you'll probably have a good laugh at the (heavy-handed) satire. If you're looking for an SF movie with intelligence or originality, then you've clearly wandered into the wrong theatre.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


| {{ subset.library.name }} |
{{ subset.name }} |
{{ subset.compounds|length }} |
{{ subset.availability.0.barcode}} {%if subset.availability.0.name%}{{ subset.available.0.name }}{% endif %}
{{subset.availability.0.availability}}% available
{%if subset.availability.0.current %}(current){% endif %}
|
{% include "chevron-down.html"%}
{% include "chevron-up.html"%}
|
|
{% include "availability-details.html" with initial_class=initial_class %}
{% endfor %}


Test page for Sgvizler. Tests if it handles empty results, "missing variables", OPTIONALs, in both formats: JSON and XML.
All queries are sent to http://sws.ifi.uio.no/sparql/npd


Azure Changes
This page shows the last 20 days of
Azure Resource Manager Provider
changes loaded through the
Azure REST API.
Loading...


I studied Automatic Control and Applied Informatics at the Faculty of Automatic Control and Computer Engineering, “Gheorghe Asachi” Technical University of Iasi. I also graduated in Business Management, Marketing and Administration at the Faculty of Economics and Business Administration, Alexandru Ioan Cuza University of Iasi.
I am a dedicated and hardworking person, who believes in honesty and good working relationships. I'm constantly learning, I use the latest technologies, following the best & latest web coding techniques to satisfy every customer. I am creative, dependable, and work with my client's priorities in mind all times.
My main goal is to solve your tasks and complete them on time!
I look forward to you contacting me!
View ResumeImage Face Recognition application - Detect Faces in the given Image using Clarifai`s Face Detection Model Api. The application is made using React and CSS is made using Takyons.
I recreated the Delete Agency blog, using Tailwind CSS and VueJS. It is made in HTML5, Tailwind CSS, VueJs. It fully preserves the functionality of the original site, having all the active links (it is a complete blog model, with social media links, etc.). This is a fully responsive, mobile-first website. Subsequently, it was integrated in a CMS (Wordpress) and customized according to the client's wishes.
A layout that toggles between light and dark mode, with multiple uses. It can be used as a presentation site, portfolio, etc. It is made in HTM5, CSS3 and JavaScript.
A mini web application that mimics the famous Windows Paint. It is made in HTML5, CSS3 and JavaScript.
A simple desktop computer that contains basic operations. Made in HTML5, CSS3, JavaScript.
A mini game made in HTML5, CSS3 and JavaScript with which you can test your speed and accuracy with basic math operations.
Using an API to build a random quote generator with Twitter integration.
<EMAIL_ADDRESS>Call to Action


sme-router
A lightweight router lib that implement with express route style
Menu
春
(spring)
霞
(summer)
秋
(autumn)
霜
(winter)


| | |
- angle_between(a, b)
- Determine the angle (in degrees) between two vectors
inspired from: https://stackoverflow.com/questions/2827393/angles
-between-two-n-dimensional-vectors-in-python/13849249#13849249
Inputs
------
a : numpy array 1
b : numpy array 2
Outputs
-------
angle : float of the angle (in degrees) between a and b
- atom_angles(defect, bonds)
- Determine angles around the defect coordinate.
Inputs
------
defect: list containing the xyz coordinate for the defect
xyz : 2-D list containing the xyz coordinates for the
atoms surrounding the defect.
Outputs
-------
angles: numpy array containing the angles for the atoms around the
defect
- determine_closest_atoms(number, defect, xyz, types)
- Determine the atoms closest to the defect
np.square(vectors[0,2]))
Inputs
------
number : int declaring how many surrounding atoms to use
defect : list containing xyz coords for the defect atom
xyz : list containing xyz coordinates for all atoms
types : list containing the atom types (in order of the coords)
Outputs
-------
array containing the distance, the cartesian coord., and
the type of atom.
- direct_to_cart(direct, vectors)
- Given the direct coordinates, transform into cartesian
Inputs
------
direct : numpy matrix containing the direct coordinates
vectors : numpy matrix containing the a, b, and c unit cell
vectors
Outputs
-------
xyz : numpy matrix with the xyz coordinates
- dist_between(xyz1, xyz2)
- Determine the distance between two points in cartesian space
Inputs
------
xyz1: list array of doubles containing the coordinates of the first point.
xyz2: list of doubles containing the coordinates of the second point.
Outputs
-------
double value of the distance between the two points.
- dopant_site(poscar)
- With the given VASP POSCAR file, determine the impurity location
given the folder structure
Inputs
------
poscar: File path for the relevant POSCAR file
Outputs
-------
impurity type of the defect as defined by collaborators
- find_files(data_dir)
- Locates the POSCAR files within the 'data_dir'
Inputs
------
data_dir: String with the top level of the directory to recurse
through
Outputs
-------
poscar: List containing paths to all found VASP POSCAR files
- geometry_defect(number, defect, poscar, return_coord=False)
- Determine the Atom type for the closest several atoms (ratio and
type), determine the bond lengths to the first several atoms around
the defect (return average), and determine the bond angle for the
first several atoms around the defect (return average).
Inputs
------
defect: output from impurity_type, is the defect type
poscar: VASP POSCAR file (cart or direct) with atom types and
positions.
Output
------
bonds : numpy array containing the bondlength, coordinates, and
atom type of the atoms surrounding the defect atom.
angles: numpy array containing the angles for the atoms
surrounding the defect atom.
- id_crystal(poscar)
- With the given poscar file, will attempt to identify which crystal
type it is. Has the following options for return:
Cd/Te
Cd/Se
Cd/S
Cd Te/Se (50/50)
Cd Se/S (50/50)
Inputs
------
poscar: string containing the path for the POSCAR file
Outputs
-------
Crystal type as string
- impurity_type(poscar)
- With the given VASP POSCAR file, determine defect type
Inputs
------
poscar: string containing the path for the POSCAR file
Outputs
-------
atom type of the defect
- unit_vector(vector)
- Returns unit vector of the vector.
Inputs
------
vector : numpy vector which to return the unit vector of
Outputs
-------
vector : numpy unit vector for input vector
|


The basic data types of JavaScript are letters, numbers, and boolean.
When declaring a variable, prefix the variable name with var.
var city = "New York";//or 'New York' var result = 1200 / 1000; var onGlass = true; alert('city: ' + city); alert('result: ' + result); alert('onGlass: ' + onGlass);
A local variable is a variable declared within a function and can only be used within a function.
A global variable is declared outside of a function and can be used by any function.
A variable declared without var is a global variable, regardless of whether the variable is inside or outside the function.
However, it is a good practice to always add var when declaring variables.
To declare a constant, precede the constant name with const.
Constant names consist of uppercase letters and _.
There are global constants and local constants like variables.
const PI = 3.14; alert('PI: ' + PI);
// is a one-line comment.
/* ~ */ is a multiline comment.
Identifiers can be made by combining letters, numbers, _, and $.
JavaScript identifies the case of identifiers.
Keywords can not be used as identifiers.
undefined means 'no value assigned' when a value is referenced while the variable is declared and uninitialized.
var i; alert('i: ' + i);
It is false if the condition is 0, "", NaN, undefined.
var i; if (i) { alert('i: ' + "true"); } else { alert('i: ' + "false"); }


2 Jul
New Reviews:Linkedln
GlassDoor Jobs | Reviews | Sign in Get free mobile app 15 updates from companies you are
following
28 Jun
forgg just went live on Twitch
Twitch forGG streaming
LIVE - donatong help
27 Jun
Now Hiring : Ancestry.com,Square and Adobe
GlassDoor New weekly jobs Get free mobile app 10 new jobs found for you this week senior
Software
forgg just went live on Twitch
Twitch forGG streaming
LIVE - donatong help
27Jun
Now Hiring:Ancestry.com,Square and Adobe
Glassdoor New weekly jobs Get free mobile app 10 new jobs found for you this week Senior
Software
25 Jun
You send $9.00 to<EMAIL_ADDRESS>You send<EMAIL_ADDRESS>$9.00 on Mon 2 2014
to be member


--- type: "youtube" title: "Best Android App to find your car." yt-video-id: "Qc_exb0MCfY" description: "Car Locator is an Android app that allows you to mark where you parked quick and easy via gps. It will later guide you back to that point." social_media_msg: "..." featimg: "http://images.dabannit.com/6c7770/2016-03-29-car-locator-one-of-the-best--android-app-to-find-your-car.html-6fd.jpg" article_videos: "" origin_url: "https://www.youtube.com/watch?v=Qc_exb0MCfY" ---
Best Android App to find your car
Car Locator is an Android app that allows you to mark where you parked quick and easy via gps. It will later guide you back to that point.


The elusiveness of ethics
Encoding fairness in an unfair world
About me
ethical-litmus.site
Section 1
Setting the scene
Once upon a time, in a
FinTech startup...
Descriptive
-vs-
Normative
Girls wear pink
(Descriptive)
Girls wear pink
(Normative)
The way the world is?
or
The way the world should be?
We make normative assertions all the time
Think of the drone...
Profit vs. Knowledge
-or-
Winning is not the same as understanding
Can a mousetrap be... unethical?
Building ML systems in a capitalist, corporate context:
There is no prediction; only intervention
Classification is never descriptive, always normative
So the moral is...
Predictive models are almost never descriptive when deployed within a capitalist framework
Section 2
Taxonomies of Bias
Two primary types of harm
- Allocative harms
- Representational harms
Is this good training data?
✅ Historical Bias
Can we capture this data well?
✅ Representation Bias
✅ Measurement / Sampling Bias
Can we form inferences from our data?
✅ Aggregation Bias
✅ Evaluation Bias
Can we deploy those inferences effectively?
✅ Deployment Bias
A map to plot harm mitigation
Section 3
Grappling with bias
Approaches
- Academic & Corporate Research
- Self-Regulation
- External Regulation
1. Academic & Corporate Research
- Mathematical definitions of fairness
- XAI - Interpretability & Explainability
- Model Drift
- Multi-disciplinary research
| |
Actual Positive |
Actual Negative |
| Predicted Positive |
True Positive (TP)
|
False Positive (FP)
|
| Predicted Negative |
False Negative (FP)
|
True Negative (TP)
|
Group fairness
Predictive parity
Counterfactual fairness
And many others...
2. Self-Regulation
- Strategy, Policies, Principles docs
- Checklists, Activities, Worksheets
- Risk assessment frameworks
- Explainability, Code tests
- Monitoring / notifications
A quick aside on principles documents
3. External Regulation
- External audits (theoretical)
- Industry body standards
- Law (Consumer protections, GDPR)
More coming soon?
- National policy? National agency?
- Right to a (human parsable) explanation?
- Dataset standardised labels?
- FDA style drug-testing? Wired
Section 4
Final observations
Bias is not one thing
- First identify
- Then measure
- Finally mitigate
Acknowledging failure
(is inevitable)
"I am an ethical person therefore I build ethical tech"
If you write a bug, it doesn't make you a bad programmer
If you make an ethical mistake, it doesn't make you an unethical person
Let's draw a line in the sand
Claiming moral authority
Claiming moral imperative
Acknowledging complexity


Install toolchain dependencies
ts_setup_workspace
ts_setup_workspace()
This repository rule should be called from your WORKSPACE file.
It creates some additional Bazel external repositories that are used internally by the TypeScript rules.
ts_setup_workspace()
This repository rule should be called from your WORKSPACE file.
It creates some additional Bazel external repositories that are used internally by the TypeScript rules.


Alyssa is a podcast enthusiast and her spirit cartoon character is Gudetama. She currently works at an education nonprofit managing data. She drinks too much coffee, asks a ton of questions, and is excited to get into programming for the laptop stickers. Who knows, by this time next year, she may have serious sticker-cred?


TalkToModel
Hello 😊, I'm a machine learning model trained to {{ datasetObjective }}.
Let's get started. Ask me something!
Send
👇Help me generate a question about...👇
important features
explanations
predictions
prediction likelihood
showing data
system capabilities
performance
what if scenario
how to change a prediction
dataset description
feature interaction effects
mistakes
data labels
Pins
Pin messages and they will appear here!


How did the 'process over product' concept affect the way you tackled the site redesign and rebuild?
At first, seeing the tasks were to redesing my site, I instantly thought about the endless amount of elements I wanted to include, and how it was going to look, and which colour or style. Though with this instruction, I could see the importance of timeboxing as it took me such a long time to complete the navigation bar itself.  I also saw the importance of structuring the page first as we all know this is very important for more efficient development. Although I can see why, it is very hard not completing the total style and feel as seeing it unfinished is like having that itch in your back that you can't scratch :)
What did you think about meditation before reading chapter 2?
Instantly my mind thinks, quite time, yoga, a peaceful state, and dare I say it, at times boring.
What new things have you learnt about meditation?
I loved reading this chapter as it shifted my mindset from the above, to understand it has a lot to do with attention and meta-attention (great bicycle analogy by the way). I always find this topic interesting as I can tend to procrastinate. I couldn't agree more that happiness is just 'being.' When your mind is at ease and clear, this is happiness, it is the default state of mind. The comparison between meditation and exercise resinated with me, and I agree, it is through resistance that one grows!
Did any of the suggested meditation techniques stand out to you?
Yes! The concept of experience without reaction and judging. This is definitely something I need to manage, as I often forget about lingin the experience itself and am in such a rush, or feel the need to judge different interactions, or everything can easily go out the window with my reactions.


Patterns are the most basic and intuitive problems for any beginner entering into the programming world. The goal is not to print just this one pattern, it is to learn the best approach to solve this kind of problems as these questions are frequently asked in coding exams and in job interviews. Each task in the pattern problems come with input format and output format to assist you in writing a proper code to get the desired output
Pre-requisites :
For Loop, While Loop
Practice Problems
hackerearth.com - https://www.hackerearth.com/problem/algorithm/pattern/
hackerrank.com - https://www.hackerrank.com/challenges/printing-pattern-2/problem
codeforwin.com - https://codeforwin.org/2015/07/right-triangle-star-pattern-program-in-c.html
codeforwin.com - https://codeforwin.org/2015/07/equilateral-triangle-star-pattern-program-in-c.html
codeforwin.com - https://codeforwin.org/2015/07/c-program-to-print-diamond-star-pattern.html
codeforwin.com - https://codeforwin.org/2015/07/c-program-to-print-hollow-diamond-star-pattern.html
codeforwin.com - https://codeforwin.org/2015/07/c-program-to-print-heart-star-pattern.html
spoj.com - https://www.spoj.com/problems/ABACABA/
Paris is the capital of France.
Tokyo is the capital of Japan.
Tokyo is the capital of Japan.
Tokyo is the capital of Japan.
Tokyo is the capital of Japan.
Tokyo is the capital of Japan.
Tokyo is the capital of Japan.
Tokyo is the capital of Japan.
Tokyo is the capital of Japan.
Tokyo is the capital of Japan.


-
"In WoW, about ten percent of my time in the game requires ninety percent of my attention. ". Never played it myself, but that's an interesting perspective...
-
-
It is.
-
-
-
"The iPhone is for consuming content, while the N95 is for creating it." Nicely put.
-
-
-
Story about iterative processes employed by Nintendo when outsourcing game R&D
-
-
""It's a service you would use to call close family and friends, and usage is predominately consumer-based"
-
T-shaped people
-
-
Vaguely interesting, though IMHO the difficult part of doing visual voicemail is persuading a carrier to open up its infrastructure to you, not the software...
-
-
Hmm... I'd agree, I think. iPhone does a nice job of predicting what you meant to write, but mistake correction is tricky. Using the keypad in landscape mode in Safari is noteiceably easier, I'm annoyed that the notes app doesn't let you do this...
-
-
-
Off to see this in November. Based on what I've heard so far I'm quite excited :)
-
Oooh, I like this. Short but sweet.
-
Blyk gives Sutha the creeps :)
-
Different sized EC2 instances ahoy!
-
-
-
"So mobile advertising = mobile web. Which is great news, as I always wanted to work in advertising."
-
Or more pessimistically, "ooh look, here's a situation in which customers will tolerate ads"
-
"All Linkin Park songs look the same"
-


A demo of voice-activity-emitter. Hit "Start listening", then start talking. Audio clips of each thing you say (assuming you pause between each thing you say) should appear. Hit "Stop listening" so that it stops making clips, then play the clips to make sure they're right.


What is a Relational Database Management System (RDBMS)?
A relational database management system (RDBMS) is a program/software that allows you to create, update, and administer a relational database.
Most Popular from DB-Engines Ranking
There are many ways to install MySQL.
We will use the software bundle call XAMPP
Navigate to http://localhost/phpmyadmin
Create a new database or schema
CREATE DATABASE Country;
list all databases or schemas
SHOW DATABASES;
Create a new database or schema
if it was not created previously
CREATE DATABASE IF NOT EXISTS Country;
Remove a database or schema
DROP DATABASE Country;
Remove database or schema
if it was created previously
DROP DATABASE IF EXISTS Country;
Create a new table or entity
CREATE TABLE Persons (
PersonID INT,
FullName VARCHAR(25),
Birthday DATE,
Height DECIMAL
);
list all tables or entities
SHOW TABLES;
Create a new table or entity
if it was not created previously
CREATE TABLE IF NOT EXISTS Persons (
PersonsID INT,
FullName VARCHAR(25),
Birthday DATE,
Height DECIMAL
);
Remove a table or entity
DROP TABLE Persons;
Remove table or entity
if it was created previously
DROP TABLE IF EXISTS Persons;


Next: The KEYWORD Package, Previous: Some Exceptions to Constraints on the COMMON-LISP Package for Conforming Programs, Up: Standardized Packages
The COMMON-LISP-USER package is the current package when a Common Lisp system starts up. This package uses the COMMON-LISP package. The COMMON-LISP-USER package has the nickname CL-USER.
The COMMON-LISP-USER package can have additional symbols interned within it; it can use other implementation-defined packages.


Welcome dear user!
Please login to use this application.
Click here to log in
Click here to use application without logging in.
Actions: Download tags (current page) | Download all tags (domain) | Delete tags from current page
Mark one or two words on the page to the right. And we'll supply you with possible definitions. Select a definition and the word will be tagged.
Currently selected word: {{vm.selectedWord}}
Currently selected word: No word selected.
Tag query url: This is the server endpoint that will be queried for synsets.
Tag storage url: As you go about tagging pages the tags will be posted to this server endpoint.
Tag email: The email that will be included in the tag when it's sent to the server.
Save settings saved!
Reset to default settings


{% extends 'bootstrap/base.html' %} {% block navbar %} {% include 'navbar.html' %} {% endblock %} {% block content %}
Cancer screening means checking your body for cancer before you have symptoms. Getting screening tests regularly may find breast, cervical, and colorectal (colon) cancers early, when treatment is likely to work best. Lung cancer screening is recommended for some people who are at high risk.
Golden Plaza, Waiyaki Way, Nairobi. Provides cancer screening services.
At Medanta Africare, we know that lab results are more than just numbers on a page.
You can
trust us to deliver fast, accurate information so you and your doctor
can make the best
decisions about your health.
Dr. Mutuma G.Z., Consultant Pathologist, Vision Plaza, Mombasa Road, 2nd Floor, Room 37, Nairobi. Provides consultation in histo-cytopathology, forensic and medical legal services, health education, cancer screenings, prevention and control
5th Avenue Office Suites, Opp. Traffic HQ – Upper Hill, 5th Ngong Avenue, Ngong Road, Additional locations around Nairobi, plus Eldoret, Garissa, Kibra, Kisumu, Malindi, Mombasa, Nakuru, Nyali, Thika.
It is an internationally accredited laboratory that provides cancer screening and diagnostic testing services for all cancers, through tests that are clinically validated. Tests are done at subsidized rates for public hospital patients and needy cases.
Mobile: 0729 111110, 0736 493100 Email<EMAIL_ADDRESS>Website: www.lancet.co.ke
Regal Plaza, Limuru Road, Nairobi
Provides cancer screening services.
"In addition to the Kenyan team, PathCare Kenya has access to the expertise of over 70 world class pathologists through its strategic alliance with PathCare South Africa"
+254 (0) 20 375 3416, +254 (0) 20 243 0854, +254 (0) 20 243 0753<EMAIL_ADDRESS>-->Cost of cancer treatment varies based on various factors, including level of treatment needed, inpatient vs. outpatient care, public vs. private hospitals, etc. Consult the institutions directly for cost information.
Limuru Road, Parklands, Nairobi
Provides detection and screening
programmes, specialised diagnostics,
chemotherapy and radiotherapy treatment,
palliative and
rehabilitation
programmes.
+254 (0) 20 366 2037/2644, +254 (0) 732 688 911,
5th Ngong Avenue, 5th Avenue Building, 3rd Floor, Nairobi,
Provides cancer diagnosis and out-patient treatment services
+254 (0) 714 298 000, +254 (0) 736 998 000,
Hospital Road, Nairobi,
Provides cancer screening, diagnosis, treatment (including chemotherapy, surgery, radiotherapy and palliative care).
+254 20 272 6450.
Kijabe Town
Provides screening, chemotherapy and surgery treatment for several cancers – primarily breast cancer, Kaposi’s sarcoma and surgically treatable cervical cancer. Provides palliative care.
P.O. Box 20, Kijabe 00220, +254 (0) 20 324 6500, +254 (0) 733 779 994<EMAIL_ADDRESS><EMAIL_ADDRESS>Along Mukenia & Dunga Road, South B, Nairobi
Provides leukemia, breast, cervical and prostate cancer testing services; surgery for malignant tumors; general cancer management services.
+254 (0)20 653 1199, +254 (0)733 641 870<EMAIL_ADDRESS>Shivachi Road, Parklands, Nairobi
Provides diagnosis, chemotherapy and radiotherapy treatments.
0733 606 752 (MP Shah), +254 20 374 0132 (Cancer Care Kenya<EMAIL_ADDRESS>(MP Shah<EMAIL_ADDRESS>(Cancer Care Kenya).
Hurlingham, Nairobi
Provides gynecologic oncology testing and treatment. Free breast screenings and fee-based cervical screenings each Thursday, 10am-4pm.
+254 20 272 6821<EMAIL_ADDRESS>AMPATH Oncology Centre, P.O Box 4606, Code: 30100, Eldoret, plus satellite clinics in: Kitale, Webuye, Busia, Chulaimbo (Kisumu), Mosoriot, Turbo, Iten
Provides cancer education, screening, diagnosis, treatment (including palliative care).
+254 704 381 628, +254 721 176 262.


UKCloud Limited (“UKC”) and Virtual Infrastructure Group Limited (“VIG”) (together “the Companies”) – in Compulsory Liquidation
On 25 October 2022, the Companies were placed into Liquidation with the Official Receiver appointed as Liquidator and J Robinson and A M Hudson simultaneously appointed as Special Managers to manage the liquidation process on behalf of the Official Receiver.
Further information regarding the Liquidations can be found here: https://www.gov.uk/government/news/virtual-infrastructure-group-limited-and-ukcloud-limited-information-for-creditors-and-interested-parties
Contact details:
For any general queries relating to the Liquidations please email<EMAIL_ADDRESS>For customer related queries please email<EMAIL_ADDRESS>For supplier related queries please email<EMAIL_ADDRESS>How to view storage profile usage
Overview
Before allocating more disk space in your UKCloud for VMware account, it's useful to check how much of your allocated space has been used.
Viewing a VDC's storage usage (Tenant Portal)
In the VMware Cloud Director Tenant Portal, you can see how much storage a VDC is currently using.
In the VMware Cloud Director Virtual Data Center dashboard, find the card for the VDC.
The Storage section shows how much storage the VDC is currently using as well as the amount of allocated storage.
Viewing a VM's storage usage (Tenant Portal)
In the VMware Cloud Director Tenant Portal, you can see how much storage an individual VM is currently using.
In the VMware Cloud Director Virtual Data Center dashboard, select the VDC that contains the VM.
Find the card for the VM.
The Storage section shows how much storage the VM is currently using.
Viewing a VDC's storage usage (Cloud Director API)
To check your storage profile usage programmatically, you need to call the appropriate Cloud Director REST API endpoint.
Note
Before calling this endpoint, you must first authenticate your session as described in How to access VMware Cloud Director through the Cloud Director API.
We've provided some sample code to show how to make this call on our GitHub repository.
The using_curl.md
page provides an example of how to use CURL to call the REST API. The example assumes that you have set up the following three environment variables to hold your user credentials:
VCD_ORG
VCD_USERNAME
VCD_PASSWORD
The example makes two calls to the API. The first call authenticates the session:
curl -u %VCD_USERNAME%@%VCD_ORG%:%VCD_PASSWORD% -H "Accept: application/*+xml;version=5.6" -X POST -i https://vcd.portal.skyscapecloud.com/api/sessions
Tip
On Linux, use $VCD_USERNAME
instead of %VCD_USERNAME%
.
Having authenticated successfully and received an x-vcloud-authorisation
header in the response, the second call passes the authentication token as a header on the request:
curl -H "x-vcloud-authorization: a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6" -H "Accept: application/*+xml;version=5.6" -i https://vcd.portal.skyscapecloud.com/api/query?type=orgVdcStorageProfile
This call returns an XML structure, in which you can see an OrgVdcStorageProfileRecord
element containing the following properties:
storageLimitMB="512000" storageUsedMB="65536"
The GitHub repository also provides a ruby example. Again, the script assumes the above environment variables have been set up with your user credentials.
You can use the ruby script by running:
ruby storage_profile.rb
The output will look similar to the following:
Name Used GB Total GB Percent VDC
BASIC-Any 192 500 38.5% XXXX
Feedback
If you find a problem with this article, click Improve this Doc to make the change yourself or raise an issue in GitHub. If you have an idea for how we could improve any of our services, send an email to feedback@ukcloud.com.


This blog is completely open source. It is based on the Jekyll library, which helps people create static sites, and is hosted on Github Pages.
Why?
- Hosting it myself gives me complete control of the format and content. Maintenance is fairly easy despite the extra steps. This is just a static site so I’m just editing Markdown files. Jekyll has great integration with Github and an active community to help with any issues.
- I like the development workflow for writing. Git let’s me track changes in an extremely detailed way. All my edits are available for anyone to see, which creates a strange sense of vulnerability and accountability.
Everything here is boilerplate Jekyll. A few small modifications:
I’ve slightly modified the default theme (Minima), and changes can be seen in commits in theUpdate: I’m now using a modified version of the Primer theme instead of Minima._layouts
,_sass
and_includes
directories in the repo.- The blog lives in a subdirectory based on instructions from this article).
- I’m using draft posts in the way described by this simple solution (drafts are enabled in Jekyll natively through the
_drafts
folder, but I like this solution bettter.) - URL structure updated so it doesn’t include categories (see
permalink
in_config.yml
) - Tags display will be added soon (I like this approach).


If you need assistance, find information regarding nearby
hospitals, bed capacity and test availability. If you are a nurse, doctor,
health department or state share information on hospital capacity using
Hospital Dashboard Login. Also,
instead of thinking a thousand times before stepping out, find out the
safety score of your destination location. We are keeping a track of the
crowd and if people are practicing social distancing and wearing masks to
make your outdoor trip safer.
Search for your Destination


In number theory, Dirichlet's theorem, also called the Dirichlet prime number theorem, states that for any two positive coprime integers a and d, there are infinitely many primes of the form a + nd, where n is also a positive integer. In other words, there are infinitely many primes that are congruent to a modulo d. The numbers of the form a + nd form an arithmetic progression
\[a,\ a+d,\ a+2d,\ a+3d,\ \dots ,\ \]
and Dirichlet's theorem states that this sequence contains infinitely many prime numbers. The theorem, named after Peter Gustav Lejeune Dirichlet, extends Euclid's theorem that there are infinitely many prime numbers. Stronger forms of Dirichlet's theorem state that for any such arithmetic progression, the sum of the reciprocals of the prime numbers in the progression diverges and that different such arithmetic progressions with the same modulus have approximately the same proportions of primes. Equivalently, the primes are evenly distributed (asymptotically) among the congruence classes modulo d containing a's coprime to d.
Since the primes thin out, on average, in accordance with the prime number theorem, the same must be true for the primes in arithmetic progressions. It is natural to ask about the way the primes are shared between the various arithmetic progressions for a given value of d (there are d of those, essentially, if we do not distinguish two progressions sharing almost all their terms). The answer is given in this form: the number of feasible progressions modulo d — those where a and d do not have a common factor > 1 — is given by Euler's totient function
\[\varphi (d). \]
Further, the proportion of primes in each of those is
\[{\frac {1}{\varphi (d)}}.\ \]
Dirichlet proved this theorem using Dirichlet L-series, but the proof is challenging enough that, in their classic text on number theory, the usually explicit Hardy and Wright (1979) report "this theorem is too difficult for insertion in this book."


data class StripeError : StripeModel, Serializable
A model representing a Stripe Errors object.
Stripe uses conventional HTTP response codes to indicate the success or failure of an API request. In general:
2xx
range indicate success.4xx
range indicate an error that failed given the information provided
(e.g. a required parameter was omitted, a charge failed, etc.).5xx
range indicate an error with Stripe's servers (these are rare).Some 4xx
errors that could be handled programmatically (e.g., a card is
declined) include an
error code that briefly explains the error reported.
charge |
For card errors, the ID of the failed charge. val charge: String? |
code |
For some errors that could be handled programmatically, a short string indicating the error code reported. val code: String? |
declineCode |
For card errors resulting from a card issuer decline, a short string indicating the card issuer’s reason for the decline if they provide one. val declineCode: String? |
docUrl |
A URL to more information about the error code reported. val docUrl: String? |
message |
A human-readable message providing more details about the error. For card errors, these messages can be shown to your users. val message: String? |
param |
If the error is parameter-specific, the parameter related to the error. For example, you can use this to display a message near the correct form field. val param: String? |
type |
The type of error returned. One of val type: String? |


Untitled 3nn
July 3rd 2011
thought that fair may work and she may come back
who busted down walls
broke glasses on the ground
speaking of ourselves with as if we were storms as if we were peaceful days as if we were atmospheres wherein larger natural
bodies take their place
enlightened sky in the morning dawn
enlightened sheer surfaces by moonlight
enlightened faces and distant objects lit by lightning


Event Location:
SwissRe, Twin City B
Mlynske Nivy 12
Bratislava, Bratislava Region, Slovakia
Abstract:
A common problem in database design is the implementation of entities that are different physically (for instance, they share some attributes but have additional, specific, attributes), but should logically participate in the same relationships as one and the same. For instance, the customer can either be a natural person (a person, for short), or a legal person (an organization or a company). The majority of the attributes of a natural person are, of course, different from the majority of the attributes of a legal person; however, from the perspective of how they participate in business operations, they need to be considered as equal. In this session you will learn how to use specific native SQL Server functionalities to solve this particular problem: sparse columns, XML, JSON, and/or even User-defined CLR types – in an OLTP database, as well as in a star (or snowflake) schema data warehouse.
Speaker(s): Matija Lah,
Abstract:
Power BI - Microsoft's favorite analytics tool has played a very significant role in spreading data driven culture among organizations. From the beginning Power BI was enhanced with many AI techniques, and plays a vital role in Microsoft's recent mission on "Democratizing AI". In my demo heavy presentation I will give a minimal overview on Power BI and Power BI Premium to give a context, and after it we will examine how AI is infused into PowerBI helping analysts became more productive in discovering hidden gems with functionality as of today from QA, Quick Insight, Explain differences etc. to R and Python integration In the second part of the presentation we will overview and try Microsoft's recent announcement arount integrating more deeply AI/ML into the product with functionalities like Automated ML, Azure ML integration and Azure Cognitive Services integration.
Speaker(s): Gergely Csom,
Abstract:
In Power BI, you can also do other kinds of analyses than just business analytics. In this lecture you’ll see, how you can use Power BI together with cloud services for quick check of facts from freely available data sources, even if they aren’t published in a particularly suitable format. You will also see, how you can quickly analyze unstructured text (e.g. communication with customers). At the end we will take a look at PowerApps, using which you can not only quickly create a new business app in your web browser, but also integrate it in your Power BI reports, so that you can quickly react to results and take action from a single environment. Because Power BI is capable of doing much more than “just” business analyses.
Speaker(s): Michal Chmelár,
Abstract:
When it comes to choosing a database, always there are considerations about picking a relational (SQL) or non-relational (NoSQL) data structure. While both are viable options, there are certain key differences between these two options that users must keep in mind.This session will cover the most important distinctions and will make a difference between two of a key players in the Microsoft database world: SQL Server and Azure Cosmos DB. The session will also illustrate some of the fundamental differences between these databases - the language, scalability and structure which cause this distinctions to have implications for the right choice.So which database is right for your business the attendance will take informations in this session.
Speaker(s): Aleksandar Talev,
Abstract:
In Power BI, you can also do other kinds of analyses than just business analytics. In this lecture you’ll see, how you can use Power BI together with cloud services for quick check of facts from freely available data sources, even if they aren’t published in a particularly suitable format. You will also see, how you can quickly analyze unstructured text (e.g. communication with customers). At the end we will take a look at PowerApps, using which you can not only quickly create a new business app in your web browser, but also integrate it in your Power BI reports, so that you can quickly react to results and take action from a single environment. Because Power BI is capable of doing much more than “just” business analyses.
Speaker(s): Michal Chmelár,
Abstract:
Azure Data Lake is an umbrella term consisting of multiple Azure services. As the name implies, these services are built for big data processing purposes. During this session, you will gain the understanding of which service to use and when - as well as when not to use. My aim is to deliver the fundamentals around the topic so that you can feel comfortable before your first dive into the Lake. I will also do demos using the latest and greatest services.
Speaker(s): Oskari Heikkinen,
Abstract:
JSON (JavaScript Object Notation) is a language in depended, very popular, open standard format for data exchange between applications and services. On this session accompanied by numerous examples we should pass through the usage of JSON in MS SQL. Main topics: - Format MS SQL data in JSON format - Read JSON data in MS SQL - Modify JSON data using JSON_MODIFY - JSON functions, tips tricks
Speaker(s): Damir Matesic,
Abstract:
How do the wait stats show you that you have a locking issue? This session will show you how to detect and view blocking and lock waits, and understand the cause of it. An extensive walkthrough of the different isolation levels and their respective benefits and drawbacks. And finally a real-world quick list of suggestions on what you can do to solve some of the common issues I come across in my daily work.
Speaker(s): Mikael Wedham,
Abstract:
Maybe you are still using some old MS SQL database engine and you are unsure why you should upgrade to 2016 or newer versions? In this session we will see what bring us some newly introduced MS SQL functions and syntaxes like COMPRESS, STRING_SPLIT, STRING_AGG, DROP IF EXISTS (a.k.a. DIE) and many more. How are they performing compared to some old solutions? Accompanied with multiple examples, this session will show you many interesting topics.
Speaker(s): Damir Matesic,
Abstract:
SQL Server big data clusters allow you to deploy scalable clusters of SQL Server, Spark, and HDFS containers running on Kubernetes. We'll dive into all the technologies to see how can you leverage SQL Server to be your big data platform.
Speaker(s): Marek Chmel,
This is a list of speakers from the XML Guidebook records. The details and URLs were valid at the time of the event.
LinkedIn: http://si.linkedin.com/in/matijalah/
Contact: http://milambda.blogspot.com
Matija Lah has more than a decade of experience working with Microsoft SQL Server, mostly architecting data-centric solutions in the legal domain. His contributions to the SQL Server community have led to the Microsoft Most Valuable Professional award in 2007 (Data Platform), which he held until 2017. In 2008 Matija joined SolidQ as a Mentor, located in Central and Eastern Europe. He spends most of his time on projects involving advanced information management, and natural language processing.
LinkedIn: https://www.linkedin.com/in/michal-chmel%C3%A1r-74538620/
Contact: https://www.powerpivot.sk
Michal Chmelár is top expert for Power BI, PowerPivot and the DAX language. He is author of Power-BI.sk and PowerPivot.sk blogs, which are the largest blogs about Power BI and PowerPivot in Slovakia and Czech republic. He’s also an author of a Slovak book about Power BI – “Reporting v Power BI, PowerPivot a jazyk DAX”. He got the experience not only in Czech republic and Slovakia, but also at bigger installations in the UK, Ireland, Norway and Iran. During the nights, he’s worshipping Master Yoda and secretly plans to conquest the universe.
LinkedIn: https://www.linkedin.com/in/aleksandar-talev-95159187
Contact: https://Www.sqlpass.org.mk
Aleksandar Talev is Chief Development Officer in Semos - Microsoft Gold Partner. He is professionally oriented to development of IT projects based on Microsoft technologies, primary SQL Server, Microsoft Power BI and Microsoft Azure. He has been working with SQL Server 6.5 since 1996. As a Microsoft trainer he is holding a Microsoft Curriculum courses focused on SQL Server as well as Power BI. As one of the founders of SQL Server User Group (PASS) Macedonia his free time he is engaged in developing the SQL Server community in Macedonia. He is a regular speaker on Microsoft conferences as well as local and global community events. In 2005 Microsoft awarded him with SQL Server MVP award.
LinkedIn: https://www.linkedin.com/in/michal-chmel%C3%A1r-74538620/
Contact: https://www.powerpivot.sk
Michal Chmelár is top expert for Power BI, PowerPivot and the DAX language. He is author of Power-BI.sk and PowerPivot.sk blogs, which are the largest blogs about Power BI and PowerPivot in Slovakia and Czech republic. He’s also an author of a Slovak book about Power BI – “Reporting v Power BI, PowerPivot a jazyk DAX”. He got the experience not only in Czech republic and Slovakia, but also at bigger installations in the UK, Ireland, Norway and Iran. During the nights, he’s worshipping Master Yoda and secretly plans to conquest the universe.
LinkedIn: https://cz.linkedin.com/in/mchmel
Contact: http://www.prosql.cz
I have started working in IT as a consultant and trainer for Microsoft server systems and from the beginning I did focus mainly on SQL Server. Few years back I have joined atamp;t, where I workin a team responsible for 24/7 operations for large SQL server environments. Our primary focus is architecture, delpoyment, performance tuning and disaster recovery for SQL Server ranging various sizes, versions and editions. If there#39;s any free time left, you can catch me speaking at a conference or teaching a Microsoft or security class in a training center.
LinkedIn: https://www.linkedin.com/in/dmatesic/
Contact: https://blog.matesic.info/
For many years Damir is a passionate programmer and a Microsoft SQL Server developer (ver. 2000+). He is a certificated Microsoft professional on various technologies. In 2020 Microsoft awarded him with Data Platform MVP. Damir leads the Croatian SQL Server User Group (PASS) and he introduced and organizes SQL Saturday events in Croatia. Founder and organizer of Data Community Weekender. He is working as Senior Database Developer @Span.eu. Damir speaks on various community events and conferences like SQLSaturday, Advanced technology days and user groups. When free he blogs about SQL @ https://blog.matesic.info.
Contact: http://www.wedham.com
Mikael Wedham is the first SQL Server MCM in Sweden and the only one who also is a Microsoft Certified Trainer. He has been paid to do things in SQL Server since 1993. His long experience makes him an appreciated speaker at events and conferences all over Europe. To be prepared for deep dives, he is also certified as an Open Water Scuba Instructor.
LinkedIn: https://www.linkedin.com/in/dmatesic/
Contact: https://blog.matesic.info/
For many years Damir is a passionate programmer and a Microsoft SQL Server developer (ver. 2000+). He is a certificated Microsoft professional on various technologies. In 2020 Microsoft awarded him with Data Platform MVP. Damir leads the Croatian SQL Server User Group (PASS) and he introduced and organizes SQL Saturday events in Croatia. Founder and organizer of Data Community Weekender. He is working as Senior Database Developer @Span.eu. Damir speaks on various community events and conferences like SQLSaturday, Advanced technology days and user groups. When free he blogs about SQL @ https://blog.matesic.info.
LinkedIn: https://www.linkedin.com/in/gergely-csom-27171670/
Data and AI expert with 15+ years of experience in various data warehousing, BI and AI projects in FSI, OilGas, Energy and Transportation. Experienced trainer, mentor, regular public speaker in various events. Nowadays building the best in class data team for helping our customers in their digital transformation journey in the super exciting Data AI driven revolution. Running cloud IoT pet projects nowadays in his free time:)
LinkedIn: https://www.linkedin.com/in/oskariheikkinen/
I have several years of experience in using Azure for data analytics at large scale. I have been implementing numerous projects for some of the largest companies in the Nordics. I am a Microsoft MVP, and I currently hold the MCSE: Data Management and Analytics certification. As a Microsoft Certified Trainer (MCT), I hold classes for subject-matter experts and consultants internally as well as give external customer training sessions. I am also an active speaker on community events.
The following is a list of sponsors that helped fund the event.


LVMH reportedly raises Tiffany bid by over US$1b
NEW YORK, Nov 21 — French luxury group LVMH has raised its bid to acquire US jewellers Tiffany by over US$1 billion (RM4.17 billion), two sources close to the matter told AFP yesterday.
LVMH, the owner of Louis Vuitton, Dior and Moet & Chandon increased its bid for the storied New York-based company to around US$130 per share from US$120 per share, the sources said.
The move lifts the overall value for Tiffany to around US$16 billion from US$14.5 billion.
Neither LVMH nor Tiffany immediately responded to a request for comment.
LVMH, which is led by billionaire Bernard Arnault, has sought to acquire Tiffany as a means to boost its presence in the US market.
The transaction has also been seen as way forward for Tiffany, which has not matched some rivals in terms of sales growth in recent years.
Some analysts have predicted a price hike would seal the transaction. — AFP


Home
Map
Methodology
Sources
Sources
Percentage of White People
Percentage of Black People
Percentage of Hispanic People
Percentage of Asian People
Median Rent
Median Household Income
Population Ages 25+ Whom Have a Bachelor's Degree and Up


my name is kyle.
i'm a full-stack software engineer with about 5 years of experience in technology.
it's nice to meet you. click the sprites above to learn a little more about me.
i'm a full-stack software engineer with about 5 years of experience in technology.
i have 3 years of experience on the Angular/Java stack. i also led a team in building an IAM dashboard from scratch using React at Capital One, and used lots of vanilla html/css/js to manage the sites at Denison Ministries.
i was a top undergraduate performer in our school's iOS bootcamp, with 4/6 projects rated best in class. using Swift, i built a mobile app to serve as a frontend for Capital One's internal social network.
songs that i have produced, sung and/or written have accumulated 200K+ plays on Spotify.
last but certainly not least, Jesus saved my life. i hope to glorify Him in everything that i do.


A Quick Intro to MongoDB in Rails
By Internet standards, MongoDB is a venerable NoSQL database. First introduced in 2009, it was designed as a scalable document storage engine. In Mongo, we don’t work with tables and rows, we work with collections and documents. Documents contain JSON/BSON hashes, so any data that can be represented as a hash can be stored in Mongo. Mongo is a schemaless database, meaning there’s no requirements nor enforcement about the structure of the data in a document.
Mongo is able to handle massive data sets quickly and efficiently, and is used by many big data organizations, including Foursquare, bit.ly, and CERN for collecting Large Hadron Collider data.
Installation
This is fairly straight forward using homebrew.
1
|
|
When it finishes, it will print out some information on setting up Mongo to start whenever you start your computer. I’m not a huge fan of that. Here’s what I use:
1
|
|
..and to stop it:
1
|
|
Mongo and Rails
Let’s make a new Rails application, but specify that we do NOT want Active Record installed.
1
|
|
cd
into the project, and edit the Gemfile, add this line:
1
|
|
Save, and then run
1
|
|
Just as when using a relational DB such as SQLite, Postgres, or MySQL, we need a configuration file. Mongoid installs a custom Rails generator for us. Run:
1
|
|
Open up the file it creates, located at config/mongoid.yml
and take a look. Take note of the different options we could configure. Don’t make any changes at this time; its enough to just take a look at what the generator created on our behalf.
At this point, I like to run rails s
and make sure the server starts, that everything is all hunkey-dorey. Once you’ve checked in a browser that Rails is at least starting up correctly, let’s make a new git repo and check in what we’ve got so far.
Let’s get started. Since this is a demonstration, let’s cheat a little bit and use Rails’ scaffolding generators to get us started.
1
|
|
Use git status
to see what the command generated. It should all look pretty normal.. but let’s take a look at the model it generated.
1 2 3 4 5 6 7 |
|
Quite different! MongoDB doesn’t have a database schema, so no database migrations are needed. If we want a new field, we could just declare one in the model and add it to our views. Migrations are occasionally used, but they’re for data migration or transformation, not changing the structure of the database.
Let’s fire up our Rails server and visit the scaffolded route (at http://localhost:3000/people
) There we see the vanilla Rails CRUD forms. Let’s add a person.. and look at the URL in the show page – weird! We’re used to seeing incrementing IDs created for us by the database. Each row that is added to the table increments the row counter by exactly 1, so we might say that each row has a locally unique sequential identifier.
MongoDB uses these weird looking hashes of alphanumerics like “532e2ba7546f6c30aa000000”. This Object ID is always 12 bytes, composed of a timestamp, client machine id, client process id, and a 3-byte incremented counter.
Documents
Let’s take a look at what a document looks like.
You may have seen command line interfaces for PostgreSQL, so it shouldn’t come as a shock that MongoDB offers one as well. In a terminal window:
1
|
|
Note that I found the name of our database by looking at config/mongoid.yml
.
Mongo uses its own special command language for working with its data. If you get stuck, just type help
.
First, let’s take a look at the collections in this database.
1 2 3 4 |
|
To find a record, the format is db.[collection].find()
1 2 3 4 5 |
|
Note that the first command returned ALL documents in the collection, we just happened to only have one document, so that’s all that was returned.
Remember when I said that MongoDB stores everything as JSON? Mongo actually uses JavaScript here in the command line.
1 2 3 4 5 6 7 |
|
If we want to see what the code for a Mongo command looks like, we can call the function without parenthesis.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
Wrapping Up
Why MongoDB?
MongoDB is designed to be highly-scalable and flexible, but remain familiar enough that application developers could use it easily. Working with Mongo is mostly the same as working with a traditional RDBMS (except for being unable to do server-side JOINs between two sets of data..)
Because it can’t do server-side JOINs, the relationships between different objects (Users have Posts, Posts have Comments, Comments have Users) can be tricky, as you need to set up those relationships in the model.
Why not MongoDB?
How MongoDB encourages denormalization of schemas (by not having any) might be a little too much for some to swallow. Some developers find the cold, hard constraints of a relational database reassuring.
Although sometimes restrictive, a database schema and the restraints it places on our data can be reassuring and useful. While MongoDB offers a huge increase in scalability and speed of record retrieval, its inability to relate documents from 2 different collections — the key strength of a RDBMS — makes it often not the best case for a CRUD-focused web application.
Because MongoDB is focused on large datasets, it works best in large clusters, which can be a pain to design and manage.
Resources
Why I think Mongo is to Databases what Rails was to Frameworks
Meaty blog post from John Nunemaker on why you should use MongoDB http://www.railstips.org/blog/archives/2009/12/18/why-i-think-mongo-is-to-databases-what-rails-was-to-frameworks/
Why you should never use MongoDB
Lengthy blog post by Sarah Mei on the Discourse project’s use of MongoDB, and why they ultimately migrated to PostgreSQL. The comments are actually worth reading. http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/
Mongoid Gem
Good documentation about working with MongoDB from a Ruby and RoR perspective http://mongoid.org/en/mongoid/
Railscast on Mongoid
http://railscasts.com/episodes/238-mongoid
Railscast on MongoDB
This one is a bit dated but worth a read-through. http://railscasts.com/episodes/194-mongodb-and-mongomapper
Devise with Mondoid
http://railsapps.github.io/tutorial-rails-mongoid-devise.html


{% extends "base.html" %} {% block content %}
This web application was developed for the Ask Ubuntu General Room by Nathan Osman based on an idea by one of the moderators. Here is a basic overview of what the application does:
For the curious, the entire application is available on GitHub.
Whenever a message is tweeted by the account, it will be displayed below with the author and a link to the original context of the message. Information about the tweet (including star count) was correct at the time of scraping.
{% import "util.html" message %} {% for t in tweets %}No messages tweeted


PVIEW: Princeton LC-MS/MS Data Viewer and Analyzer
|
|
This software implements the algorithms described in the
following papers. Please cite these papers if you find PVIEW helpful for your work. Thanks!!!
- Zia Khan, Joshua S. Bloom, Benjamin A. Garcia, Mona Singh, and Leonid Kruglyak. Protein Quantification Across Hundreds of Experimental Conditions. Proceedings of the National Academy of Sciences. September 15, 2009 vol. 106 no. 37 15544-15548.
- Accurate proteome-wide protein quantification from high-resolution 15N mass spectra. Z. Khan(*), S. Amini(*), J. S. Bloom, C. Ruse, A. A. Caudy, L. Kruglyak, M. Singh, D. H. Perlman, and S. Tavazoie. Genome Biology 2011, 12:R122. (*) equal contribution. Supplemental data is available here.
You can also read about the basic idea here:
PVIEW has also been used successfully in the following papers:
-
Impact of regulatory variation from RNA to protein,
A. Battle(*), Z. Khan(*), S. H. Wang(*), A. Mitrano, M. J. Ford, J. K. Pritchard, Y. Gilad. Science 6 February 2015:
Vol. 347 no. 6222 pp. 664-667. (*) equal contribution
-
Stoichiometry of site-specific lysine acetylation in an entire proteome, J. Baeza, J. A. Dowell, M. J. Smallegan, J. Fan,
D. Amador-Noguez, Z. Khan and J. M. Denu. August 1, 2014 The Journal of Biological Chemistry, 289, 21326-21338.
- Primate Transcript and Protein Expression Levels Evolve Under Compensatory Selection Pressures. Z. Khan, M. J. Ford, D. A. Cusanovich, A. Mitrano, J. K. Pritchard, Y. Gilad, Science. 29 November 2013: Vol. 342 no. 6162 pp. 1100-1104.
- Quantitative Measurement of Allele-Specific Protein Expression in a Diploid Yeast Hybrid by LC-MS. Z. Khan, J. Bloom, S. Amini, M. Singh, D. Perlman, A. Caudy, L. Kruglyak. Molecular Systems Biology (2012), 8:602. Supplemental data is available here.
- Global secretome analysis identifies novel mediators of bone metastasis. M. A. Blanco, A. LeRoy, Z. Khan, M. M. Aleckovic, B. M. Zee, B. A. Garcia, and Y. Kang. (2012) Cell Research (2012) 22:1339-1355. Highlight: Cell Research
- BclAF1 restriction factor is neutralized by proteasomal degradation and microRNA repression during human cytomegalovirus infection S. H. Lee, R. F. Kalejta, J. Kerry, O. J. Semmes, C. M. O'Connor, Z. Khan, B. A. Garcia, T. Shenk, and E. Murphy. Proceedings of the National Academy of Sciences, 109: 9575-9580, 2012.
- Direct targeting of Sec23a by miR-200s influences cancer cell secretome and promotes metastatic colonization
M Korpal. F. M. Buffa, T. Ibrahim, M. A. Blanco, T. Celia-Terrassa, L. Mercatali, Z. Khan(*), H. Goodarzi, Y. Hua,Y. Wei, G. Hu, B. A. Garcia, J. Ragoussis, D. Amadori, A. L. Harris, Y. Kang. Nature Medicine 17, 1101-1108 (2011).
PVIEW has a number of useful features
- full GUI with cross platform support (Windows, MacOS, Linux)
- support for ETD fragmentation
- isotope labeled heavy vs. light quantification (e.g. SILAC)
- 15N heavy vs. light quantification
- isotope labeled heavy vs. medium vs. light (e.g. pulsed SILAC) quantification
- nonlinear alignment label-free quantification
- label free XIC-based quantification based on MS/MS DB search results
- XIC-based quantification where XICs are cross referenced based on their assigned peptide sequence
- integrated MS/MS database search
- internal reverse concatenated decoy database construction
- integrated FDR and q-value estimation using a reverse concanted decoy database
- support for external search engines (e.g. Mascot, SEQUEST, X! Tandem) via the PepXML file format
- protein grouping to account for isoforms and peptides that occur in many proteins
- completely open source
- support for data from Orbitrap, FTICR, and high resolution QTOF instruments
- tight integration with the R statistical programming language
- multi-threaded, PVIEW can take advantage of multiple CPU cores on your computer
- PVIEW is fast because it relies on space partitioning data structures
Sign up for the Google Groups email list by clicking here PVIEW Google Group.
System Requirements: For full data visualization capabilities, we recommend a
computer with 8GB of RAM or more and a 64-bit operating system.
Source Code
Click here to download (pview_src_17jul2014.zip).
We request you to read the copyright notice at the bottom of this web page before downloading the
software.
PVIEW requires Qt version 5.0.x or newer and the Expat XML Parser version 2.0.1 or newer. The R Statistical Programming Language is highly recommended for data analysis.
Please read the included README for instructions on how
to compile the source code for your operating system.
Binaries
For your convenience, we've created binaries for Windows.
If you're unable to run PVIEW, please try installing the Visual
C++ 2008 Redistributable package (included as vcredist_x86.exe, 32-bit, or
vcredist_x64_2012.exe, 64-bit, in the .zip files above).
Column Descriptions
Below are column descriptions for
the main output file for isotope-labeled quantification for 2
labels:
- ratio.id
- identifier of a specific XIC pair used for quantification
- group.id
- identifier associated with a particular group of proteins
- protein.group
- protein group, based on peptides identified, the most specific protein IDs possible
- protein.group.nfrags
- number of fragments within 6-40aa for each member of the protein group, useful for absolute quantification
- group.N
- number of ratios in each protein group
- group.log2.HL.ratio
- median heavy/light ratio for protein group
- group.c
- isotope pair condition, pulled from directory structure
- group.r
- isotope pair replicate, pulled from directory structure
- group.i
- isotope pair instrument run, pulled from file name
- L.mz
- m/z of light XIC in isotope pair
- L.rt
- retention time of light XIC in isotope pair
- H.mz
- m/z of heavy XIC in isotope pair
- H.rt
- retention time of heavy XIC in isotope pair
- log2.HL.ratio
- log2(heavy/light) ratio for pair pair
- log2.xicH
- area under of heavy XIC
- log2.xicL
- area under of light XIC
- log2.xicHL.avg
- average of area under XICs
- ms2.scanNum
- spectrum scan number for MS/MS ID
- ms2.mz
- precursor m/z for MS/MS spectrum
- ms2.score
- MS/MS search score
- ms2.qvalue
- q-value or FDR corrected significance for search result
- ms2.charge
- precursor charge of MS/MS spectrum
- ms2.protein
- proteins from which the search result can originate from, separated by ||||, use strsplit in R
- ms2.protein.nfrags
- number of fragments in 6-40aa range, useful for absolute quantification
- ms2.seq
- peptide sequences assigned to this isotope pair
- ms2.missedcleaves
- number of missed cleaves in peptide match
- ms2.ppm.error
- precursor mass error in PPMs
- mz.theory
- theoretical m/z for the peptide match
- ms2.Nmods
- number of variable modifications in peptide match
- ms2.origin
- XIC from which match was obtained (heavy or light)
- ms2.shared
- set to true if peptide is shared between multiple protein groups
Thermo2PVIEW: Converting .RAW files to PVIEW .mzXML
PVIEW takes only centroided mzXML files as input. For
ThermoFisher LTQ-Orbitrap and LTQ-FTICR instruments, we recommend
you collect the MS1 scans in profile mode and MS2 scans in
centroid mode. If the data files are too big, centroid MS1 and
centroid MS2 work just as well.
For your convenience, we provide a utility we call
Thermo2PVIEW that will convert a directory of ThermoFisher
LTQ-Orbitrap or LTQ-FTICR .RAW files into PVIEW compatible .mzXML
files. Click here to download (Windows 64-bit, thermo2pview_win64_17jan2014.zip) the Windows
binary.
In order to use Thermo2PVIEW you need to uncompress the .ZIP
file and run MSFileReaderSetup.exe. Then try running the
Thermo2PVIEW.EXE. If Thermo2PVIEW still doesn't run, try
installing the Visual C++ redistributable package
vcredist_x86.exe.
Thermo2PVIEW uses a library provided by ThermoFisher for
accessing their .RAW files. MSFileReader.
If you want to see the source code of Thermo2PVIEW, you can by clicking here to
download (thermo2pview_src_17jan2014.zip).
mzXML file organization
PVIEW can analyze complex experiments, but it requires you use
a very specific directory structure for your files. First, you
should create a directory with your experiment name
(e.g. MyExperiment). In this folder, you should copy FASTA files
containing the amino acid sequence information for your
contaminant proteins, organismal proteins, and any other proteins
you expect. These are merged into one single data base
automatically. NOTE: No reverse/decoy databases are necessary
PVIEW constructs them automatically!
MyExperiment/contaminants.fasta
MyExperiment/my_organism_proteins.fasta
MyExperiment/my_other_proteins_proteins.fasta
For an isotope labeled experiment, lets say that you collect two
experimental conditions relative to a common reference. For each of
those two conditions you collected two replicates and for each
replicate you used two gel or SCX fractions. You will have a total of
8 mzXML files from 8 instrument runs. These files should be organized
as follows:
MyExperiment/Condition1/ReplicateA/ReplicateA_Fraction1.mzXML
MyExperiment/Condition1/ReplicateA/ReplicateA_Fraction2.mzXML
MyExperiment/Condition1/ReplicateB/ReplicateB_Fraction1.mzXML
MyExperiment/Condition1/ReplicateB/ReplicateB_Fraction2.mzXML
MyExperiment/Condition2/ReplicateA/ReplicateA_Fraction1.mzXML
MyExperiment/Condition2/ReplicateA/ReplicateA_Fraction2.mzXML
MyExperiment/Condition2/ReplicateB/ReplicateB_Fraction1.mzXML
MyExperiment/Condition2/ReplicateB/ReplicateB_Fraction2.mzXML
For alignment-based label-free quantification, the directory structure
containing the mzXML files is a little different. lets say you ran 4
replicates of the same sample from condition #1 and four replicates of
another sample from condition #2. Each of the 4 replicates can be
divided into technical replicates consisting of two replicates each.
For this experiment, you can organize the files as follows:
MyExperiment/Condition1/BioRepA/TechRep1.mzXML
MyExperiment/Condition1/BioRepA/TechRep2.mzXML
MyExperiment/Condition1/BioRepB/TechRep1.mzXML
MyExperiment/Condition1/BioRepB/TechRep2.mzXML
MyExperiment/Condition2/BioRepA/TechRep1.mzXML
MyExperiment/Condition2/BioRepA/TechRep2.mzXML
MyExperiment/Condition2/BioRepB/TechRep1.mzXML
MyExperiment/Condition2/BioRepB/TechRep2.mzXML
PVIEW will align the technical replicates first and then it will align
the biological replicates. Last, it will align across conditions.
PepXML External Search Engine Support
PVIEW has an internal search engine, but also allows you to
import search results from external search engines using the
PepXML file format. In order to load PepXML files, create an
additional directory under MyExperiment called pepxml.
MyExperiment/pepxml
In this directory put all of your validated PepXML files.
MyExperiment/pepxml/validated1.pep.xml
MyExperiment/pepxml/validated2.pep.xml
PVIEW will automatically detect PepXML files in this directory and
load your search results.
You can convert the output of external search engines using
tools from the TPP.
You can download binaries for doing the conversion from here
TPPTools_v4_3.zip.
Keyboard Interface
All interaction with the GUI occurs using the following shortcut
keys. Future versions will have a better mouse driven interface.
- Z Press Z and draw box to zoom into data.
- X Zoom out.
- F Toggle filtered and raw peak data display.
- 1 Press 1 and draw box to select XICs (blue dots with lines) and display in dialog.
- 2 Press 2 and draw box to select XICs and display any contained MS/MS spectra in dialog.
- 3 Press 3 and draw box to select red MS/MS peaks.
- + Increase size of displayed peaks.
- - Decrease size of displayed peaks.
- R Cycle through range query region used for filtering and XIC construction
- G Display graph used to build XICs. Only works for filtered peak data.
- A Show region used for aligning to a reference instrument run or reference run set.
- P Display the retention time range used to group XICs across replicates.
- S Turn XIC display on and off. Also shows MS/MS IDs.
- I Display regions used to group XICs in stable-isotope mode or regions used to filter bad XICs in label-free mode
- O Display positions of grouped XICs across replicates and conditions
Algorithm Options and Parameters
Algorithm options and parameters are described below based
organized by tab in the "Data Load Configuration" dialog box. The
parameters descriptions are organized by tab. A lot of these
parameters are in PPMs. Note that that ppm * 1e-6 * m/z = Da.
Data These parameters control how much of the data should
be loaded and how many CPUs to use to load the data. If you have a
4-core computer set the load threads parameter to 4!
- number of CPU cores Number of CPUs to use to load and process the data.
- quantification mode isotope labeled or a label-free quantification modes
- keep raw peaks Keep raw peak data in memory.
- keep filtered peaks Keep filtered peaks.
- keep XIC peaks Keep chromatogram peaks (2d peaks).
- load MS/MS data Load MS/MS fragmentation spectra.
- keep MS/MS spectra After database search, keep MS/MS spectra in memory
- Run processing algorithms Run algorithms or just serve as a viewer.
XICs These parameters control aspects of finding XICs in the data. They need adjustment depending on
chromatography, gradient, and instrument type.
- filter delta m/z (ppm) Height of orthogonal range/box query used to filter noise peaks in ppms.
- filter delta time Width of orthogonal range query used to filter noise peaks.
- peak threshold Minimum number of peaks returned in range queried to keep peak as signal.
- log10(I) histogram threshold log10(I) histogram threshold fraction
- XIC delta time Width of orthogonal range query used to construct XIC graph.
- XIC delta m/z (ppm) Height of orthogonal range query used to construct XIC graph.
- XIC min Minimum length in seconds of an XIC.
- XIC max Maximum length in seconds of an XIC.
- isotope tolerance Tolerance used for finding isotopic XICs (in PPMs).
Free These parameters control aspects of label-free quantification.
- align translation Use retention time translation adjustment.
- align nonlinear Perform robust nonlinear alignment.
- align dtime Width in retention of query used to align.
- xic width m/z PPM width of box used to group across runs.
- group delta time Retention time window used for XIC grouping across runs.
- min conditions in group Minimum conditions a XIC must occur in.
- min replicate sets Minimum number of replicates represented by an XIC group (label-free only).
- min instrument runs Minimum number of runs represented by an XIC group (label-free only).
- skip median of median normalization Label free runs are normalized to adjust for differing protein amounts loaded.
Isotope These parameters control aspects of stable
isotope labeled quantification. Add, select, and remove isotope
labels. Click and highlight the isotopes to select those present
in your data. New user-defined isotopes can be added.
- max label count Maximum number of labels per peptide (e.g. account for missed cleaves).
- *skip* normalize isotope ratios do not center the log2 ratio of each isotope pair around zero. Adjusts for loading error.
- use 15N metabolic labeling active 15N pairing
- Description a description for a custom user specified label
- Heavy mass shift A mass shift for a user specified label.
- Medium mass shift A medium mass shift for a user specified label (leave as zero by clocking OK in the shift calculator).
- Amion acids Amino acids that have the custom mass shift.
- Add/Remove Click to add and remove a custom isotope label
MS2 These parameters control database search.
- precursor tolerance +- window in PPMs used for precursor mass
- MS2 tolerance +- window in (ppms or daltons) used for matching fragment peaks
- desired FDR False Discovery Rate (FDR) desired from database search. Estimate using a concatenated reverse decoy databse.
- missed cleavages Missed cuts by selected enzyme
- Lys-C, Trypsin, etc Enzyme used for theoretical digest
- max var modified AAs for variable modifications, this sets the limit on the number of amino acids that
can be modified on a single fragment.
- desired site localization FDR maximum site FDR rate for PTM site localization
Fixed Add, remove, and select fixed modifications. Select
items in modification list to activate. Multiple fixed
modifications can be selected at one time. A new fixed
modification requires the following information:
- Description description of the modification type
- Amino acids character codes of amino acids that are
modified. List them with no spaces in between. Note that #
specifies the protein N-terminus and * specified the protein
C-terminus whereas [ and ] specify the cleavage N-terminus and
C-terminus respectively.
- Mass shift Dalton shift in mass.
- use fixed 15N modifications database search on heavy 15N only labeled data
Variable Add, remove, and select variable modifications. Select items in modification list
to activate the modification. Multiple fixed modifications can be selected at one time.
A new variable modification has to be specified by first entering a description,
then specifying a mass shift.
Once this information is specified, then individual fragment modifications can be entered.
These are specified by entering an abbreviation, effected amino acid codes,
and a mass shift relative to the precursor mass shift. This can be set to zero
by opening the mass calculator just hitting OK.
- Description descriptive name
- Abbreviation an abbreviation for the PTM used in spreadsheet output
- Mass mass shift of the precursor fragment
- Amino acids amino acids codes modified
- Frag. Mass shift shift relative to the precursor mass of the modification.
This is usually zero except in the case of losses. To make this zero click the "..."
- Maximum count This parameter specifies the maximum number of times you can
see this modification on a peptide. If it is 0, this implies it is only limited by the MS/MS search parameters
- +/- Add and remove a fragment modification mass shift.
- Add/Remove Add or remove a user-specified variable modification from the list
Tutorials
In order to learn how to use PVIEW (it's not that hard), we
provide several tutorials below.
Stable Isotope labeled Quantification Tutorial
Stable isotope labeling is currently the least noisy method for
quantification. It works by the introduction of a heavy isotope at
a specific Dalton shift. PVIEW now has initial support for three
labels: heavy, medium, and light.
- Download
(VanHoof2009_subset.zip, 290MB) and unzip a subset of a large
phosphoenriched data set. Note the original RAW files have
already been converted to mzXML and centroided. The full data is
from a the Cell Stem Cell paper Phosphorylation
dynamics during early differentiation of human embryonic stem
cells and can be download from Proteome Commons. It has
the following Tranch hash number:
g8hGaNTX/w5BHBEt9+NwoPQLeenbTK7xNKGFk23dkLpfEsf4IuHCLcXRBUjSwanxykWXwSjW51xGYRTzrLxKNGMkMugAAAAAAABsPg==
- Make note of the directory structure. There are two time
points and only one replicate of each time point in this
subset.
- Run PVIEW. Chose File > Open and select the
VanHoof2009_subset directory that was created when you unzipped
the data set.
- Click through the tabs and make note of a few
parameters. First, under the "Load" tab set the parameter "load
threads" to the number of processors on your computer. Next,
under the "Isotope" tab Lys8 and Arg10 are selected as
labels. The "Use Isotope Mode" box is checked to indicate that
isotope labeled quantification should be used. Under the "MS2"
tab up to 4 variable mods are allowed per peptide and under the
Variable tab each of STY phosphorylation is selected. Note also
that under the "Memory" tab "Keep raw peaks" is unchecked. This
is for systems that have smaller amount of RAM. If you have more
than 4GB of RAM you should check "Keep raw peaks."
- In order to load and process the data click the "Load
data..." button. This will take a few minutes.
- Once
this processing is done you can navigate the data set using the
keyboard commands. If you click on the "Isotope" tab, you will
see a tree view of protein groups. Keep clicking until you see a
tryptic fragment and for that fragment a list of ratios. You can
double click on this ratio and entry and PVIEW will
automatically jump to the corresponding isotope pair in the data
set.
- Next you can save and analyze the data by selecting the
menu item "Isotope Pairs > Save All.." Find a destination
directory and enter "VanHoof2009.txt" Once you do this PVIEW
will generate several tab delimited table files VanHoof2009.txt
(list of isotope pair ratios), VanHoof2009_corr.txt (data for
correlating replicate isotope labeled runs, not really relevant
here), VanHoof2009_internal.txt (data for computing protein
level internal ratio correlations), VanHoof2009_internal_pep.txt
(data for computing peptide level internal ratio correlations),
VanHoof2009_mass_error_ms1.txt (precursor mass error data),
VanHoof2009_mass_error_ms2.txt (MS/MS mass error using b1+ and
y1+ fragment ions), VanHoof2009_table.txt (summary data in
tabular format on a per-protein group basis), and
VanHoof2009_table_pep.txt ( summary data in tabular format on a
per-peptide basis).
- With your version of PVIEW you
should find an R Programming Language script called
reports.R. Copy this into the directory containing all of
the CSV files and run R in that directory. Run the following
commands in R: source("reports.R") to load the script and
isotope.pair.report("VanHoof2009.txt"). Run q() to
quit R.
- Running these R commands will create subdirectory called
VanHoof2009 that will contain several useful
plots. mass_error.pdf and mass_error2.pdf contain the precursor
mass error and product ion mass error distributions
respectively. internal_[30,240]min.pdf and
internal_[30,240]min_Rep1.pdf correlates ratios of two groups of
tryptic fragments from the same protein at the condition and
replicate level. internal_[30,240]min_pep.pdf correlates
duplicate measurements (e.g. different charge state) of the
same peptide in the data. internal_[30,240]min_pep_mod.pdf does the
same thing but for peptides with PTMs. For runs that have replicates of the
same condition, you will also get plots that have the following
name format: corr_xxxx.pdf. These correlate ratios across the
replicates.
- Any of the tab-delimited CSV files can be loaded into a spreadsheet program like
Microsoft Excel. They can also be easily read into the R for statistical analysis
by using the following command data <- read("VanHoof2009_xxx.txt", stringsAsFactors=F).
You can run names("data") to get the column names in each
CSV files.
Orbitrap Velos Data
For fun, I added a tutorial for an isotope labeled data set collected on a Thermo Scientific Orbitrap Velos.
The data set is from the recent paper Super-SILAC mix for quantitative proteomics of human tumor tissue.
- Download (Velos.zip, 1.3GB) and
unzip the data set. I've done the .mzXML conversion for you already
- Run PVIEW. Chose File > Open and select the Velos
directory that was created when you unzipped the data set.
- In order to load and process the data click the "Load data..." button. This will take a few minutes.
- Once this processing is done you can navigate the data set
using the keyboard commands. If you click on the "Isotope" tab,
you will see a tree view of protein groups. Keep clicking until
you see a tryptic fragment and for that fragment a list of
ratios. You can double click on this ratio and entry and PVIEW
will automatically jump to the corresponding isotope pair in the
data set.
- Next you can save and analyze the data by selecting the menu item "Isotope Pairs > Save All.."
Save the data by entering "Velos.txt" in the dialog box.
- With your version of PVIEW you
should find an R Programming Language script called
reports.R. Copy this into the directory containing all of
the CSV files and run R in that directory. Run the following
commands in R: source("reports.R") to load the script and
isotope.pair.report("Velos.txt"). Run q() to
quit R.
In the Velos sub-directory created by the R script, you should see
several useful plots for assessing the data quality.
Alignment-Based Quantification Tutorial
Alignment based quantification is a label-free quantification
technique. Instrument runs are nonlinearly aligned and XICs are
grouped based on their retention time. This allows MS/MS IDS to be
transferred across instrument runs, increasing the number of
proteins and peptides quantified.
- Download (BYRMFoss2007.zip,
1.4GB) and unzip each of these 10 replicates each of yeast
strains RM11-1a and BY4716 from the study Genetic
basis of proteome variation in yeast by Foss et al.
- Make note of the directory structure. Each of the FASTA files
are the project BYRMFoss2007 directory. The ten replicates each
of strain RM11-1a and BY4716 are in the RM and BY subdirectories
respectively.
- Run PVIEW. Chose "File > Open" and select the
BYRMFoss207 directory. It was created when you unzipped
the data set.
- Click through the tabs and make note of a few
parameters. First, under the "Load" tab set the parameter "load
threads" to the number of processors on your computer. Click on
the "Free" tab and notice that "Use align mode" is checked.
This tells PVIEW to align LC-MS/MS runs. Also "align
translation" and "align nonlinear" are checked to perform the
maximum amount of retention time correction. Note that "min cond
thres" is set to 2 requiring that a peptide should XIC occur in
both strains and "Minimum instrument runs" is 5 designating that
the signal occurs in 5 out of the 10 replicate instrument
runs. Note also that under the "Memory" tab "Keep raw peaks" is
unchecked. This is for systems that have smaller amount of
RAM. If you have more than 4GB of RAM you should check "Keep raw
peaks."
- In order to load and process the data click the "Load
data..." button. This will take a few minutes.
- Once this processing is done you can navigate the data set
using the keyboard commands. Try pressing the Z key and drawing
a box. This will zoom into the data. Try hitting the S key to
show the XICs with their IDs. Also try hitting the O key to
show the aligned and grouped XICs across instrument runs.
If you click on the "XIC" tab you will see a tree view of
protein groups. Keep clicking until you see a tryptic fragment
and for that fragment a list of area under the XIC values
under the fragment. Double click on one of these and PVIEW
will automatically jump to the corresponding XICs aligned in
the data set.
- Next, you can save and analyze the data by selecting the
menu item "Label Free > Save CSV.." Find a destination directory
and enter "BYRMFoss2007.txt" Once you do this PVIEW will
generate several tab delimited table files BYRMFoss2007.txt (
per-protein quantification table), BYRMFoss2007_peptides.txt
(per-peptide quantification table), BYRMFoss2007_internal.txt (
ratio correlations between all pairs of conditions),
BYRMFoss2007_mass_error.txt ( precursor mass errors), and
BYRMFoss2007_mass_error_ms2.txt (fragment ion mass errors).
- With your version of PVIEW you
should find an R Programming Language script called
reports.R. Copy this into the directory containing all of
the CSV files and run R in that directory. Run the following
commands in R: source("reports.R") to load the script and
internal.align.report("BYRMFoss2007.txt"). Run q() to
quit R.
- Running these R commands will create subdirectory called
BYRMFoss2007 that will contain several useful
plots. mass_error.pdf and mass_error2.pdf contain the precursor
mass error and product ion mass error distributions
respectively. interal_BY_RM.pdf computes ratios for each tryptic fragment
between two conditions (here strains of yeast). If a protein
has two or more tryptic fragments, it groups the fragment ratios into
two groups and then correlates the two groups.
- Any of the tab-delimited CSV files can be loaded into a spreadsheet program like
Microsoft Excel. They can also be easily read into the R for statistical analysis
by using the following command data <- read("BYRMFoss2007.txt", stringsAsFactors=F).
You can run names("data") to get the column names in each
CSV files.
XIC-based Quantification
For XIC-based quantification, XICs are "cross-referenced" based on
their protein and sequence information across experimental
conditions. These cross referenced XICs are used to fill a table
with quantification values. The analysis of this data proceeds
exactly the same way as alignment-based quantification, except you
need to make sure that both "Use Isotope Mode" and Use Align
Mode are not checked. You can save the output using Label Free >
Save CSV... and use the same scripts to analyze the output. This
mode is particularly useful for cases where you have many gel
fractions per experimental condition and the alignment is not
consistent across these gel fractions.
License
BSD License
Copyright (c) 2014, Princeton University, University of Maryland - College Park
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
- Neither the name of Princeton University or University of Maryland - College Park nor the
names of its contributors may be used to endorse or promote products
derived from this software without specific prior written permission.