Loading ...
SIMPLE MODE
INSTRUCTIONS
Hum2Song! is an AI-powered web application that is able to compose the musical accompaniment of a melody produced by a human voice. Once the site has loaded, you only need to click on the "Record Audio" button, start humming/singing (from 2 to 8 seconds) and click on the "Stop" button to start the conversion process. Google Chrome in a desktop browser is recommended.
This is a client-side only application, this means that all the files are stored locally and the processing happens in your browser. The first time you load this website, it downloads ~100Mb in models and sounds, that takes in average ~1 minute depending on your internet connection. Please be patient.
This is a client-side only application, this means that all the files are stored locally and the processing happens in your browser. The first time you load this website, it downloads ~100Mb in models and sounds, that takes in average ~1 minute depending on your internet connection. Please be patient.
INPUT
This work was based and inspired on piano-scribe
Made with Tensorflow.js and Magenta.js . See the code on GitHub. Contact us.
Made with Tensorflow.js and Magenta.js . See the code on GitHub. Contact us.
ADVANCED MODE
INSTRUCTIONS
Hum2Song! is an AI-powered web application that is able to compose the musical accompaniment of a melody produced by a human voice. Once the site has loaded, you only need to click on the "Record Audio" button, start humming/singing (from 2 to 8 seconds) and click on the "Stop" button to start the conversion process. Google Chrome in a desktop browser is recommended.
This is a client-side only application, this means that all the files are stored locally and the processing happens in your browser. The first time you load this website, it downloads ~100Mb in models and sounds, that takes in average ~1 minute depending on your internet connection. Please be patient.
This is a client-side only application, this means that all the files are stored locally and the processing happens in your browser. The first time you load this website, it downloads ~100Mb in models and sounds, that takes in average ~1 minute depending on your internet connection. Please be patient.
INPUT
OUTPUT
STEP BY STEP
Step 0.- We store locally the recorded sound.
Step 1.- The audio is transcribed to notes by using a RNN model. You can find more information about this model here.
Step 2.- The notes are normalized, cleaned and adjusted to 4/4
Step 3.- Now we use a DNN model to predict the most likely genre from the melody. You can find more information about this model here.
The predicted genre is:
GENRE
The scores are:ROCK: 0.0
DANCE: 0.0
JAZZ: 0.0
Step 4.- The melody is adapted to an instrument that is typically used in the predicted genre.
Step 5.- A temporal drum is generated.
Step 6.- A temporal bass is generated by expanding and joining the transcribed melody.
Step 7.- We need to form a trio that is the combinaton of MELODY + BASS + DRUMS. This is needed to predict a sequence. This is the current trio.
Step 8.- We use a RNN model that generates a trio that is the progression of the current trio. You can find more information about this model here.
Step 9.- We use the original melody, the generated bass and the random drum to generate a base trio.
Step 10.- Now we define the harmony, the first step is to calculate the musical scale from the melody.
The tonal scale that fits better is:
A
Step 11.- From that scale we choose a chord progression that fits better to the melody.
The chord progression that fits better is:
A, A, A, A
Step 12.- Now we use a RNN model that is able to generate an accompaniment for our main trio, adapted to the chord progression. You can find more information about this model here.
Step 13.- We also generate random accompaniment that fits to the chosen chord progression.
Step 14.- Finally, we create an interpolation of 6 steps between the chords adapted trio and random sequence. We use a RNN model that can be found here.
We appreciate your feedback, you can find the contact information here.
This work was based and inspired on piano-scribe
Made with Tensorflow.js and Magenta.js . See the code on GitHub. Contact us.
Made with Tensorflow.js and Magenta.js . See the code on GitHub. Contact us.


Atopic eczema causes areas of skin to become itchy, dry, cracked, sore and red.
There are usually periods where the symptoms improve, followed by periods where they get worse (flare-ups). Flare-ups may occur as often as two or three times a month.
Atopic eczema can occur all over the body, but is most common on the hands (especially fingers), the insides of the elbows or backs of the knees, and the face and scalp in children.
The severity of atopic eczema can vary a lot from person to person. People with mild eczema may only have small areas of dry skin that are occasionally itchy. In more severe cases, atopic eczema can cause widespread red, inflamed skin all over the body and constant itching.
Scratching can disrupt your sleep, make your skin bleed, and cause secondary infections. It can also make itching worse, and a cycle of itching and regular scratching may develop. This can lead to sleepless nights and difficulty concentrating at school or work.
Areas of skin affected by eczema may also turn temporarily darker or lighter after the condition has improved. This is more noticeable in people with darker skin. It's not a result of scarring or a side effect of steroid creams, but more of a "footprint" of old inflammation and eventually returns to its normal colour.
Signs of an infection
Occasionally, areas of skin affected by atopic eczema can become infected. Signs of an infection can include:
- your eczema getting a lot worse
- fluid oozing from the skin
- a yellow crust on the skin surface or small yellowish-white spots appearing in the eczema
- the skin becoming swollen and sore
- a high temperature (fever) and generally feeling unwell
See your doctor as soon as possible if you think your or your child's skin may have become infected.
Read more about infections and other complications of atopic eczema
Page last reviewed: 2 December 2016
Next review due: 2 December 2019


Module Injection
By default, the core iVXjs library has everything a developer needs to run an interactive experience. However, a developer might want to expand the functionality like using an external UI library, a data module that sends user inputs to a backend service or more robust validation. To do this, a developer can include various module functions in iVXjs’s init function. These functions will take an object of settings and then update the experience to use these changes.
Overview
This tutorial will show how to update the experience to use Bootstap 3 UI components to illustrate how module injection works. This module replaces some UI components to use the Bootstrap UI library style and feel.
Injecting a module
Here is how an iVXjs Video State looks like by default using the iVXjs Core CSS:
Now, let’s try to replace the core css with Bootstrap’s CSS and JS. Here is how it looks:
The look has some Bootstrap style, but it isn’t quite right. This is where the iVXjs Bootstrap UI Module comes in. The iVXjs Bootstrap UI Module, like all modules, allows the user to inject additional functionality into iVXjs without having to change the JSON. To inject this iVXjs Bootstrap UI Module, follow the following steps:
- Put the iVXjs.ui.bootstrap.js file into your project. (tools > modules > ui > bootstrap).
- Make a reference to it in your HTML after the angular.ivx.js reference:
...
<!-- Angular iVXjs Library -->
<script src="js/lib/angular.ivx.js"></script>
<!-- iVXjs Bootstrap UI Module -->
<script src="js/lib/iVXjs.ui.bootstrap.js"></script>
...
- Go to the config function of the angular application and put in the init function with the config data path:
angular
.module('app', ['ivx-js'])
.config(['iVXjs', function (iVXjs) {
iVXjs.init({
config: "data/module-injection.json"
});
}]);
- Inject the iVXjs Bootstrap Module function:
angular
.module('app', ['ivx-js'])
.config(['iVXjs', 'iVXjs.ui.bootstrap', function (iVXjs, iVXjsUIBootstrap) {
iVXjs.init({
config: "data/module-injection.json"
});
}]);
- Call the iVXjsUIBootstrap function in the init object with the key “ui”:
angular
.module('app', ['ivx-js'])
.config(['iVXjs', 'iVXjs.ui.bootstrap', function (iVXjs, iVXjsUIBootstrap) {
iVXjs.init({
config: "data/module-injection.json",
ui : iVXjsUIBootstrap()
});
}]);
Once those steps are followed, the video state should look something like this:


{% set active_page = "Schedule" %} {% set page_title = "Schedule" %} {% extends "base.html" %} {% block head %} {{ super() }} {% include 'cal_head.html' %} {% endblock %} {% block content %}
It may be necessary to scroll inside the calendar frame to see each day's full 24 hour schedule.
The first session is Thursday 2:30 PM Paris time. Opening Remarks are given Thursday 5 PM Paris time, prior to the first keynote.
Click on a session to open a page showing the constituent papers.
Confused about GMT+XX timezones?


We present to you.. the notorious... the fearless.. the chad of all Shibas: 😎 Don Shiba 😎
Don Shiba is a ERC20 meme token that started with NO Website & Twitter. Just because having a Website 💻 and Twitter 💬 doesn't mean anything. But... here you are.
Don Shiba will spray his virtual Tommy Gun🔫 all over those who drop the 'Marketing Plans?', 'Motivation?', or anything that doesn't make sense in Don Shiba's eyes.
Born in a small village in Sicilie Don Shiba was raised to have no remorse to those who fud about his future intentions. When he says liquidity will be locked for two weeks, he means this. Don't joke around, before you ... ☠
TokenomicsDon Shiba always has a weapon in his back pocket, 'setBots'. This will be used against those who try to cheat, and will get excluded on 500 GWEI. Real buyers will be protected.


Most tools have properties you can change to customize their behavior. You can open the Tool Properties panel by pressing Shift+⌘+T or double-clicking a tool.
Line width, fill style, and tolerance are some examples of tool properties you'll find.
The pencil, line, and eraser tools allow you to draw a custom pattern to place (instead of a single pixel) while drawing. Just click the Set Pattern button in one of those tool's properties panels.
If you make a pattern you like, you can keep it around for later use or share it with others. To export a pattern, just drag it out of the drawer.
Back Next


HTML Template for sk_calendar
Please notice when using markers that there are 3 different kinds
Labelmarkers follow the form ###LABEL_xxxxxx#### where xxxxxx resembles a
Label from pi1/locallang.php. They will be rendered taking account of the choosen language!
Fieldmarkers are regular markers that render fields from the database. They consist of a
letter for the table (e for event, c for category, t for targetgroups and l for location)
followed by a '_' and the fieldname
Example: ###e_title### gives you the eventtitle whereas ###c_color### renders the Color of
the corresponding category.
You can define your own PHP-Functions by extending class.tx_skcalendar_defaultTF.php. Using
###myfunct### will try to call a function templatefunc_myfunct() if it isn't there nothing
happens defining a function templatefunc_e_title() would override the return of just the
eventtitle but output whatever your function returns. See class.tx_skcalendar_defaultTF.php
for examples.
Put your override-class in uploads/sk_calendar or somewhere in fileadmin to not loose your
function after updates.
Have fun and return your comments to<EMAIL_ADDRESS>###WRAPIT###
< ###E_TITLE### >
| ###LABEL_description###: |
|
###E_description### |
| ###LABEL_targetgroup###: |
|
###T_title### |
| ###LABEL_date###: |
|
###E_date### |
| ###LABEL_time###: |
|
###E_start_time### ###E_end_time### |
| ###LABEL_location###: |
|
###L_street###, ###L_zip### ###L_city### |
| ###LABEL_organizer###: |
|
###O_name### |
###DETAILLINK###
| |
###ACTDATE### ###WRAPIT### |
|
| ###LABEL_no_entries### |
| |
| ###BACKLINK### |
###NEXTLINK### |
|
| ###E_date### |
|
###DETAILLINK### |
|
###O_name### |
|
###L_title### |
|
###C_name### |
| |
| ###BACKLINK### |
###NEXTLINK### |
|
| |
| |
| ###LABEL_no_entries### |
###DETAILLINK###
###E_date###
###LABEL_archive_make_selection###
###DETAILLINK###
###E_description###
| |
###ACTDATE### ###WRAPIT### |
|
| ###BACKLINK### |
###NEXTLINK### |
|
|
| ###LABEL_week_view### (für die ###WEEKNUMBER###. Woche) |
|
###WRAPIT###
###DETAILLINK###


The Spry Collapsible Panel is a disclosure widget that consists of a panel, with a clickable tab and a content panel. Clicking on a tab will reveal the contents of that panel.
The widget structure is as follows:
<widget container> <tab container>
<content container>
</widget container>
The Collapsible Panel has one panel only.
The markup used in this structure can be most any HTML, as long as it follows the rules for nesting.
Using the provided files, the default mark up is:

Panel 1

Content for Panel 1 goes here.

Widget Constructors are small pieces of javascript that activate the markup into the working widget. These scripts must come AFTER the markup on the page, since the markup needs to exist before the constructor fires.

A basic constructor specifies the name of the widget and identifies the ID of the main markup container. The name of the widget is used to identify the widget for functions and methods.

Constructor options allow users to specify certain attributes of the widget.
Constructor options follow the ID parameter, wrapped in curly braces {}. Options are name:value pairs, separated by a colon (:).

| Option | Values | Default | Description |
|---|---|---|---|
| closedClass | CSS class name | null | This class will be applied to the content panel as it is closing. |
| contentIsOpen | true or false | true | Determines whether the panel is open or closed when the page loads. Default is open. |
| duration | number of milliseconds | 500 milliseconds | Defines how long it will take to open or close the panel. |
| enableAnimation | true or false | true | By default, the panel smoothly opens and closes. Setting enableAnimation:false will cause the panel to open and close instantly, with no animation. |
| focusedClass | CSS class name | null | This class will be applied to the accordion when it had focus in the browser. This will trump the .CollapsiblePanelFocused defined in 'SpryCollapsiblePanel.css'. The .CollapsiblePanelFocused class can also be edited directly if that is easier. |
| hoverClass | CSS class name | null | This class will be applied when hovering over the accordion tab. This will trump the .CollapsiblePanelTabHover defined in 'SpryCollapsiblePanel.css'. The .CollapsiblePanelTabHover class can also be edited directly if that is easier. |
| openClass | CSS class name | null | This class we will applied to the content panel when it is open. This will trump the .CollapsiblePanelOpen defined in 'SpryCollapsiblePanel.css'. The .CollapsiblePanelOpen class can also be edited directly if that is easier. |
| enableKeyboardNavigation | true or false | true | By default, the Open and Close arrow keys will show/hide the panel. Setting this option to false will disable that ability. |
| openPanelKeyCode | This option allows the user to assign a specific key to close the collapsible panel having focus. Keyboard code numbers are described here. The value of the option is the keyboard code number. | number | 40 (Down Arrow key code) |
| closePanelKeyCode | This option allows the user to assign a specific key to open the collapsible panel having focus. Keyboard code numbers are described here. The value of the option is the keyboard code number. | number | 38 (Up Arrow key code) |

Recall that javascript is case sensitive.
Opens the panel.
Collapsible PanelName.open();
Open
Closes the open panel.
Collapsible PanelName.close();
Close
Copyright © 2007. Adobe Systems Incorporated.
All rights reserved.


Payment Conditions
Home
Payment Conditions
Create
Create
Payment condition name:
Payment condition template:
Payment condition period:


ALPHA
This is a new service – your feedback will help us to improve it.
Back
Claim details
Tell us about your claim. It's important that the person you're claiming against understands what you're
claiming and why.
A judge will consider the information you give here if your claim needs to go to a hearing.
Continue
{% endblock %}


Wireless Networks Add Wireless Network No Wireless Networks {{ item.ssid }} {{ item.authType }} Action Actions Edit Change Password Delete


Michael duPont
Turing Home
Networking Projects
Custom Projects
Other Files
Other Files
Simple Text
A demo with just a text field, echoed to the user
A template for a cgi script
.
It is a .txt file. Save it as a .py and you can use it for a template
cgi.Test() with GET
cgi.Test() with POST


Sat,October 1st 2029
Form Form Element
Hi there.?
that mongodb thing looks good, huh? tiny master db, and huge document store
Coding!!
Playing The Games
Meeting with Clients
Breakdown the Personal PC
Checking Server!
Hacking The public wifi
Sleep!


scrime: Analysis of High-Dimensional Categorical Data Such as SNP Data
Tools for the analysis of high-dimensional data developed/implemented
at the group "Statistical Complexity Reduction In Molecular Epidemiology" (SCRIME).
Main focus is on SNP data. But most of the functions can also be applied to other
types of categorical data.
| Version: |
1.3.5 |
| Imports: |
methods, stats, utils |
| Suggests: |
MASS, RSQLite (≥ 0.4-15), oligoClasses (≥ 1.1.9), DBI |
| Published: |
2018-12-01 |
| Author: |
Holger Schwender, with a contribution of Arno Fritsch |
| Maintainer: |
Holger Schwender <holger.schw at gmx.de> |
| License: |
GPL-2 |
| NeedsCompilation: |
no |
| CRAN checks: |
scrime results |
Downloads:
Reverse dependencies:
Linking:
Please use the canonical form
https://CRAN.R-project.org/package=scrime
to link to this page.


Proposal format is preferred by Spring Singapore Click Here to download a copy
If you wish to get an accurate valuation, Contact us to get a valuation. Click Here


Annotate 3 Leader with Arrowhead
Move cursor to start of leader and press 3 .
Rubber banding is enabled
Move the cursor to the end of the leader and press 3 .
The leader is displayed between the two points 2 and 3 can be mixed to produce plain or arrow terminations on either end:
[2] -------> [3]
[3] <------- [2]
[3] <-----> [3]
Enter breaks the input.
Size and shape of the arrow are set using Annotate 0.


AOL
myAOL
Make AOL My Home Page
Hi<EMAIL_ADDRESS>Sign Out
Search The Web
Whole Web
enhanced
by
Settings
Help
Search Mail
Mail All
Mail Subject
Mail Sender
Contacts
List of Folders
Today on AIM
Inbox
Drafts
Sent
IMs
Spam
Trash
Contacts
My Folders
Manage Folders
Today on AIM
You're using AIM Mail Basic which is optimized for your computer and browser.
Need mail tips? Read our blog.


Portfolio of Ethan Wilson
Profile
Resume
Skills
Education
Accomplishments
Work Examples
Cover Letter
Contact
Profile
Skills
Education
Accomplishments
Resume
Letter of Introduction
Contact Me


The last time I wrote a blog post was too long ago. I was using this service called Qzone.
I was a kid, mumbling about nothing, in Chinese.
To give you a glimpse Qzone:
I never went back and read what I wrote - afraid I would be overwhelmed by the level stupidity. But to be fair, I think I wrote well, at least in Chinese.
Why this?
So why do I come back to blogging? Have I got too much time to kill?
NOOOOO! On the contrary, my time is VERY valuable. I look to accomplish a lot in this year and time is not on my side.
I came back because I believe I have something valuable to say. Firstly, I would like to share my experience as a Chemistry undergrad, and my perspectives of scientific research. I also would like to keep track of this wonderful placement year I am having at UCB Celltech, keeping notes about the drug-discovery pipeline I have been exposed to. Of course, UCB, nothing confidential will be published, I promise. I would like to especially write about cheminformatics, which sadly isn’t at all emphasised in my undergraduate studies.
I aim to explain what were once esoteric concepts to me or present interesting literatures I have encountered at the level of a science undergrad. Also I would like to point to some resources I found to be useful.
So what’s in this for me? Well, manifold really. For one, I think writing blogs can definitely improve my writing skill and speed. Those papers ain’t gonna write themselves.
Anything else?
YES!!!!!! As you can see this blog is hosted on GitHub, using Jekyll, which is a new tool I am learning to use, along with other funky stuffs I am or planning to work on, (text scrappers, plugins, open sourced projects, etc).
I have taken far far far too many online courses. It is time to put those knowledge to test. I enjoy science, I enjoy technology. Atoms + Bits = The Way Forward.
So
So, I hope I will keep up, well, who knows…
I would like to leave you with this, which I signatured at the end of every blog post I had on Qzone, when I was that little kid:


Overview
This page provides an overview of the models and methods implemented in regenie. A full description is given in our paper.
regenie carries out genome-wide association tests for both quantitative and binary (case-control) phenotypes. It is designed to handle
- A large number of samples. For example, it is ideally suited to the UK Biobank dataset with 500,000 samples.
- A combination of genetic data from a micro-array, imputation and exome sequencing.
- A large number of either quantitative traits (QTs) or binary (case-control) traits (BTs)
- Accounting for a set of covariates
An overview of the regenie method is provided in the figure below. Essentially, regenie is run in 2 steps:
- In the first step a subset of genetic markers are used to fit a whole genome regression model that captures a good fraction of the phenotype variance attributable to genetic effects.
- In the second step, a larger set of genetic markers (e.g. imputed markers) are tested for association with the phenotype conditional upon the prediction from the regression model in Step 1, using a leave one chromosome out (LOCO) scheme, that avoids proximal contamination.
Step 1 : Whole genome model
In Step 1 a whole genome regression model is fit at a subset of the total set of available genetic markers. These are typically a set of several hundred thousand () common markers from a micro-array.
Ridge regression (level 0)
regenie reads in the markers in blocks of consecutive markers (--bsize
option).
In each block, a set of ridge regression
predictors are calculated for a small range of shrinkage
parameters (using --l0
option [default is 5]) .
For a block of SNPs in a matrix and phenotype vector we calculate predictors
where
The idea behind using a range of shrinkage values is to capture the unknown number and size of truly associated genetic markers within each window. The ridge regression takes account of Linkage disequilibrium (LD) within each block.
These predictors are stored in place of the genetic markers in matrix , providing a large reduction in data size. For example, if and and shrinkage parameters are used, then the reduced dataset will have predictors.
Ridge regression is used in this step for both quantitative and binary traits.
Cross-validation (level 1)
The predictors generated by the ridge regression step will all be positively correlated with the phenotype. Thus, it is important to account for that correlation when building a whole genome wide regression model.
When analyzing a quantitative trait we use a second level of ridge regression on the full set of predictors in . This approach is inspired by the method of stacked regressions1.
We fit the ridge regression for a range of shrinkage parameters (--l1
option) and choose a single
best value using K-fold cross validation scheme. This assesses the
predictive performance of the model using held out sets of data, and aims to control
any over-fitting induced by using the first level of ridge regression
to derive the predictors.
In other words, we fit the model
where is estimated as and the parameter is chosen via K-fold cross-validation.
For binary traits, we use a logistic ridge regression model to combine the predictors in
where is the probability of being a case and captures the effects of non-genetic covariates.
Genetic predictors and LOCO
Once has been estimated we can construct the genetic prediction
Also, since each column of the matrix will be associated with a chromosome we can can also construct a genetic prediction ignoring any one chromosome, by simply ignoring those columns when calculating the prediction. This is known as the Leave One Chromosome Out (LOCO) approach. These LOCO predictions are valuable at Step 2 of regenie when each marker is tested for associated (see below).
For binary traits, it is the linear predictor in a logistic regression model using LOCO that is saved, and used as an offset when fitting logistic regression models to test for association.
Multiple phenotypes
The dimension reduction step using ridge regression can be used very efficiently to model multiple phenotypes at once. The ridge regression equations for a block of SNPs in a matrix and a single phenotype in a matrix take the form
where does not depend on
If instead phenotypes are stored in columns of a matrix , then the matrix can be applied jointly to calculate the matrix of estimates , and this can take advantage of parallel linear algebra implementations in the Eigen matrix library.
Covariates
Covariates, such as age and sex and batch effect variables can be included in the regenie model.
For quantitative traits, any covariates are regressed out of phenotypes and genotypes before fitting the model.
For binary traits, we fit a null model with only covariates, and use predictions from that model as an offset when fitting the logistic regression model.
Step 2 : Single-variant association testing
In Step 2, a larger set of markers are tested for association with the trait (or traits). As with Step 1, these markers are also read in blocks of markers, and tested for association. This avoids having to have all markers stored in memory at once.
Quantitative traits
For quantitative traits, we use a linear regression model for association testing.
- Covariates are regressed out of the phenotypes and genetic markers.
- The LOCO predictions from Step 1 are removed from the phenotypes.
- Linear regression is then used to test association of the residualized phenotype and the genetic marker.
- Parallel linear algebra operations in the Eigen library are used where possible.
Binary traits
For binary traits, logistic regression score test is used to test association of the phenotype and the genetic marker.
The logistic regression model includes the LOCO predictions from Step 1 as an offset. Covariates are included in the linear predictor in the usual way.
When the case-control ratio is imbalanced, standard association tests don't control Type I error well at rare genetic markers. regenie has two options to handle this
Firth logistic regression
Standard maximum likelihood estimates are generally biased. The Firth correction2 removes much of the bias, and results in better calibrated test statistics. The correction involves adding a penalty term to the log-likelihood,
where the penalty term corresponds to the use of Jeffrey's Prior. This prior has the effect of shrinking the effect size towards zero.
regenie uses a Firth correction when the p-value from the standard
logistic regression test is below a threshold (default 0.05).
It also includes a novel, accurate and fast approximate Firth correction which
is ~60x faster than the exact Firth correction
(see the option --firth
).
The p-value reported in regenie is based on a likelihood ratio test (LRT), and we use the Hessian of the log-likelihood without the penalty term to estimate the standard error (SE).
This may cause an issue in meta-analyses with rare variants, as the effect size estimate and SE may not match with the LRT p-value.
Hence, we added an option --firth-se
to report a SE computed instead from the effect size estimate and the LRT p-value.
Saddle point approxiation (SPA) test
The SPA test approximates the null distribution of the test statistic by approximating the cumulant generating function of the test statistic, which involves all of the higher order moments3$^,$4. This provides a better estimation of the tail probabilities compared to using standard asymptotic theory which relies on the normal approximation and uses only the first two moments of the dsitribution. A tail probability is obtained as
and is the cumulant generating function of the test statistic and
is obtained by using a root-finding algorithm for . As this approximation
has been found not to work very well for ultra-rare variants, a minimum minor
allele count (MAC) is used to filter out these variants before testing (option --minMAC
).
Step 2 : Gene-based testing
Instead of performing single-variant association tests, multiple variants can be aggregated in a given region, such as a gene, using the following model
where 's represent the single variants included in the test, 's and 's are weights and effect sizes, respectively, for each variant, and is a link function for the phenotypic mean . We also denote by the score statistics obtained from the single-variant tests. This can be especially helpful when testing rare variants as single-variant tests usually have lower power performance.
To avoid inflation in the gene-based tests due to rare variants as well as reduce computation time, we have implemented the collapsing approach
proposed in SAIGE-GENE+5, where ultra-rare variants are aggregated into a mask.
For highly imbalanced binary traits, SPA/Firth correction can be used to calibrate the test statistics in the
gene-based tests as proposed in Zhao et al. (2020)6 using --firth/--spa
.
Burden tests
Burden tests, as defined in Lee et al. (2014)7, assume , where is a fixed coefficient, which then leads to the test statistic These tests collapse variants into a single variable which is then tested for association with the phenotype. Hence, they are more powerful when variants have effects in the same direction and of similar magnitude. In regenie, multiple options are available to aggregate variants together into a burden mask beyond the linear combination above (see here). For example, the burden tests that were employed in Backman et al. (2021)8 use the default strategy in regenie of collapsing variants by taking the maximum number of rare alleles across the sites.
Variance component tests
Unlike burden tests, SKAT9 assume the effect sizes $\beta_i$ come from an arbitrary distribution with mean 0 and variance $\tau^2$ which leads to the test statistic Hence, SKAT can remain powerful when variant effects are in opposite directions.
The omnibus test SKATO10 combines the SKAT and burden tests as So setting $\rho=0$ corresponds to SKAT and $\rho=1$ to the burden test. In practice, the parameter $\rho$ is chosen to maximize the power [regenie uses a default grid of 8 values {$0, 0.1^2, 0.2^2, 0.3^2, 0.4^2, 0.5^2, 0.5, 1$} and set the weights $w_i = Beta(MAF_i,1,25)$].
To obtain the p-value from a linear combination of chi-squared variables, regenie uses Davies' exact method11 by default. Following Wu et al (2016)12, regenie uses Kuonen's saddlepoint approximation method13 when the Davies' p-value is below 1e-5 and if that fails, it uses Davies' method with more stringent convergence parameters (lim=1e5,acc=1e-9).
The original SKATO method uses numerical integration when maximizing power across the various SKATO models that use different values for $\rho$. We also implement a modification of SKATO, named SKATO-ACAT, which instead uses the Cauchy combination method14 to combine the p-values from the different SKATO models.
Cauchy combination tests
The ACATV15 test uses the Cauchy combination method to combine single variant p-values $p_i$ as where we set $\widetilde{w}_i = w_i \sqrt{MAF(1-MAF)}$. This test is highly computationally tractable and is robust to correlation between the single variant tests.
The omnibus test ACATO15 combines ACATV with the SKAT and burden tests as
where unlike the original ACATO test, we only use one set of the weights $w_i$. Alternatively, we augment the test to include an extended set of SKATO models beyond SKAT and Burden (which correspond to $\rho$ of 0 and 1 in SKATO respectively) and use the default SKATO grid of 8 values for $\rho$.
Sparse Burden Association Test
regenie can generate burden masks which are obtained by aggregating single variants using various annotation classes as well as allele frequency thresholds. The Sparse Burden Association Test (SBAT)16 combines these burden masks in a joint model imposing constraints of same direction of effects where $M_i$ represent a burden mask and we solve
The SBAT method tests the hypothesis $H_0: \gamma_i=0$ for all $i$ vs. $H_1: \gamma_i > 0$ for some $i$. By using this joint model, the SBAT test accounts for the correlation structure between the burden masks and with the non-negative constraints, it can lead to boost in power performance when multiple burden masks are causal and have concordant effects. This test has the nice property that it combines model selection of the masks (via the sparsity induced by the non-negative assumption) with model inference (it is well calibrated and powerful).
Step 2 : Interaction testing
The GxE tests are of the form where $E$ is an environmental risk factor and $G$ is a marker of interest, and $\odot$ represents the Haddamard (entry-wise) product of the two. The last term in the model allows for the variant to have different effects across values of the risk factor. Note: if $E$ is categorical, we use a dummy variable for each level of $E$ in the model above.
We can look at the following hypotheses:
- $H_0: \beta = 0$ given $\gamma = 0$, which is a marginal test for the SNP
- $H_0: \beta = 0$, which is a test for the main effect of the SNP in the full model
- $H_0: \gamma = 0$, which is a test for interaction
- $H_0: \beta = \gamma = 0$, which tests both main and interaction effects for the SNP
Misspecification of the model above, such as in the presence of heteroskedasticity, or the presence of high case-control imbalance can lead to inflation in the tests. Robust (sandwich) standard error (SE) estimators17 can be used to adress model misspecification however, they can suffer from inflation when testing rare variants or in the presence of high case-control imbalance18$^,$19.
In regenie, we use a hybrid approach which combines:
- Wald test with sandwich estimators
- Wald test with heteroskedastic linear models (for quantitative traits)
- LRT with penalized Firth regression (for binary traits)
For quantitative traits,
we use the sandwich estimators HC3 to perform a Wald test for variants whose minor allele count (MAC) is above 1000 (see --rare-mac
).
For the remaining variants, we fit a heteroskedastic linear model (HLM)20
where we assume $\epsilon \sim N(0, D)$ where $D$ is a diagonal matrix with entries $\sigma^2\exp{(1 + E\theta_1 + E^2\theta_2)}$. This formulation allows for the phenotypic variance to also depend on the risk factor $E$. By incorporating both the linear and quadratic effect of $E$ in the mean and variance of $Y$, this model provides robustness to heteroskedasticity (Note: the $E^2$ terms are only added when $E$ is quantitative). Wald tests are then performed for the null hypotheses listed above.
For binary traits, we consider the following interaction model
where we also include a non-linear effect for $E$ (not if categorical).
The sandwich estimator HC3 is used in a Wald test for variants whose MAC is above 1000 (see --rare-mac
) otherwise the model-based standard errors are used.
When Firth is specified, we only apply the Firth correction using LRT if the p-value for the interaction term $\gamma$ from the Wald test is below a specified threshold (see --pThresh
). So the added $E^2$ term as well as the use of the Firth penalty
help with case-control imbalance and model misspecification for the effect of $E$ on the phenotype.
Missing Phenotype data
With QTs, missing values are mean-imputed in Step 1 and they are
dropped when testing each phenotype in Step 2 (unless using --force-impute
).
With BTs, missing values are mean-imputed in Step 1 when fitting the level 0 linear ridge regression and they are dropped when fitting the level 1 logistic ridge regression for each trait. In Step 2, missing values are dropped when testing each trait.
To remove all samples that have missing values at any of the
phenotypes from the analysis, use option --strict
in step 1 and 2.
This can also be used when analyzing a single trait to only keep individuals with
complete data by setting the phenotype values of individuals to remove to NA.
Note: imputation is only applied to phenotypes; covariates are not allowed to have missing data.
References
-
Breiman, L. Stacked regressions. Machine learning 24, 49–64 (1996). ↩
-
Firth, D. Bias reduction of maximum likelihood estimates. Biometrika 80, 27–38 (1993). ↩
-
Butler, R. W. Saddlepoint approximations with applications. (Cambridge University Press, 2007). ↩
-
Dey, R., Schmidt, E. M., Abecasis, G. R. & Lee, S. A fast and accurate algorithm to test for binary phenotypes and its application to PheWAS. The American Journal of Human Genetics 101, 37–49 (2017). ↩
-
Zhou, W. et al. Set-based rare variant association tests for biobank scale sequencing data sets. medRxiv (2021). ↩
-
Zhao, Z. et al. UK biobank whole-exome sequence binary phenome analysis with robust region-based rare-variant test. Am J Hum Genet 106, 3–12 (2020). ↩
-
Lee, S., Abecasis, G. R., Boehnke, M. & Lin, X. Rare-variant association analysis: Study designs and statistical tests. Am J Hum Genet 95, 5–23 (2014). ↩
-
Backman, J. D. et al. Exome sequencing and analysis of 454,787 UK biobank participants. Nature 599, 628–634 (2021). ↩
-
Wu, M. C. et al. Rare-variant association testing for sequencing data with the sequence kernel association test. Am J Hum Genet 89, 82–93 (2011). ↩
-
Lee, S., Wu, M. C. & Lin, X. Optimal tests for rare variant effects in sequencing association studies. Biostatistics 13, 762–75 (2012). ↩
-
Davies, R. B. Algorithm AS 155: The distribution of a linear combination of χ 2 random variables. Applied Statistics 29, 323–333 (1980). ↩
-
Wu, B., Guan, W. & Pankow, J. S. On efficient and accurate calculation of significance p-values for sequence kernel association testing of variant set. Ann Hum Genet 80, 123–35 (2016). ↩
-
Kuonen, D. Miscellanea. Saddlepoint approximations for distributions of quadratic forms in normal variables. Biometrika 86, 929–935 (1999). ↩
-
Liu, Y. & Xie, J. Cauchy combination test: A powerful test with analytic p-value calculation under arbitrary dependency structures. J Am Stat Assoc 115, 393–402 (2020). ↩
-
Liu, Y. et al. ACAT: A fast and powerful p value combination method for rare-variant analysis in sequencing studies. Am J Hum Genet 104, 410–421 (2019). ↩↩
-
Ziyatdinov, A. et al. Joint testing of rare variant burden scores using non-negative least squares. bioRxiv (2023) doi:10.1101/2<IP_ADDRESS>9560. ↩
-
MacKinnon, J. G. & White, H. Some heteroskedasticity-consistent covariance matrix estimators with improved finite sample properties. Journal of Econometrics 29, 305–325 (1985). ↩
-
Tchetgen Tchetgen, E. J. & Kraft, P. On the robustness of tests of genetic associations incorporating gene-environment interaction when the environmental exposure is misspecified. Epidemiology 22, 257–61 (2011). ↩
-
Voorman, A., Lumley, T., McKnight, B. & Rice, K. Behavior of QQ-plots and genomic control in studies of gene-environment interaction. PLoS One 6, (2011). ↩
-
Young, A. I., Wauthier, F. L. & Donnelly, P. Identifying loci affecting trait variability and detecting interactions in genome-wide association studies. Nat Genet 50, 1608–1614 (2018). ↩


Welcome to Project Section
In this section we have a few mini-projects that you can make using the skills that you just learnt.
Black and White Image converter
In this problem we take a normal image which has colors and turn it into black and White.
Solution
Beginner
Translator
In this problem we take an english word or sentence and translate into some other language.
Solution
Intermediate
Simple Login
In this problem we create a simple login window which takes username and password as an input from the user.
Solution
Beginner
Simple Calculator
In this problem we are trying to create a simple mathematical calculator that helps us perform different types of calculations.
Solution
Intermediate
Music Player
In this problem we will be trying to create a simple music player that works locally using the device folders.
Solution
Advanced
Weather Forecaster
In this problem we will be making a weather forecaster that helps us know the weather of a particular place.
Solution
Advanced


SIX DAYS SEVEN NIGHTS (1998)
Rating: 2.5 stars (out of 4.0) ******************************** Key to rating system: 2.0 stars - Debatable 2.5 stars - Some people may like it 3.0 stars - I liked it 3.5 stars - I am biased in favor of the movie 4.0 stars - I felt the movie's impact personally or it stood out ********************************* A Movie Review by David Sunga
Directed by: Ivan Reitman
Written by: Michael Browning
Starring: Harrison Ford, Harrison Ford, David Schwimmer, Jacqueline Obradors
Ingredients: Boyish old island rascal, young female magazine exec, true love
Synopsis: In this romantic comedy, a spunky, career-oriented gal named Robin (Anne Heche) and her nerdy boyfriend Frank (David Schwimmer), decide to take a vacation to a remote tropical island in French Polynesia. Harrison Ford plays Quinn, a divorced exec who has gotten rid of his business and now lives a simple life as an island bush pilot.
When a business emergency requires that Robin fly off the island, she hires Quinn, but the two get stranded alone on a deserted island when their plane is damaged in flight. To make matters worse, they are attacked by pirates. On the bright side, they are falling in love.
Can a 56-year-old islander and a 28-year-old yuppie get along, much less fall in love?
Opinion: Usually in the summer, we expect to see a Harrison Ford adventure movie. But SIX DAYS, SEVEN NIGHTS is not an adventure movie; it's a fluffy, lighthearted, romantic comedy reminiscent of camping.
Imagine the kind of situations you'd put in a comedy involving two people on a funny camping trip: running around lost with maps in hand; equipment that doesn't work; bad luck weather; a situation involving a snake; grass skirts from GILLIGAN'S ISLAND; falling from great heights and plopping down safely in water. It's all there in SIX DAYS, SEVEN NIGHTS. The movie even throws in a lost World War II plane. While not meant to be realistic or even remotely original, it's all an excuse to show how a man and a woman might quibble and argue their way into falling in love.
So the only important question is, do Harrison Ford and Anne Heche have the chemistry for it? He's country; she's city. He's island; she's mainland.  He's 56; she's 28. Do opposites attract? In the movies they do. Ford and Heche deliver.
Reviewed July 1, 1998
Copyright © 1998 by David Sunga This review and others like it can be found at THE CRITIC ZOO: http://www.criticzoo.com email<EMAIL_ADDRESS>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


O A film review by Steve Rhodes Copyright 2001 Steve Rhodes RATING (0 TO ****): **
Pretty boy Josh Hartnett, last seen unimpressively in PEARL HARBOR, delivers an even more underwhelming performance in Tim Blake Nelson's O. First-time screenwriter Brad Kaaya's script for O is very loosely based on Shakespeare's Othello. Set to a hip-hop beat and cast with a bunch of young actors too old to be in high school, the story takes place on and off the basketball court as a high school team tries to win the state championship.
 As soon as Odin wins the MVP award from Coach Duke Goulding (Martin Sheen), Hugo's dad, Hugo starts plotting to take Odin down. To fill out the teen-friendly cast, Julia Stiles (10 THINGS I HATE ABOUT YOU), who seems to specialize in loose Shakespeare adaptations, plays Odin's girlfriend, Desi Brable.
Nelson has all of his actors speaking in whispers. This risky technique can work, as it did spectacularly in THE DEEP END, but with actors more interested in posing than working, the effect is sleep inducing. Sheen, to his credit, does chew up the scenery in a hopeless attempt to wake up the sleepy production.
The very preppy, southern school -- both sexes are required to wear blazers and ties -- has only one black, Odin, a kid of fairly average height who appears NBA bound.  ("White girls are snakes," Hugo warns Odin about Desi.
Although it contains one of the most unconvincingly staged murders in recent memory, the last act does breathe some needed life into an otherwise s-l-o-w movie.
Shakespeare should sue.
O runs 1:35. It is rated R for violence, a scene of strong sexuality, language and drug use and would be acceptable for most teenagers.
The film opens nationwide in the United States on Friday, August 31, 2001. In the Silicon Valley, it will be playing at the AMC and the Century theaters.
Web: http://www.InternetReviews.com Email<EMAIL_ADDRESS>Want free reviews and weekly movie and video recommendations via Email? Just send me a letter with the word "subscribe" in the subject line.
========== X-RAMR-ID: 29278 X-Language: en X-RT-ReviewID: 244222 X-RT-TitleID: 1108976 X-RT-SourceID: 703 X-RT-AuthorID: 1271 X-RT-RatingText: 2/4
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


TABLE OF CONTENTS
A. GS1 Related B. GS2 Related GOVERNANCE 1. Rs. 330 cr. towards MNREGA wage payment pending JUDICIARY 1. JM courts in all taluks INTERNATIONAL RELATIONS 1. PM lands in Manila to participate in ASEAN, East Asia summits 2. South China Sea, Rohingya on ASEAN map C. GS3 Related SCIENCE AND TECHNOLOGY 1. The AI battlefield ECONOMY 1. More capital will push PSBs to up MSME credit: Arun Jaitley ENVIRONMENT 1. Crisis is in the air D. GS4 Related E. Prelims Fact F. UPSC Prelims Practice Questions G. UPSC Mains Practice Questions
Nothing here for Today!!!
1. Rs. 330 cr. towards MNREGA wage payment pending
- Wage payments of a whopping Rs. 330 crore under the MNREGA have been stuck in Karnataka since September 7 because of non-transfer of funds from the Centre.
- Karnataka is among the 19 States where wage payments have been delayed.
About MGNREGA
- The Mahatma Gandhi National Rural Employment Guarantee Act (MGNREGA), also known as Mahatma Gandhi National Rural Employment Guarantee Scheme (MNREGS) is Indian legislation enacted on August 25, 2005. The MGNREGA provides a legal guarantee for one hundred days of employment in every financial year to adult members of any rural household willing to do public work-related unskilled manual work at the statutory minimum wage. The Ministry of Rural Development (MRD), Govt of India is monitoring the entire implementation of this scheme in association with state governments
- This act was introduced with an aim of improving the purchasing power of the rural people, primarily semi or un-skilled work to people living below poverty line in rural India. It attempts to bridge the gap between the rich and poor in the country. Roughly one-third of the stipulated work force must be women.
- Adult members of rural households submit their name, age and address with photo to the Gram Panchayat. The Gram Panchayat registers households after making enquiry and issues a job card. The job card contains the details of adult member enrolled and his /her photo. Registered person can submit an application for work in writing (for at least fourteen days of continuous work) either to Panchayat or to Programme Officer.
- The Panchayat/Programme officer will accept the valid application and issue dated receipt of application, letter providing work will be sent to the applicant and also displayed at Panchayat office. The employment will be provided within a radius of 5 km: if it is above 5 km extra wage will be paid.
- The government proposes to set up judicial magistrate courts in all the taluk headquarters in the Tamil Nadu State in three years, based on the suggestion of the Madras High Court.
- The Madras High Court has suggested to the government to ensure that all the taluks in the State accounted for judicial magistrate courts.
- State Government has been implementing all the recommendations and suggestions made by the Madras High Court from time to time for the development of infrastructure facilities in the courts, filling up vacancies etc,.
- Another suggestion of the High Court was strengthening security arrangements in the courts.
- The government has issued orders for the installation of metal detectors and closed circuit television cameras in the courts.
Category: INTERNATIONAL RELATIONS
1. PM lands in Manila to participate in ASEAN, East Asia summits
- Beginning a new diplomatic initiative, India participated in the first formal official-level discussions conducted under the recently mooted regional coalition known as the ‘Quad’, the quadrilateral formation that includes Japan, India, the United States and Australia.
- The discussions focused on cooperation based on their converging vision and values for promotion of peace, stability and prosperity in an increasingly inter-connected region that they share with each other and with other partners.
- They agreed that a free, open, prosperous and inclusive Indo-Pacific region serves the long-term interests of all countries in the region and of the world at large.
- The officials also discussed on addressing common challenges of terrorism and proliferation linkages impacting the region as well as on enhancing connectivity.
- Indicating the boiling regional tension with China and Beijing’s assertiveness over the South China Sea issue, a statement from the Australian Foreign Ministry informed that freedom of navigation figured at the ‘Quad.’
- Upholding the rules-based order in the Indo-Pacific and respect for international law, freedom of navigation and over flight; increased connectivity; challenges of countering terrorism and upholding maritime security in the Indo-Pacific were also discussed.
2. South China Sea, Rohingya on ASEAN map
- China’s build-up of ‘air surveillance and domination projects’ in the region also likely to come up for discussion
- The maritime dispute over the South China Sea, mass departure of the Rohingya citizens of Myanmar into Bangladesh and India, North Korean nuclear posturing and Islamic State-linked terrorism are likely to be the key talking points at the 31st ASEAN summit.
- The South China Sea has been at the center of discussions on multilateral problems at the ASEAN-China level, which has been further complicated by China’s land reclamation projects aimed at building air surveillance and domination projects in the region.
- Rohingya crisis
- Dhaka expected ASEAN to raise the issue in a prominent way and convince Myanmar to stop the atrocities against the Rohingya.
- The presence of the pro-Islamic State militants in the Maraqi city in southern Philippines is also expected to receive attention as the fight with the militants has been a major domestic issue of the Philippines.
- The developments in Marawi have also emerged as a reason for it to seek international support. China has in recent months extended support to the Philippines.
- It is expected that the simmering tension between the North Korea and the U.S. and Japan will also feature prominently on the agenda.
Category: SCIENCE AND TECHNOLOGY
- The first formal inter-governmental discussion on what machine autonomy means for the laws of armed conflict was organized by a United Nations group of experts in Geneva.
- The norms around what is considered acceptable in warfare have also evolved in response to new technologies.
- The norms that have been codified in international humanitarian law, is more or less universally accepted as regulating armed conflict among civilized states. But recent advances in artificial intelligence (AI) are throwing up a new challenge to these norms.
Concerns related to the AI
- Reality might not have yet caught up with popular culture depictions of “killer robots” and “conscious synths” demanding their rightful place in society
- Indeed, such depictions can be a distraction from the complex challenges that do exist
- But many technology leaders are worried about autonomous systems taking life-and-death decisions without “meaningful human supervision or control”
- The American tech billionaire Elon Musk and over 100 others recently signed a letter warning that the weaponisation of AI-based technologies risks opening a Pandora’s box
- These are not the only concerns about AI
- Technologists and ethicists are also grappling with other questions
- Such as legal liability when autonomous vehicles share the streets with pedestrians, predictive analytics subverting due process, and the algorithmic entrenchment of human biases
Important question infront of the UN expert group
- How, then, to deliver on the promise of AI while protecting the hard-won tenets of international humanitarian law and respecting the legitimate security and commercial interests of states and industry?
- This is the question we will be grappling with this week in Geneva
Importance of the UN solving such kind of issues
- In an era of diffusion of power and mistrust among the major powers, multilateral inter-governmental forums remain the only way to extend norms across the globe
- For bad or for worse, governments still decide matters of war and peace. And the UN still offers a neutral venue to bring different points of view together
The way forward
- The discussions in Geneva are an opportunity to test a new approach, one we might call ‘distributed technology governance’
- This means the multilateral system’s search for durable international norms needs to integrate national regulatory approaches and industry self-regulation.
- Each level in this chain of subsidiarity — international humanitarian law, national regulations, and industry self-regulation — needs to move in full cognition of the other two
- We need to find ways for them to enjoy their respective sovereignty, while working in unison to deliver what the international community expects
1. More capital will push PSBs to up MSME credit: Arun Jaitley
- While there has been a significant increase in public investment and FDI inflows, but the private investment a key growth engine has continued to lag.
- The finance minister said more capital for public sector banks will prompt them to increase credit flow to MSMEs.
- This will ensure that “third engine” of private investment is fired up to propel growth and create jobs.
- MSMEs the sector creating jobs and giving the boost to the economy has no access to international finance or bond market and the Demonetization decisionhas especially affected the MSMEs thus increased flow of credit plays a significant role.
Solution
- government had unveiled a mega capital infusion worth Rs 2.11-lakh crore two-year roadmap to strengthen PSBs, which includes recapitalization bonds, budgetary support, and equity dilution
- The government also ensured noninterference in commercial transactions
- A robust public sector banking system is desired so that ability to support growth itself increases
Delhi has become world’s air pollution outcaste
- Three years ago, the World Health Organisation (WHO)revealed that Delhi was the most polluted city in the world
- Particulate matter— PM of less than 2.5 microns — was at an annual average of 153 micrograms per cubic meter that year, well above the WHO limit of 35.
- Delhi’s air was declared a “national emergency” thus resulting in
- Visitors will think more before visiting Delhi this winter
- Children can’t attend school or play outside
- There will be financial losses due to days missed at work
Causes of air pollution
- Burning of farm residue
- Pollutants from thermal power stations in and around the capital
- Dust from construction
- Pollutants from vehicles
Preventive measures
- To prevent burning of farm residue, encourage farmers to recycle crop waste rather than burn it
- Stiff penalties can be imposed on thermal power plants and construction sites for not complying with pollution standards
- Pollution caused by private vehicles, whether they are four- or two-wheelers, can be curbed by restricting their numbers
- Odd-and-even number plate scheme, ought to be extended through the winter
- Parking fees ought to be drastically increased, and payable even at night time
Mistakes in administration
- Mumbai is building an Rs 15,000-crore coast road only for cars
- Mumbai has been spared the ignominy of Delhi when it comes to air pollution, one reason being that the sea breezes waft pollutants away
- Once this road is built, all that will change since the prevailing winds are in a south-west direction
- All cities are making the mistake of prescribing metros as the solution for local transport
- In Delhi, the 200-km-plus Metro network doesn’t seem to have reduced the number of cars appreciably, only two-wheelers
Alternative
- Buses, which can run both long distances in cities, as well as provide last-mile connectivity to and from metros and local railway stations
- Reserved bus lanes are the most cost-efficient and egalitarian means of city transport
- These penalize the polluters — cars and two-wheelers — and carry commuters comfortably and cleanly
Nothing here for Today!!!
|
Nothing here for Today!!! |
F. Practice Questions for UPSC Prelims Exam
Question 1. Mahamastakabhisheka, a great religious event, is associated with
and done for who of the following?
- Bahubali
- Buddha
- Nataraja
- Mahavir
See
Question 2. Consider the following statements about Quasi-Zenith Satellite
System (QZSS)
- QZSS constellation of 18 satellites.
- QZSS is Japanese version of GPS and is dubbed as Michibiki system.
Which of the following option/s is/are INCORRECT?
- 1 only
- 2 only
- Both 1 and 2
- None of the above
See
Question 3. Consider the following with respect to India’s first Hyperloop project.
- India’s first Hyperloop project will come up in the Mumbai-Ahmedabad high speed corridor.
- Will use a Public Private Partnership (PPP) model with funding primarily from private investors.
- Hyperloop Technology is brainchild idea of technology entrepreneur Elon Musk who dubs it as fifth mode of transportation.
Select the INCORRECT statement/s:
- 1 only
- 1 and 2 only
- 1, 2 and 3
- All are correct
See
Question 4. Which of the following is/are the factors influencing the World Climatic regions?
- Latitude and its influence on solar radiation received.
- Air mass influences.
- Location of global high and low pressure zones.
- Heat exchange from ocean currents.
- Distribution of mountain barriers.
- Altitude.
- 1, 2, 3 only
- 3, 4, 5, 6 only
- 1, 2, 4, 5 and 6 only
- All
See
Question 5. Which of the following is not correctly matched?
- Mudrarakshasa – Vishakhadatta
- Ratnavali – Harshavardhan
- Kalidasa – Malavikagnimitra
- None of the above
See
G. UPSC Mains Practice Questions
GS Paper III
- The Bonn Climate conference carries the spirit of Paris agreement. Discuss the challenges faced in the implementation of Paris agreement.
GS Paper II
- Aadhaar based Biometric Authentication is one of the ways to check corruption in the provision of Public services . Comment.
- Multilateral alliance has become an important means for India to counter the threat of Chinese dominance in South Asia. Critically analyse.
Also, check previous Daily News Analysis
“Proper Current Affairs preparation is the key to success in the UPSC- Civil Services Examination. We have now launched a comprehensive ‘Current Affairs Webinar’. Limited seats available. Click here to Know More.”
Enroll for India’s Largest All-India Test Series


Lab
Scenario 1 – Soaps R Us Context
- Mom’n’Pop store “Soaps R Us” wants to sell their famous soap online. They need an
attractive website with high SEO
that has a shopping cart and a small blogging area for
their “Hot Soap!” newsletter.
- They’ve heard great things about WordPress but
are concerned
about the new editor as they don’t have time to learn something
new
- What plugins would you recommend to get their
WordPress site off in the right direction? Install them in the site
to test
- Pick out a theme and then
customize it and the menu items appropriately as a mock site to
market their business
Deliverable
- Create a WordPress site on reclaim hosting
- Select plugins to improve SEO, provide a shopping
cart, and simplify content editing beyond
the default editor
- Pick a nice theme and customize it with a few links to make the site look
real (typical small business has Home, News, Hours, Location, Reviews, etc).
- Edit 1 page in Gutenberg and 1
pave with the Classic Editor
- Record a video explaining the difference and
justify why you think they should either use Classic, Gutenberg, or Both
Solving the scenario
- Remember, they are concerned about this “new fancy
editor” because
of learning curve, evaluate, is it that hard for a new person
to
learn? Does the quality of output
outweigh training?
- Your task is
then to frame your response as one of the following:
- Either you are selling them on the new editor by
allaying these concerns and showing high quality
output
OR
- You are agreeing with them and showing them how easy
it is to use Classic Editor and why
you
recommend not using Gutenberg by demonstrating
complexity and learning curve


Open content picker Open content picker (localhost)
Received object (JSON):
n/a
Opens the content picker from http://localhost:4500


You can find me over at github.com/lshort2.
I try to be pretty transparent in what I do outside of work and I make almost all of my repositories publicly viewable.
Don't forget to keep the syntax light and the algorithm tight.
One of my old projects, the Imperial Nav Destroyer...


Poland to deport Swedish neo-Nazi
by TT/The LocalPoland is to deport a Swedish far-right extremist who came to the country for training with weapons similar to those used in the attack on mosques in Christchurch, New Zealand, in March.
Polish officials said he had come to Poland for paramilitary training.
Interior Minister Stanislaw Zaryn said that the country's security agency had found that the man posed a threat to security, reports international news agency AP.
The 22-year-old man, named in Swedish media as Anton Thulin, was sentenced to one year and 10 months in jail in Sweden in connection with a planned bomb attack in Gothenburg almost three years ago. The explosives were found, undetonated, on a camping site near a home for asylum seekers.
The incident was investigated as part of a series of three bomb incidents in Gothenburg in 2016. One of them left an immigration office staff member seriously injured with wounds to his legs.
Two other men were also charged in connection with the incidents, with one jailed over all three and the other jailed in connection with two of them.
Thulin told the court at the time that he was no longer a member of the neo-Nazi Nordic Resistance Movement.
The Swedish security police Säpo, when approached by Swedish news agency TT, declined to say whether or not they had cooperated with their Polish counterparts to seize the man.


{% extends "phenix/header.html" %} {% load static %} {% block content %}
Learn how to adjust a model by morphing it to match a map. Refinement can further improve the model-to-map fit.
First, let's set up the example data (described in more detail here):
Get the files from the Phenix regression directory and change into the new folder:
phenix.setup_tutorial tutorial_name=model-building-scripting
cd model-building-scripting
Type phenix.python
to start up Python with the Phenix environment all set up:
phenix.python
Set up the high level objects, so we can start our task:
from iotbx.data_manager import DataManager # Load in the DataManager
dm = DataManager() # Initialize the DataManager and call it dm
dm.set_overwrite(True) # Overwrite files with the same name
mmm = dm.get_map_model_manager( # getting a map_model_manager
model_file="short_model_box_for_morph.pdb", # model file
map_files="short_model_box.ccp4") # map file
Let’s adjust a model by morphing it to match the density in a map. Morphing basically distorts a model in a smooth way, so that locally the model does not change much, but parts of the model that are far apart along the chain can move relative to each other.
Our starting model has two chains (A and B). The B chain is offset from its correct position by about 1.5 Å.
Let’s select just chain B to work with (in this example, chains A and B overlap and so it is best to work with just one).
chainB = mmm.model().apply_selection_string( # apply a selection
'chain B' ) # chain B
And now we can replace the model in mmm with chainB (adding a model with model_id of 'model' replaces the existing model):
mmm.add_model_by_id(chainB, model_id = 'model') # replace model in mmm
Let’s fill in the resolution and experiment type and get a model_building object:
mmm.set_resolution(3) # resolution is 3 A
mmm.set_experiment_type('cryo_em') # it is a cryo-EM map
build = mmm.model_building() # get a model-building object
We can write out the model and look at it with Coot, comparing it with the map:
dm.write_model_file(build.model(), "short_model_box_for_morph.pdb") # model
dm.write_real_map_file(build.map_manager(), "short_model_box.ccp4") # map
Let’s save the coordinates of the atoms in our model so we can compare them to their positions after morphing:
chainB = build.model().deep_copy() # save chain B
starting_coords_chain_B = chainB.get_sites_cart() # get coordinates chain B
Now let’s morph the model. We’ll use the selection method 'by_segment' to choose how to split up the model when morphing. This choice means split up by chains, and also split any chains that are broken:
build.set_defaults(debug=True) # debugging run
build.morph(default_selection_method='by_segment') # morph model
We can see how much each chain has moved. The model in build has been updated so we get the coordinates of the atoms in this working model:
chainB_morphed = build.model() # chain B
final_coords_chain_B = chainB_morphed.get_sites_cart() # get coordinates chain B
The rmsd between starting and final chains A and B are then:
rms_B = final_coords_chain_B.rms_difference(starting_coords_chain_B) # rms B
You can print this out:
rms_B # print out rms value
Which yields something like:
1.5801081738194553
We can compare the map-model correlations of the original and morphed models:
cc_before = mmm.map_model_cc(model = chainB) # map-model cc for chain B
cc_after = mmm.map_model_cc(model = chainB_morphed) # map-model cc after
cc_before, cc_after # cc before and after morphing
Which yields something like:
(0.25513080677867195, 0.818070481365688)
Indicating that the map-model correlation is much higher after morphing.
Let’s write out the morphed model to 'morphed_model.pdb' and compare it in Coot with the original in "short_model_box_for_morph.pdb":
dm.write_model_file(build.model(), 'morphed_model.pdb') # write out morphed
The morphed model (red) is moved compared to the initial model (transparent blue), and it now fits to the density.
Let’s run a simple version of real-space refinement to improve the morphed model (see section above). This option is just a simplified version of phenix.real_space_refine that is suitable for quick improvement of a model while you are in the middle of model-building. For serious refinement you will want to use the standalone phenix.real_space_refine tool.
Let’s refine our morphed model from the previous section. This is pretty easy. You type:
build.refine() # refine working model against working map
and wait a minute or two and now you can write out the refined model:
dm.write_model_file(build.model(), 'refined_model.pdb') # refined
We can get the map-model correlation now:
cc_refined = mmm.map_model_cc(model = build.model()) # refined cc
And print it out:
cc_refined # print out refined cc
Which gives something like:
0.8237540703832011
Which is just a tiny bit better than the morphed model.
Have a look at morphed_model.pdb and refined_model.pdb along with the map in short_model_box.ccp4 and you will see that the refined model (green) matches the map better than the morphed model without refinement (red).


- FNV - Class in com.freblogg.hashing
-
Implementation of the Fowler-Noll-Vo non-cryptographic fast hashing algorithms originally created by Glenn Fowler,
Landon Curt Noll and Kiem-Phong Vo.
- fnv132(String) - Static method in class com.freblogg.hashing.FNV
-
Calculates FNV132 hash of the input string.
- fnv132(byte[]) - Static method in class com.freblogg.hashing.FNV
-
Calculates FNV132 hash for the input bytes.
- fnv164(String) - Static method in class com.freblogg.hashing.FNV
-
Calculates FNV164 hash for the input string.
- fnv164(byte[]) - Static method in class com.freblogg.hashing.FNV
-
Calculates FNV164 hash for the input bytes.
- fnv1a32(String) - Static method in class com.freblogg.hashing.FNV
-
Calculates FNVa132 hash for the input string.
- fnv1a32(byte[]) - Static method in class com.freblogg.hashing.FNV
-
Calculates FNVa132 hash for the input bytes.
- fnv1a64(String) - Static method in class com.freblogg.hashing.FNV
-
Calculates FNVa164 hash for the input string.
- fnv1a64(byte[]) - Static method in class com.freblogg.hashing.FNV
-
Calculates FNVa164 hash for the input bytes.


We first had a "Visual Studio 15" preview back in March 2016, with a different installer and not much else changed. After several previews, Visual Studio 2017 Release Candidate was released on 16 November 2016. An updated version (not called RC2 or any other sensible version number) was released 12 December 2016.
Installation
We have a nice new menu for installation. With nothing checked, it's a nice 748 Mb. That's deceptive; once you start picking anything, it's always around 5Gb. Click web development, and you suddenly jump to 4.86 Gb. .Net Core and Docker is 4.6 Gb - Core + web development, you're at 5.23 Gb.
There's still no way of skipping VB if you just use C#. In "Individual Components", development tools for 3.5 are unchecked but available.
The installation time wasn't fast- it's hard to say if it was really any faster than previous Visual Studio installations.
In Use
See the release notes
It looks pretty similar. In Solution Explorer, each project has a "Service Capabilities" node at the top. This is apparently the new "Service References" crossed with Azure stuff. If you're not using Azure, there doesn't seem to be a way of hiding it ("Add Service Reference" is still there when you right click "References").
I'm using it without resharper (although RS does support the VS RC). Visual Studio is definitely more usable without RS. Intellisense selects with camel-humps (just type the capital letters), and auto-selects by expected type.
"Find All References" now nearly matches RS's "Find Usages"/Shift-F12. The default "Group by" setting is "Project then Definition", which isn't ideal - in the screen-shot 4 of the references are in one class, but they are mixed up with other classes. "Definition, Project then Path" is closer to RS, but too verbose with full paths. There's no match to RS's default view "Project Structure", which is exactly how I want to drill through big result sets.
Ctrl-T "find all" is just like the same RS shortcut. RS is compact but readable, VS2017 tales a second line for each entry. Useable, but not quite as nice.
There are more refactorings, including some common ones from RS (matching file and type name, object initializer).
The unit-testing side has "live unit testing", a background test-runner, like NCrunch. But it's only in Enterprise and doesn't show up in my lowly Community install. Also CodeLens (from VS2013) is still at Enterprise level only, and I really miss that. The CodeLens references links are great, much better than "Find Usages" in Resharper. I also prefer the CodeLens buttons for running unit tests to Resharper.
Under construction
Be prepared for some bugs, it's only a release candidate. I got it into a persistent freeze whenever it tried to open one project (workaround was deleting the .user files). As normal with Microsoft RCs, your best bet is to skip the first one or two. or better still, wait for the RTM.
A "release candidate" implies feature complete, but the Core side is more immature than the rest. This is the first step of the conversion of project.json to project.csproj. It's really a public alpha, and it feels like it, so prepare for some frustration. They released an "update" on 12 December, which is not called "RC2", has big breaking changes, and no automatic upgrade from the original RC.
Upgrading a simple class library with test project created an unusable solution. I did a command line "dotnet restore" and "build" on the class library, which worked after Visual Studio was unable to cope. The test project failed to convert, but again the command line "dotnet migrate" worked. The tests weren't recognized.
The dotnet Core in VS 2017 seems to be too unstable to play with, let alone try to do real work.
Fin
For general development, Visual Studio is catching up with Resharper, but it'll be a few more years before you can really do without it. Dotnet Core is changing fast, and this aspect of the tooling is too flakey to use for now.


Given a function f(y), where f, y or both can be vectors, calculate the derivative (gradient, Jacobian) df/dy.
More...
Given a function f(y), where f, y or both can be vectors, calculate the derivative (gradient, Jacobian) df/dy.
Calculation is done using numerical differencing, which should be considered a last resort for cases in which the analytic derivative is unavailable. (Note that you can obtain an analytic gradient automatically from the source code for f using automatic differentiation methods like complex step derivatives, ADIFOR, etc.).
- Theory and Implementation
The SimTK::Differentiator class uses methods adapted from the book Practical Optimization by Gill, Murray, and Wright (1981), section 8.6 (339ff) and Numerical Recipies in C++ 2nd ed. (2002) section 5.7 (192ff). Here is a summary:
- We want to differentiate a function f(y) whose estimated relative accuracy eps is known (e.g. eps=1e-6). (We'll treat y as a scalar here but for vector y this is done for one element yi at a time.)
- We need to know what perturbation h to use for calculating an estimate of df/dy that optimally balances roundoff error (h too small) with truncation error (h too big).
- First guess at h depends on the order of the numerical method: either forward difference (1st order) or central difference (2nd order). For 1st order, h0=eps^(1/2); for 2nd order h0=eps^(1/3).
- Now we have to make sure that we can compute y+h reliably. If y is very large, we can not allow h to be too small. We calculate a scaled perturbation h1=h0*max(y, 0.1). The 0.1 allows a small y to pull down the step size a little; but it is dangerous to go much lower because a very small y might just be zero plus noise.
- Finally, the step size should be exactly representable as a power of 2. Conceptually, this is just h=(y+h1)-y although one must be careful to stop the compiler from cleverly "simplifying" this expression. Differentiator uses a C++ volatile variable for that purpose.
Then the derivative, gradient element, or Jacobian column is computed as df/dy=[f(x+h)-f(x)]/h (1st order) or df/dy=[f(x+h)-f(x-h)]/(2h) (2nd order).


Tennis: President Macron hosts Fed Cup winners at Elysee Palace
PARIS: The French women's victorious tennis team was the toast of the presidential palace as Emmanuel Macron hosted the Fed Cup side on their return from Australia on Tuesday (Nov 12).
Caroline Garcia, Kristina Mladenovic and Pauline Parmentier, as well as captain Julien Benneteau, and other members of the team who didn't play, were met by the head of state for a brief celebratory drink.
"You showed great spirit, coming together, forming a team, easing tensions, strengthening ties for a collective victory," Marcron said.
Mladenovic and Garcia led France to its first Fed Cup title since 2003 in Perth on Sunday, winning a deciding doubles rubber to crush Australia's hopes 3-2.


{% extends "bootstrap_layout.html" %} {% set active_page = "home" %} {% block content %}
Helping you embark on your next adventure!
Email Alerts with:


Hey everyone, I thought it would be nice to have proper documentation. I am not the only one able to control this. I will give access to whomever has drive to populate this with awesome content!
Max wrote this: Liebe Leute, hast Du schon mal von diese Presious Plastic Machinen gehört, die man selber bauen kann und dann Plastik selber recyceln? https://preciousplastic.com/ wolltest Du immer das ausprobieren? las uns mal treffen und unsere Ideen und Ressourcen zusammenschmeissen und siehen, was daraus kommt! /// Dear people, did u ever heard of these open source design machines that one can buld yourself to recycle plastic? https://preciousplastic.com/ did u always wanted to try it out yourself? let us meet and figure out, what resources we have, what do we know and see, how far we get! Feel free to add ideas, ignite discussions, suggest meetings, update with Your findings!


Authenticate success.
Download
Extension, Drap and Drop to chrome://extensions/
When first opened extension, you need to input API settings below:


Fecha_Creacion: 2017-11-18T11:30:29.780Z
Dimension: unknown
Id_Locacion: 13
Nombre: Nuptia 4
Residentes: ['https://rickandmortyapi.com/api/character/40', 'https://rickandmortyapi.com/api/character/55', 'https://rickandmortyapi.com/api/character/131', 'https://rickandmortyapi.com/api/character/132', 'https://rickandmortyapi.com/api/character/146', 'https://rickandmortyapi.com/api/character/148', 'https://rickandmortyapi.com/api/character/163', 'https://rickandmortyapi.com/api/character/178', 'https://rickandmortyapi.com/api/character/310', 'https://rickandmortyapi.com/api/character/386', 'https://rickandmortyapi.com/api/character/387']
Tipo: Planet
URL: https://rickandmortyapi.com/api/location/13


-
Slides day 1
Exercise 1 - Parameter estimation
Exercise 2 - Tree topologies
Exercise 3 - Model comparison
Exercise 4 - Branch support
Exercise 5 - Command line
Exercise 6 - Inferring ML phylogenies with codon models
Exercise 7 - Inferring ML phylogenies using real datasets
Exercise 8 - Re-Analyze published datasets
How to use Unix and the CLI
What is computing with Unix?
Unix is a family of operating systems and environments that exploits the power of linguistic abstraction and composition to orchestrate tasks.
Unix users spend a lot of time at the command line.
The command line (often called the console, the shell or the terminal) looks something like this:
$
When you type in a command like ls
, it will
give you feedback:
$ ls
Documents README.txt
$
In this case, the ls
command listed
the files in the current directory.
Getting access to Unix
It was once a daunting task to get access to or install Unix. Fortunately, it's no longer a hassle.
These days, the two most accessible flavors of Unix are Apple's OS X (based on the BSD family of Unix) and Ubuntu Linux.
The easy option: OS X
OS X is a good way for many users to tip-toe into Unix.
What you're buying is a Unix machine that "just works."
To turn it into a complete Unix system, you'll need to install Apple's free Xcode development suite (available from the Mac App Store) and the (free) X11 server.
Xcode includes the compilers and interpreters you'll need to compile and run many open source applications.
You'll need the X11 server to run traditional graphical applications for Unix.
The DIY option: Linux
When I was in high school, before CD burning was widely available and when internet connections were slow, the best way to get Linux was to buy a book with an installation CD.
(Given that there wasn't much in the way of online resources for Linux back then, it was good to have a book that walked through the installation process and explained all the features, too.)
A quick search of amazon shows no shortages of such books today.
These days, there are plenty of free options:
-
If you're a CS major, you should have access to a Unix shell account at your
school that you can acces with
ssh
. (See details on ssh below.) - You can set up your computer to dual boot into either your preferred OS or Linux. Macs come with Boot Camp to make this easy.  There is a chance you'll wipe out your files by accident. I recommend adding a second internal hard drive if you want to set up a dual boot with Linux for the first time.
- You can burn a CD that lets you boot into or install Linux. I recommend Ubuntu Linux for this.
- You can also create a USB thumb drive that boots into Linux. I recommend Ubuntu Linux for this as well.
- You can run Linux inside your existing OS as a virtual machine. VirtualBox is a freely available virtualization tool. (I personally use VMware Fusion to run Windows on my Mac for those rare instances where I need to see what a page looks like in an old version of IE.)
- You can run cygwin on Windows to get a "Unix-like" environment. (This isn't quite the real deal.)
- You can buy a virtualized Linux server with remote access from a service like linode.com. (might.net runs on a linode.)
Getting to the command line
Once you're into Unix, you'll want to get to the command line.
On Linux, you can press CTRL+ALT+F1 to get to a raw terminal, and CTRL+ALT+F7 to get back to the window system. (In fact, CTRL+ALT+F1-F6 will get you different terminal on most systems, and of course, you can configure this.)
In most popular flavors of Linux, there is a way to open a graphical terminal in a window.
On a Mac, it's Applications > Utilities > Terminal.
The filesystem: ls
and cd
If you find yourself at a command prompt, run ls
to list the files in the current directory.
You might see something like this:
$ ls
Documents README.txt
$
With ls /
, you can list the contents of the
root directory.
You'll notice several directories that are common to almost all Unices:
/bin
, standard executables./sbin
, important system executables./etc
, system configuration files./var
, frequently updated files like logs./root
, home directory of the administrator account./home
, a user account home directories. (/Users
on a Mac.)/opt
, package-manager installed files./tmp
, temporary files; usually wiped between boots./usr
, user applications and utilities.
To change to a different directory, use the command cd
.
For example:
cd Documents
to change to theDocuments
sub-folder.cd ..
to change to the parent directory.cd
to change to your home directory.
Paths
To print the path of the current working directory, use pwd
:
$ pwd /home/matt $
On Unix, a path is a description of a file's location.
For example, /home/matt/README
is a path to a file called
README
contained within the home directory for the user
matt
.
Notice that forward slashes (/
) separate components
of a path.
For example:
$ pwd /home/matt $ cd .. $ pwd /home $ cd matt $ pwd /home/matt $
Symbolic links
Unix filesystems make use of aliases for files known as symbolic links (symlinks).
(There are also hard links, in which there are two true, indistingushible references to the same file, but these are less commonly used.)
A symbolic link to a file is ordinarily treated identically to that file.
The command ln -s
creates sym links.
The command ls -l
can reveal where a symlink points.
For example:
$ ls bar foo $ ln -s bar baz $ ls -l total 8 -rw-r--r-- 1 matt staff 0 Jan 8 09:57 bar lrwxr-xr-x 1 matt staff 3 Jan 8 09:58 baz -> bar -rw-r--r-- 1 matt staff 0 Jan 8 09:57 foo $
Working with text: cat
, less
, emacs
and vi
Suppose you want to look at a text file within the current directory.
A common way to take a glance at a text file is with the
cat
command:
$ cat README.txt * A README file for my home directory. Documents contains my files. $
(The command cat
is actually meant to do more
powerful things than just look at files, but that's what
it's most commonly used for.)
If the file is too long to fit on a screen, use less
instead of cat
. (To quit less
,
press q
.)
You're going to spend a lot of time editing text, so you'll want
to learn one (or both) of the powerful Unix text editors:
emacs
and vim
.
Both have a tutorial mode for teaching the essentials.
Help yourself: man
up
If you don't know what a command does,
use the command man command
.
This will bring up the man(ual) page for command, which will document how the command operates; it frequently provides examples of usage.
Press q
to quit the man page viewer.
The apropos
can help you find the command you're looking for
if you don't know it's name.
It will search a database of command descriptions.
Some tools use an alternate documentation
system called info
To look up documentation using info
,
try info topic
.
For more info on info
, run info info
.
Search for it: grep
and find
If you're looking for text within a file or a set of files,
grep
is the right tool.
The command grep pattern file ...
will search the specified files for the pattern.
The pattern language used throughout Unix is called regular expressions, and there are many good introductions to these, including the man page for grep.
To list all files under the working directory (and its subdirectories), try
the command find
.
Pipes and redirection
Nearly every command in Unix makes use of a convention to have a "standard input" (also called stdin or STDIN) and standard output (also called stdout or STDOUT).
There is also a "standard error" (stderr or STDERR) output that is, by convention, reserved for error messages.
Many techniques in Unix rely on redirecting these channels.
If you want to dump the standard output into a file, use
command > file
.
For example:
$ pwd > pwd.txt $ ls pwd.txt $ cat pwd.txt /home/matt $
One of the most useful capabilities of Unix is the ability to redirect the STDOUT of one command into the STDIN of another.
To do this, you'll want to use a "pipe"; for example:
$ find . | grep READ ./Desktop/READINGLIST.txt ./README.txt $
This command found a file named
READINGLIST.txt
in the Desktop
subdirectory, and a file named README
in the current one.
It's customary for Unix programs to read from STDIN when no input
file is specified, which is what grep
is doing here.
It is also possible to send the contents of a file into
the STDIN of a command using command < file
.
Permissions: chmod
, chown
and chgrp
In Unix, every file and directory has an owner and a group.
Every user on a Unix machine can belong to one or more groups.
Every file also has three sets of permissions: what the owner can do, what the group can do and what anyone can do.
To see the owner, group and permissions associated with a file run ls
-l
. You'll see something like:
$ ls -l drwxr-xr-x 4 matt staff 136 Jun 23 2010 Documents drwxr-xr-x 143 matt staff 4862 Dec 30 2009 Desktop -rw-r--r-- 1 matt staff 4 Feb 7 11:16 README.txt $
The first column tells you about the permissions on the file.
The third and fourth tell you the owner and group respectively.
The very first character in the permissions column tells you what kind of file it is.
A -
means it's a regular file. A d
means it's a directory.
The next nine characters come in three classes of three characters each. The three classes are owner permissions, group permissions and world permissions.
Inside a permission class,
r
means that class can read the file;
w
means that class can write the file;
x
means that class can execute the file.
If a file is a directory, x
grants the permission to access
inside the directory, while r
grants permission to list its
contents.
Package managers
Modern Unixes have package managers to that download install (free) software for you.
On a Mac, MacPorts is a popular package-management system, and Homebrew is gaining in popularity.
On Ubuntu, apt
is the standard package manager, with
both a command-line and graphical interface available.
It's a good idea to familiarize yourself with your package manager.
Remote access: ssh
If you have more than one machine, or you need remote access to another
machine, ssh
is a powerful "secure shell" utility.
ssh
can grant you console access on a remote machine, while safely
encrypting the session.
It is worth setting up passwordless key-based authentication
using ssh-keygen
.
Using ~/.ssh/config
, many options, including aliases
and per-host private keys, are available. (Try man ssh_config
).
To ssh into another computer, use ssh user@address
where user is the user name of your account on the other machine,
and address is host name or IP address of the other computer.
Windows users can use PuTTY to connect to another computer over ssh.
--- ### Resources 1. http://matt.might.net/articles/basic-unix/


Falk:
I'm afraid that you don't have enough Darion's Badges. Please obtain some more and come back.
Return.


Across: 1. Afraid of seeing Father Christmas in a small grotto? (14) 9. Greek character in a rush holds back fuel (7) 10. Cry when Rolling Stones go to church (7) 11. Rabid lice carry duck’s bacteria (1 4) 12. Data clone gathered may not be accurate (9) 13. No French-Germans take in mother’s pets? (3-6) 14. Song about lamps (5) 15. Do well, starting canoeing in river and lake (5) 17. One winding trail in America leads somewhere else (9) 20. Missing a bad fault after manufacture may be negligent! (9) 22. Magnate has no altruistic beliefs or behaviours initially (5) 23. Caught a doctor with three-quarters of Mr Astley’s material (7) 24. Understanding part of why patient enters NHS (7) 25. Patients are punished for being badly behaved? (3 11) Down: 1. Nut defaces café building — that’s how things happen! (5 3 6) 2. Ranger gets one artist to leave sailors (7) 3. Divine song’s followed by religious ceremony (9) 4. Sweet bachelor has a dance outside (3 4) 5. Doctor Streep’s nags (7) 6. Adore being spoiled and propelled across the water (5) 7. I retain odd capacity for laziness (7) 8. Money for lunch — or just part of it? (9 5) 14. I am involved in parental worries about childbirth (9) 16. In Redcar, a melting ice-cream contains toffee (7) 17. Influences one very loud unruly sect (7) 18. I am in ropey serial with old musician (7) 19. French negative response about graduate from the country (7) 21. Queen left, having made a mistake! (5)