text:
# Leapp

Leapp is a C++17 wrapper over [LeapC](https://developer.leapmotion.com/documentation/v4/), the Leap Motion SDK.

To build Leapp, you must first [download LeapC](https://developer.leapmotion.com/sdk-leap-motion-controller/).

To get started, [head to the wiki](https://github.com/Razakhel/Leapp/wiki)!

repository: Razakhel/Leapp

repo_name: Razakhel/Leapp


text:
Find limits analytically

![](.LT2.md.upload/paste-0.10169827393052389) ![](.LT2.md.upload/paste-0.6904832072404445)

## Ideas
- one plug and chug
- one factor/reduce
- choose one from rationalize or common denominator

## Progress

- [x] Indeterminate (factor and cancel version)
- [x] Plug and chug limit
- [x] Rationalize
- [x] Common denominator
- [x] List of problems/answers to loop through

## Not Done
- Trig limits: sinx/x type problems
- Plug and chug trig limits
- any transcendentals

license: MIT

branch_name: refs/heads/main

extension: md

license_type: permissive


text:
# Text Index
### Create a custom index for collection content
This example demonstrates how to use a text element, instead of a table or gallery, to create a customized index.

The List Index page shows a list of recipes that is read from the recipes collection using the
[Dataset API](https://www.wix.com/code/reference/wix-dataset.html)
. We use the dataset onReady function to register an event handler that retrieves the first 50 items, formats them for display, links to their corresponding dynamic item pages and places them in a single text element.

A [text element](https://www.wix.com/code/reference/$w.Text.html) can accept formatted text using its html property. We use standard HTML formatting on the text, parsed from the dataset, to format the text and give each item the appearance of being in a separate section. For example, the lines between sections are created using a carefully sized string of x’s contained within HTML span tags where the background and foreground colors are set to match the background color of the page.

Using a similar approach, you can use a text element to create your own customized index.

The Recipes (Title) dynamic page shows a single recipe based on the published URL of the page. The dynamic page URL is set to select the recipe to display based on its title. The URL has the following pattern:

``http://www.../  recipes/{ title }``

The  ``{ title }``  is a value from the Title field in the recipes collection.

Page elements are connected to the Recipes Item dataset to show the recipe information from the recipes collection. You can open this collection from the Database section of the Site Structure sidebar. The Foodista.com link is created using the html property of a text element. We get the link to the recipe shown on the page from the dynamic page’s dataset in the dataset’s onReady event handler.

The recipes in this example are from [Foodista.com](https://foodista.com/) - The Cooking Encyclopedia Everyone Can Edit.

### Learn More:
https://www.wix.com/code/home/example/Text-Index

repository: talyaro/corvid-examples

branch_name: refs/heads/master

repo_name: talyaro/corvid-examples


text:
PortableDevices
===============

Python code to access devices using the Windows Portable Devices API  (e.g. Media Transfer Protocol - MTP - devices)

For now, only directory listing and transfer to the device is implemented.

Installation and Usage
----------------------

- Get [comtypes](https://pypi.python.org/pypi/comtypes).
- Next you need let comtypes build the interfaces. I needed to fiddle around the generated code, to get it working:
  - comment-in the `comtypes.client.GetModule(...)` lines (or call both from Python console)
  - Then I had to define some parameters as in-out that were just out parameters. In `_1F001332_1A57_4934_BE31_AFFC99F4EE0A_0_1_0.py` (found it in `C:\Python27\Lib\site-packages\comtypes\gen`):
    - In `IEnumPortableDeviceObjectIDs`, in function `Next` change the parameter `pObjIDs` to `['in', 'out']`
    - In `IPortableDeviceContent`, in function `CreateObjectWithPropertiesAndData` change the parameter `ppData` to `['in', 'out']`
    - In `ISequentialStream`, in function `RemoteRead` change the parameters `pv` and `pcbRead` to `['in', 'out']`
    - In `IPortableDeviceResources`, in function `GetStream` change the parameter `ppStream` to `['in', 'out']`
  - Remove all bad asserts from the generated files (`_1F001332_1A57_4934_BE31_AFFC99F4EE0A_0_1_0.py` and `_2B00BA2F_E750_4BEB_9235_97142EDE1D3E_0_1_0.py`)
    - This seems not to be necessary anymore
- Now you can:
  - List devices with `PortableDevices.py ls`
  - List directory contents with `PortableDevices.py ls [Device]/directory`
  - Upload files with `PortableDevices.py cp source [Device]/directory`
  - Download files with `PortableDevices.py get [Device]/directory target`

License
-------

This software is licensed under the [MIT license](https://en.wikipedia.org/wiki/MIT_License).

repository: UndeadFu/PortableDevices

repo_name: UndeadFu/PortableDevices


text:
# flask_ask_ros
A locally hosted web service + ROS node for custom Alexa skills based on [Flask-Ask](https://github.com/johnwheeler/flask-ask).

## Table of Contents

* [Description](README.md#description)
* [Requirements](README.md#requirements)
* [Maintainers](README.md#maintainers)
* [Installation](README.md#installation)
* [Usage](README.md#usage)
* [TO DO](README.md#todo)

## Description
This package combines a Flask server and ROS node into a script that serves as an endpoint for a custom Alexa Skill. This enables information sent by voice to the Amazon Alexa to be processed by other ROS nodes and services.

In this package we provide a simple Alexa skill that parses a single slot (word/argument) from an utterance (spoken function call) and publishes it to a ROS topic.

## Requirements

* Ubuntu 18.04 or 16.04

* ROS Melodic or Kinetic

* Flask-ask (Python): follow installation from source [here.](https://github.com/johnwheeler/flask-ask/blob/master/README.rst#development)

## Maintainers

* SEUGIL HAN<EMAIL_ADDRESS>
## Installation

* Navigate to source directory of your ROS catkin workspace (e.g. `catkin_ws`):

  ``` bash
      cd catkin_ws/src
      git clone https://github.com/3SpheresRoboticsProject/flask_ask_ros
  ```

* Build catkin workspace:

  ``` bash
      cd catkin_ws
      catkin_make
  ```

* If necessary, set script file permissions to executable:

  ``` bash
      chmod +x catkin_ws/src/flask_ask_ros/src/*
  ```

* Source workspace:

  ``` bash
      source catkin_ws/devel/setup.bash
  ```

## Usage

* Using ngrok as a tunnel

### ngrok tunnel configuration

1. Set the `ROS_IP` environment variable to be the local machine IP

2. Download [ngrok for Linux](https://ngrok.com/download) and unzip

3. Start an ngrok server:

   ``` bash
   ./ngrok http $ROS_IP:5000
   ```
4. Open the [Amazon Developer Console](https://developer.amazon.com/alexa/console/ask) and navigate to your custom skill:

   * Under *Configuration*, select *HTTPS* and paste the URL shown on the ngrok terminal (see below).

	 ![alt text][ngrok_url]

   * Under *SSL Certificate* select *My development endpoint is a sub-domain of a domain that has a wildcard certificate from a certificate authority.*

5. Run the skill server with the ngrok argument set to `true`:

   ``` bash
   roslaunch flask_ask_ros start_skill_server.launch ngrok:=true
   ```

## Testing

In order to test the provided skill server, open your [Amazon Developer Console](https://developer.amazon.com/alexa/console/ask), create a custom skill, and follow the [steps above to configure your endpoint](README.md#Usage).

Inside the skill builder, navigate to the *JSON Editor* and paste the contents of `src/test_skill.json`. Save and build the model.

Run the skill server to test your skill.

## TODO

* Sample code for ROS services

This app was not created or endorsed by Amazon.
# flask_ask_ros

## reference https://github.com/3SpheresRoboticsProject/flask_ask_ros


text:
---
layout: post
title: TrendMicroCTF - 500 Captchas! (Misc 300)
author: quanyang
description: TrendMicro CTF 2015 Miscellaneous 300. Solve 500 Captchas.
tags: [CTF, MISC, CAPTCHA, TRENDMICRO]
category: [CTF, MISC, CAPTCHA]
excerpt: ""
comments: true
share: true
---

Welcome to Captcha Challenge!

The challenge description was a website, upon entering the website, you are allowed to register/sign in.

	After registering and logging in, you are shown a captcha, and it seems that the challenge was to solve 500 consecutive captchas without any mistakes. However, it seems that you are able to skip captchas by refreshing the page (this turned out to be very useful).

	Captchas looks like this:

	To automatically solve all 500 captchas, we wrote a python script using the Python Imaging Library. The trick to solving the captchas was to do some pre-processing and to build a dataset of good characters which we will be using to solve new captchas.

Processing

	Turn background/noise to white, and text to black
	Scan the entire picture and rank the colours by frequency, the background colour would have the highest frequency followed by the text

	Dynamically slice the image by characters
  For each X coordinate, if the Y coordinates along the X coordinate has a black pixel:

  set inLetter = true

  Keep going along X until you reach a X where there is no black pixel along it, then you have your starting and ending x coordinate for your character!

{% highlight python linenos %}
for y in range(im2.size[0]): # slice across
  for x in range(im2.size[1]): # slice down
    pix = im2.getpixel((y,x))
    if pix != 255:
      inletter = True
      last = y
  if foundletter == False and inletter == True:
    foundletter = True
    start = y

  if foundletter == True and inletter == False:
    end = y
    if end-last > 3 and end-start > 20:
      foundletter=False
      letters.append((start-3,end))
  inletter=False
{% endhighlight %}

    With that, you can build a dataset of characters to use for comparison:

	So now, we process new captchas similarly, and slice them up into characters for comparison with our dataset.

	The code for comparison is as follows:

{% highlight python linenos %}
class VectorCompare:
  def magnitude(self,concordance):
    total = 0
    for word,count in concordance.iteritems():
      total += count ** 2
    return math.sqrt(total)

  def relation(self,concordance1, concordance2):
    relevance = 0
    topvalue = 0
    for word, count in concordance1.iteritems():
      if concordance2.has_key(word):
        topvalue += count * concordance2[word]
    return topvalue / (self.magnitude(concordance1) * self.magnitude(concordance2))

def buildvector(im):
  d1 = {}

  count = 0
  for i in im.getdata():
    d1[count] = i
    count += 1

  return d1

def crack(img):
  im = img
  im = im.convert("RGBA")
  his = im.load()
  v = VectorCompare()

  imageset = []

  for img in os.listdir('./iconset4/'):
    temp = []
    if img != "Thumbs.db" and img != ".DS_Store": # windows check...
      imgs = Image.open("./iconset4/%s"%(img))
      imgs = imgs.convert("P")
      temp.append(buildvector(imgs))
    imageset.append({img[0:2]:temp})

  values = {}

  for y in xrange(im.size[1]):
      for x in xrange(im.size[0]):
        values[x,y] = his[x,y]

  count = {}
  for j,k in sorted(values.items(), key=itemgetter(1), reverse=True):
    if (k > 0 ):
      if k in count:
        count[k] = count[k]+1
      else:
        count[k] = 1

  a = sorted(count.items(), key=itemgetter(1), reverse=True)
  text = a[1][0]
  im2 = Image.new("P",im.size,255)

  for x in range(im.size[1]):
    for y in range(im.size[0]):
      pix = im.getpixel((y,x))
      if pix == text:
        pix = (0,0,0,0)
      else:
        pix = (255,255,255,255)
      im2.putpixel((y,x),pix[2])

  guessword = ""
  letters =[]
  inletter = False
  foundletter=False
  start = 0
  end = 0
  last = 0
  for y in range(im2.size[0]): # slice across
    for x in range(im2.size[1]): # slice down
      pix = im2.getpixel((y,x))
      if pix != 255:
        inletter = True
        last = y
    if foundletter == False and inletter == True:
      foundletter = True
      start = y

    if foundletter == True and inletter == False:
      end = y
      if end-last > 3 and end-start > 20:
        foundletter=False
        letters.append((start-3,end))
    inletter=False

  results = []
  for letter in letters:
    m = hashlib.md5()
    img4 = im2.crop(( letter[0] , 0, letter[1],im2.size[1] ))
    guess = []
    for image in imageset:
      for x,y in image.iteritems():
        if len(y) != 0:
          guess.append( ( v.relation(y[0],buildvector(img4)),x.decode('hex')) )
    guess.sort(reverse=True)
    results.append(guess[0])

  return results

def main():
  img= Image.open("image.png")
  print crack(img)

if __name__ == "__main__":
    main()
{% endhighlight %}

  To achieve a 100% accuracy, we need to reject certain solutions that contains risk, to do this, we reject a solution if any of the characters has a similarity score that is less that 0.99. With this, we were able to achieve a 100% accuracy with a rejection rate of ~1 per captcha.

  After about ~2 hours, our script finally solve all 500 captchas.

And we have our flag: TMCTF{217dae3fd34cee799658d4552e37827f}

repository: NUSGreyhats/write-ups

gha_language: JavaScript

gha_license_id: MIT

repo_name: NUSGreyhats/write-ups


text:
# Eddie Jones: 'I'm almost redundant now. The team's running the team'

Published at: **2019-11-01T09:42:55+00:00**

Author: **By Online Editors**

Original: [Rugbypass](https://www.rugbypass.com/news/eddie-jones-im-almost-redundant-now-the-teams-running-the-team)

Eddie Jones has challenged his England players to inspire the nation by toppling South Africa in Saturday’s World Cup final.
Jones believes that victory over the Springboks at a sold out 69,000 International Stadium Yokohama has the ability to bring joy to the country and fire the imagination of future Red Rose stars.
And when England run out for their fourth World Cup final, a match they enter as favourites, they will have instructions from their head coach to be fearless in their final assault on the Webb Ellis Trophy.
“The players can inspire a whole country now, they can inspire a sporting community,” former Japan coach Jones said.
“That’s the opportunity they’ve got and all the messages we’ve seen back in England show that there’s a bit of a rugby fever going on.

        Click here to see the video

“Now mums are telling kids ‘play rugby’, be the next Kyle Sinckler, be the next Ellis Genge, and that’s the opportunity they’ve got.
“It changes how the country feels about itself for a period of time – it might change at the next general election – but for a period of time it changes how people feel about themselves and that’s the greatest joy.
“If I look back at Japan and look at the growth of rugby in Japan from what we did in 2015, it’s spectacular.

license: Unlicense

repository: dsadlollioygjmzvcxv/tdc-exported

repo_name: dsadlollioygjmzvcxv/tdc-exported


text:
# rust-libzfs

[![Build Status](https://travis-ci.org/whamcloud/rust-libzfs.svg?branch=master)](https://travis-ci.org/whamcloud/rust-libzfs)

This repo provides [bindings](libzfs-sys) from libzfs to rust using bindgen.
It also provides a [wrapper](libzfs) around those bindings for idiomatic use.
Additionally, it provides [node bindings](node-libzfs) around the rust wrapper.

repository: wfraser/rust-libzfs

repo_name: wfraser/rust-libzfs


text:
# Troubleshooting PostegreSQL connection errors

This applies especially for Ubuntu/Debian users, as the default PostgreSQL
config forbids logins as the `postgres` user. If granting all local UNIX
users access to the DB is not of concern, follow these steps:

Fixing `FATAL: Peer authentication failed for user "postgres"`:

* Edit your `/etc/postgresql/<version>/main/pg_hba.conf`

* Locate and edit the following lines (some of them may be missing):

  ```
  local   all             postgres                                [METHOD]
  local   all             all                                     [METHOD]
  host    all             all             <IP_ADDRESS>/32            [METHOD]
  host    all             all             ::1/128                 [METHOD]
  ```

* Allow all local connections by changing `[METHOD]` to `trust`, example:

  ```
  host    all             all             <IP_ADDRESS>/32            trust
  ```

* After this, reload the config by restarting the PostgreSQL service (on
  Debian/Ubuntu):

  ```
  sudo systemctl restart postgresql.service
  ```

Fixing `'psql' command is not recognized on windows`:
* Make sure the right system PATH variables are set for psql.
  computer => properties => advanced system settings=> Environment Variables => System Variables then search for path

* For windows, --user does not work, use --username

repository: Friendship-App/friendship-backend

repo_name: Friendship-App/friendship-backend


text:
## Table of Contents

* [Overview](#overview)

## Overview

The UH Manoa Marketplace is a web application where people apart of the UH community are able to buy or sell their personal belongings. Great for students who graduate and need to get rid of their unwanted stuff once they are finished dorming at the Univsersity of Hawai'i at Manoa.


text:
---
id: relation_yml
title: relation.yml
---

## Configuration

MythicDrops has a lot of configuration options. Below is the contents of the
relation.yml with inline explanations of what each configuration option does.

```yaml
version: "0.0.1"
## Relations are incredibly simplified sets.
## Any randomized item that has one of the below keys
## in its display name will spawn with an extra line of lore,
## assuming that "%relationlore%" is available in the tooltip-format
## in config.yml.
##
## In this example, an item named "&BSlow Glacier" would spawn with
## an extra line of lore "&bSpeed: -30%"
glacier:
  - "&bSpeed: -30%"
```

repository: radawson/MythicDrops

gha_language: Kotlin

repo_name: radawson/MythicDrops


text:
# GW Data Visualizer
GW Data Visualizer allows you to get important analytics and statistics about your dataset.

#### To run:
```sh

pip3 install -r requirements.txt

pip freeze > requirements.txt

python3 main.py
```

#### Here's an example:
[![Link to a video](http://i3.ytimg.com/vi/CC6EzvvlZtc/hqdefault.jpg)](https://www.youtube.com/watch?v=CC6EzvvlZtc=VID)

repository: SatishUpadhyaya/GWDataVisualizer

repo_name: SatishUpadhyaya/GWDataVisualizer


text:
# Goji  [![build](https://github.com/MartinKuschnik/Goji/workflows/.NET%20Core/badge.svg)](https://github.com/MartinKuschnik/Goji/actions) [![NuGet Status](http://img.shields.io/nuget/v/Goji.svg?style=flat)](https://www.nuget.org/packages/Goji/)
A framework to localize WPF applications.

## What's Goji?

It's a framework that helps you to localize your WPF applications. Therefore it provides different kinds of markup extensions.

  ![Example](https://raw.githubusercontent.com/MartinKuschnik/Goji/master/doc/pics/example.gif)

## Are there any requirements?

Goji can be used for all WPF applications which targeting to the .Net  Framework 4 or any higher version.

## License

Goji is licensed under MIT License, check the [LICENSE](https://github.com/MartinKuschnik/Goji/blob/master/LICENSE) file for details.

## Installation

## Getting Started

**Step 1:** Create a new WPF application or open an existing one.

**Step 2:** Install the NuGet-Package.

**Step 3:** Bind a view to the application language.

  ![ApplicationLanguage](https://raw.githubusercontent.com/MartinKuschnik/Goji/master/doc/pics/ApplicationLanguage.PNG)

**Step 4:** Add the translation provider files you'd like to use.

  ![RESX](https://raw.githubusercontent.com/MartinKuschnik/Goji/master/doc/pics/added_resx_files.PNG)

**Step 5:** Set the translation provider for the UI element you'd like to localize.

  ![Set Translation Provider](https://raw.githubusercontent.com/MartinKuschnik/Goji/master/doc/pics/set_translation_provider.png)

**Step 6:** Use one of the translation extensions to localize a string.

  ![Static Translation](https://raw.githubusercontent.com/MartinKuschnik/Goji/master/doc/pics/static_translation.png)

## What does the ApplicationLanguage markup extension?

This extension makes it very easy to synchronize the language of a control with the applicatuion language. The language of the control is automaticaly updated if you change the application language by using the extension method ```Application.SetCurrentUICulture(CultureInfo)```. This will update the formatting and the translations.

  Usage:
  ```
  <Control Language="{ApplicationLanguage}" />
  ```
## Which kind of translation providers are supported?

...

## Why multiple markup extension for translation purposes?

Localizing an application will create different kinds of situations with variant requirements. Therefore there are variant markup extensions with different levels of complexity.

- StaticTranslation

  This is the most rudimentary way to localize a text based property.
  The translation is done only once.

  *Use Case: Use this type of translation for dialog based views which prevent the user to change the language / culture and are recreated every time.*

- DynamicTranslation

  This markup extension automatically triggers a retranslation when the control language has changed.

  *Use Case: This one should be used if the displayed value should always be up to date. Use this markup extension if you are not sure whether the view stays alive during a language change.*

- BindingTranslation

  The BindingTranslation is an extended version of the DynamicTranslation and  retranslates the bound key if this has changed.

  *Use Case: Use this one if you'd like to show a localized text based on an enumeration provided by the view model..*

The following table should highlight the differences a bit more:

|Markup Extension|Updates on language or translator changed?|Updates on translation key changed?|
|---|---|---|
|StaticTranslation|No |No |
|DynamicTranslation|Yes|No |
|BindingTranslation|Yes|Yes|

repository: MartinKuschnik/Goji

repo_name: MartinKuschnik/Goji


text:
## {{ audit.title }} [WCAG 1.3.1](https://www.w3.org/WAI/WCAG21/quickref/?versions=2.0#info-and-relationships) [WCAG 2.4.1](https://www.w3.org/WAI/WCAG21/quickref/?versions=2.0#bypass-blocks)

__I need a human!__ Manual Test: {{ audit.title|escape }}

{%- if audit.description %}

Description:<br>
{{ audit.description|trim|escape }}

Screen reader users can optionally browse pages by jumping between [Landmarks](https://www.w3.org/TR/wai-aria-practices/examples/landmarks/HTML5.html).  For this to work well, all content needs contained in `<main>`, `<header>`, `<nav>`, `<aside>`, or `<footer>` Landmarks. Otherwise it is possible that a screen reader user could miss its existence.

{% endif -%}

---

gha_language: HTML


text:
{
  "date" : "2021-04-23",
  "keywords": [ "config File", "configuration files", "config File format", "extension", "format","git config file","Configuration files in Linux","what is a config file","Config file php", "ssh config file example", "aws config file example", "python config file example" ],
  "author" : {
    "display_name" : "Muhammad Umar"
  },
  "draft" : "false",
  "toc" : true,
  "title" : "CONFIG - Configuration File",
  "description":"Learn about CONFIG file format with CONFIG example and APIs that can create and open CONFIG files.",
  "linktitle" : "CONFIG",
  "menu" : {
    "docs" : {
      "parent" : "programming"
    }
  },
  "lastmod" : "2021-04-23"
}

## What is a CONFIG file?
A CONFIG file is known as configuration file; used to configure the parameters and primary settings for several computer softwares. Some softwares only read their **configuration files** at their startup. Others check the configuration files for changes periodically.

## CONFIG File format
The **CONFIG File format** is used for server processes, software applications, and operating system settings. A programmer can write code to instruct a software to read the configuration files again and again after certain time of period and apply the changes to the current process. There are no definitive standards or strong conventions for CONFIG file sysntax. For example, Microsoft's Web.config file belongs to the CONFIG file format, which consists of an [XML](https://docs.fileformat.com/web/xml/) based tagsets; can be edited with Microsoft Visual Studio or any other text editor.

## Examples of configuration files:
Since, the configuration files are not created by following any rules, standrads or conventions, these files might have written by using different formats. A .config file might be based on XML, [JSON](https://docs.fileformat.com/web/json/) or any other format. Following are the examples of configuration files for well known operating systems and softwares:

### Configuration files in Linux
 Every Linux program is an executable file keeping the list of **opcodes** the CPU executes to accomplish typical operations. The operations of almost every program can be customized to your requirements by changing its configuration files. Several configuration files in the Linux system are in the /etc directory. The configuration files can be classified into the following categories:
|Category|Example| Comments|
---|---|---|
|Access files|/etc/host.conf|Tells the network domain server how to look up hostnames.|
|Booting and login/logout|/etc/rc.d/rc.local|Not official. May be called from rc, rc.sysinit, or /etc/inittab.|
|File system|/etc/mtools.conf|Configuration for all the operations (mkdir, copy, format, etc.) on a DOS-type filesystem.|
|System administration|/etc/shells|Holds the list of possible “shells” available to the system.|
|Networking|/etc/gated.conf|Configuration for gated. Used only by the gated daemon.|
|System commands|/etc/logrotate.conf|Configuration for the Dynamic Linker.|
|Daemons|/etc/httpd.conf|The configuration file for Apache, the Web server. This file is typically not in /etc.|
|User programs| /etc/lynx.cfg| Proxy settings|
### AWS CONFIG file example
The frequently used configuration settings and credentials can be saved in CONFIG files that are maintained by the AWS CLI. The CONFIG file must be a plaintext file that uses the following format:
```
[default]
region = us-west-2
output = json

[profile dev-user]
region = us-east-1
output = text

[profile developers]
role_arn = arn:aws:iam::123456789012:role/developers
source_profile = dev-user
region = us-west-2
output = json
```
### SSH CONFIG file example
OpenSSH client-side configuration file is named CONFIG, and it is stored in the .ssh directory. The SSH CONFIG file consists of the following structure:
```
Host hostname1
    SSH_OPTION value
    SSH_OPTION value

Host hostname2
    SSH_OPTION value

Host *
    SSH_OPTION value
```
### Python CONFIG file example
A Python CONFIG file could look like this:

```
#!/usr/bin/env python
import preprocessing

mysql = {
    "host": "localhost",
    "user": "root",
    "passwd": "my secret password",
    "db": "write-math",
}
preprocessing_queue = [
    preprocessing.scale_and_center,
    preprocessing.dot_reduction,
    preprocessing.connect_lines,
]
use_anonymous = True
```

## References

 * [Understanding Linux configuration files](https://developer.ibm.com/technologies/linux/articles/l-config/)
 * [Configuration and credential file settings](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)
 * [Using the SSH Config File](https://linuxize.com/post/using-the-ssh-config-file/)
 * [Configuration files in Python](https://martin-thoma.com/configuration-files-in-python/)

gha_language: Mathematica


text:
# lemon-components

Basic vue components and styles for rapid development. Current components are GraphCircle (a circle or pie chart graphing component) and MenuSlide (a slide out navigation menu). Please visit the documentation site for more details, usage, and examples.

http://jamesgriffithsdevelopment.com/project/lemoncomponents

repository: jamesrgriffiths/lemon-components

gha_language: Vue

repo_name: jamesrgriffiths/lemon-components


text:
# Useful commands to create auxiliary data

[How to convert PDF to Image?](https://askubuntu.com/q/50170/220129)

```
pdftoppm input.pdf outputname -png
```

## Auxiliary scripts

* Compiling all examples from the example directory: `compile_examples.bash`.
* Building the package from sources: `build_package.bash`.

repository: polyluxus/polycv

branch_name: refs/heads/release

gha_language: TeX

repo_name: polyluxus/polycv


text:
# Setting Up

Here is a minimal HTML set-up.

```html
<!DOCTYPE html>
<html>
  <head>
    <!-- you can ignore these -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width">

    <!-- imports, this is where the special components we made come in -->
    <script src="https://hackclub.github.io/pierson-oct-21-2021/exports.js" type="module"></script>

    <!-- this is the title you see inthe tab -->
    <title>NAME HERE</title>

    <!-- this changes how the page looks -->
    <style>

    </style>

  </head>

  <!-- content goes inside of body -->
  <body>
    Hello world!
  </body>
</html>
```

Take note of these different sections but it's okay to copy the scaffold to get started.

<hr>

If you want a more complicated page can also start with the website you're on!

```html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>simple-site</title>
  <script src="https://hackclub.github.io/pierson-oct-21-2021/exports.js" type="module"></script>
  <style>
    body {
      margin: 0px;
    }

    .main {
      display: grid;
      height: 100vh;
      width: 100vw;
      grid-template:
        "menu content" 100%
        / 150px 1fr;
    }

    .menu {
      grid-area: menu;
      display: flex;
      flex-direction: column;
      background: #9d559deb;
      height: 100%;
      justify-content: center;
      align-content: stretch;
      align-items: center;
    }

    .link {
      color: white;
      padding: 5px;
      cursor: pointer;
      text-decoration: none;
    }

    .link:hover {
      opacity: .8;
      text-decoration: underline;
    }

    .content {
      color: #020000d1;
      padding: 20px;
      overflow-y: scroll;
      background: #e2e2e375;
    }
  </style>
</head>
<body>
<div class="main">
  <div class="menu">
    <a class="link" href="./">home</a>
    <a class="link" href="./#/page-0">Page 0</a>
  </div>

  <div class="content">

    <hash-check route="">
      <div class="inner-content">home page content</div>
    </hash-check>

    <hash-check route="page-0">
      <div class="inner-content">Page 0 Content</div>
    </hash-check>

  </div>
</div>
</body>
</html>
```

repository: tevan-goldberg/pierson-club

repo_name: tevan-goldberg/pierson-club


text:
---
layout: post
author: Chris_Tufts
share:  true
title: "Pragmatic Stats: Exploratory Data Analysis - Visualizations"
modified:
categories: blog pragmaticstats
excerpt: ""
tags: [pragmaticstats, r, python]
image:
  feature: pragmatic_stats_eda/scatter_plot.svg
date: 2015-02-25 ##T15:39:55-04:00
---

# What is it?
Exploratory data analysis (EDA) is the process of reviewing your data to
get a sense of what you are dealing with. Statistics derived from our data
can give us a good idea of what is going on, but data visualization often gives
 a clearer picture.

In this post I'm only going to touch on two types of visualizations: histograms
and scatter plots. There are plenty of other visualizations out there, but these
are two that are normally the first ways I will visualize data.

# What is it used for?
It is often the first step in solving any data related problem. You need to know
what you are dealing with before you can propose a plan on how to attack (regardless
  of application - prediction, correlation, ANOVA, etc.)

It is used to answer the following (amongst other things):

* What is the range of my data?
* Where is my data centered?
* How spread out is my data?
* What distribution is my data from?

Obviously we can calculate statistics for each of the above questions, but visualizations
help us get the whole picture at once.

# Terminology

![R Histogram Plot](/images/pragmatic_stats_eda/histogram.svg)

* Histogram: Bar chart that has multiple equal sized bins (intervals) on the
x-axis which represents the range of data values for a single variable.
 The y-axis is the frequency, or
count, of the number of samples in a specific range.

![R Scatter Plot](/images/pragmatic_stats_eda/scatter_plot.svg)

* Scatter Plot: A plot normally used to plot a dependent variable (y-axis)
against an independent variable (x-axis). For example, score on an exam (dependent)
versus hours spent studying (independent). In general, it can be used to compare
any two variables so long as they are matched. For example, say I want to compare
the weight (x-axis) and height (y-axis) of different individuals.

# When Should I Use This?

#### Use:

Histogram

Histograms are great for getting a high level view of a single variable. We
can use mean, median, and standard deviation to get a sense of the data, but a
histogram fills in some of the gaps. It makes it easy to identify any issues
our descriptive statistics are unable to tell us. For example I may have a
bimodal distribution or a heavily skewed distribution.

![Bimodal Distribution](/images/pragmatic_stats_eda/bimodal_dist.svg)

*Example of a Bimodal Distribution*

Scatter Plot

Scatter plots should be used when you want to identify a trend or relationship
between two variables which are paired (i.e. they were measured for the same
  subject or sample).

#### Don't Use:
Histograms

To identify the relationship between two variables.

Scatter Plot

To investigate the distribution of a single variable.

# Assumptions, Prerequisites, and Pitfalls

Histograms

Be mindful of bin size.  See the examples below for the same data:

![R Histogram Plot](/images/pragmatic_stats_eda/histogram.svg)

*Bin size of 0.25*

![Binsize too wide](/images/pragmatic_stats_eda/histogram_incorrect_binning.svg)

*Bin size of 4*

Scatter Plot

Make sure you are plotting paired data. To clarify this means make sure if
you are plotting subject A's height, don't plot it against subject B's weight.
Always make sure it is subject A's weight against subject A's height,
 subject B against B, etc.

# Example - No Code

#### Scatter Plot

![Scatter Plot Example](/images/pragmatic_stats_eda/scatter_plot_example_hd.png)

#### Histogram

![Histogram Example](/images/pragmatic_stats_eda/histogram_plot_example_hd.png)

# Example - Code

#### Python & Matplotlib

{% highlight python %}
import numpy as np
import matplotlib.pyplot as plt

# histogram
n = 1000
x = np.arange(0,n)
value = np.random.randn(1,n)[0]
plt.figure(figsize=(8,2), dpi=72)
plt.hist(value)
plt.show() # show plot
# uncomment next line if you want to save plot to svg
# plt.savefig('histogram_py.svg', format='svg')
{% endhighlight %}

![Python Histogram](/images/pragmatic_stats_eda/histogram_py.svg)

{% highlight python %}
# clear figure
plt.clf()
# scatter Plot
n = 100
m = 0.2
x = np.arange(0,n)
y = m*x + np.random.randn(1,n)[0]
plt.figure(figsize=(8,2), dpi=72)
plt.plot(x, y, 'o')
plt.show() # show plot
# uncomment next line if you want to save plot to svg
# plt.savefig('scatter_py.svg', format='svg')
{% endhighlight %}

![Python Scatter Plot](/images/pragmatic_stats_eda/scatter_py.svg)

#### R & ggplot2
{% highlight R %}
library(ggplot2)

# Histogram
n <- 10000
df_histogram <- data.frame(n = 1:n, y = rnorm(n))
ggplot(df_histogram, aes(x  = y)) +
  geom_histogram(fill = "#E4002B", color = "#7A99AC")
{% endhighlight %}

![R Histogram Plot](/images/pragmatic_stats_eda/histogram.svg)

{% highlight R %}
# Scatter Plot
m = 0.2
x <- 1:100
y <- m*x + rnorm(length(x))
df_scatter <- data.frame(x,y)
ggplot(df_scatter, aes(x = x, y = y)) + geom_point()
{% endhighlight %}

![R Scatter Plot](/images/pragmatic_stats_eda/scatter_plot.svg)

[jekyll-gh]: https://github.com/jekyll/jekyll
[jekyll]:    http://jekyllrb.com


text:
# Operators

Programming is all about manipulating values, so it makes sense that it has some basic mathematical operations. Here are some of the arithmetic operators available in Java:

* `+`  Addition
* `-` Subtraction
* `*` Multiplication
* `/` Division
* `%` Modulo (Remainder)

> [!WARNING]
> You have to be careful if you have an `int` such as `3` and another `int` such as `4`, `3 / 4` will not return `0.75`. Instead, it will give `0`. This is because on the left, you have an `int`, and on the right, you have an `int`. Therefore, when you do the operation, you will get another `int`, so the `.75` part will be chopped off, not rounded. If you want the operation to return `0.75`, you would have to do `3.0 / 4`, `3 / 4.0`, or `3.0 / 4.0` to make sure the computer understands we want to work with decimals.

The fifth operator `%` returns the remainder when the first number is divided by the second one. For instance, `3 % 2 = 1`, `4 % 2 = 0`, `10 % 3 = 1`, etc.

## Variables

These operators also work on variables! (Note: code segments may omit the structure around `main` for conciseness, but note that you still need them)

```java
int a = 3;
int b = 4;

int c = a + b; // This is 7
int d = a * b; // This is 12
int e = b - a; // This is 1
double f = ((double) a) / b; // This is 0.75
// Note the cast in order to make sure the first variable is treated as a double
// Also, parantheses are used to make sure the variable is casted before the division takes place
int g = b % a; // This is 1
```

## Shortcuts

When programming, you may find yourself wanting to add a number to a variable. For instance, if you were making a game, if a player picks up a heart, you may want to increase their health. You could type the following:

```java
int health = 2;

// Player picks up a heart
heath = health + 1;
// Health is now 3
```

In this case, we are reassigning the variable health to its current value plus 1. It's a weird concept to grasp, but try to just replace the second `health` with a `2` to see what is happening.

However, programmers are lazy. They want to be able to compact this statement, so they made up a new operator: `health += 1`. In this case, the operator `+=` tells the computer to just increase the value of `health` by `1`. This type of operator exists for all of the other operations:

* `+=`
* `-=`
* `*=`
* `/=`
* `%=`

However, programmers are even lazier. They frequently type the expression `+= 1` and `-= 1`, so they invented another shortcut: `++` and `--`. `health++` means the same thing as `health += 1` and `health = health + 1`; it is just shorter.

## More Operators

There are more operators in Java, including the ternary operators, conditional operators, bitwise oeprators. We will be covering ternary/conditional soon, and bitwise is too advanced for what we are doing. If you do want to learn more: go [here](https://www.geeksforgeeks.org/operators-in-java/).

gha_language: Java


text:
#Extend version of the Angular Phonecat tutorial with added steps to include [webpack](http://webpack.github.io) and [gulp](http://gulpjs.com)

I created this fork because I didn't know how to split up an Angular project in a nice way. I used [RequireJS](http://requirejs.org) [before](https://twitter.com/escapedcat/status/433160981426880512) but it always felt too complicated in a way.

I tried a cleaner approach in 3 steps:

1. Just splitting files
2. Adding [webpack](http://webpack.github.io) to combine splitted files
3. Utilizing [gulp](http://gulpjs.com) to create a uglified build-file

I'm still not sure if this is the way to go, but so far it's working out. If you discover this and you have an opinion or feedback on this I'm more than happy to listen to it. [Open an issue](https://github.com/escapedcat/angular-phonecat-webpack-gulp/issues/new) or [send me a tweet](https://twitter.com/escapedcat).

##[Step-13 Split version](https://github.com/escapedcat/angular-phonecat-webpack-gulp/tree/step-13)

###Changes
Only the `controllers.js` file is split into two seperated controller files.

##[Step-14 Webpack version (simple)](https://github.com/escapedcat/angular-phonecat-webpack-gulp/tree/step-14)

###Setup
`npm install -g webpack` (for adding webpack)

###Development workflow
`webpack ./app/js/main.js ./app/js/bundle/bundle.js --progress --colors -d --watch`

This creates the bundle.js and the sourcemap-file.
The sourcemap file gets created because of the debug option (`-d`).

Every change of the JavaScript files will be watched and Webpack rebuilds the build-file automatically.

##[Step-15 Webpack version using gulp to create build-file](https://github.com/escapedcat/angular-phonecat-webpack-gulp/tree/step-15)

`index.html` is modified to use the build-file from the dist folder!

###Setup
`npm install -g webpack` (for adding webpack)

###Development workflow (not needed in this step, cause this only adds gulp to show how a simple build works; see next section)
`webpack ./app/js/main.js ./app/js/bundle/bundle.js --progress --colors -d --watch`

This creates the bundle.js and the sourcemap-file.
The sourcemap file gets created because of the debug option (`-d`).

Every change of the JavaScript files will be watched and Webpack rebuilds the build-file automatically.

###Build
Create uglified file by using: `gulp`


text:
# Longest increasing subsequence

The longest increasing subsequence problem is to find a subsequence of a given sequence in which the subsequence's elements are in sorted order, lowest to highest, and in which the subsequence is as long as possible.
http://en.wikipedia.org/wiki/Longest_increasing_subsequence

## Input
n
a(1) a(2) ... a(n)

a(i) - i-th number

## Sample input
13
16 5 8 6 1 10 5 2 15 3 2 4 1

repository: wojciech-kulik/Algorithms

path: /Well known algorithms/Longest increasing subsequence/README.md

repo_name: wojciech-kulik/Algorithms


text:
# setDisplayBrightness(int displayID, int brightness)
### Description
Changes the brightness level of the display via a percentage.

### Parameters
displayID: Unique identifier for the display that is to have its brightness set. Input 0 for the six-digit display, 1 for the smaller four-digit display, or 2 for the four-digit display.

brightness: The brightness level of the display as a percentage (ex. 100 = 100%, 25 = 25%, etc.).

### Example
```
GhostLab42Reboot reboot;
reboot.begin();
reboot.setDisplayBrightness(1, 10);
reboot.write(1, "0123");
```


text:
# req.ips
If "trust proxy" is enabled, this variable contains the IP addresses in this request's "X-Forwarded-For" header as an array of the IP address strings. Otherwise an empty array is returned.

### Usage
```js
req.ips;
```

### Example
If a request contains a header: "X-Forwarded-For: client, proxy1, proxy2":

```js
req.ips;
// -> ["client", "proxy1", "proxy2"]`

// ("proxy2" is the furthest "down-stream" IP address)
```

<docmeta name="displayName" value="req.ips">
<docmeta name="pageType" value="property">

repository: marrouchi/sails-docs-fr

repo_name: marrouchi/sails-docs-fr


text:
---
layout: post
title: DNA RNA Extractions Thermal Transplant Porites Trial 1
date: '2019-12-03'
categories: Processing, Protocols
tags: Porites, DNA RNA Extractions, Thermal Transplant
---

DNA/RNA extractions for Porites Thermal Transplant Trial #1 - ADULTS

### Goal
To stream line the protocol for DNA/RNA extractions for *Porites astreoides* for the Thermal Transplant 2018 experiment

### Samples
To start, I am using 5 adult *P. astreoides* samples that were already chipped (~0.5mm diameter) and placed in 500 uL of DNA/RNA Shield.

**Sample Numbers: 29, 25, 33, 49, 23**

### Protocol description
I used a modified version of [this protocol](https://emmastrand.github.io/EmmaStrand_Notebook/Soft-and-Hard-Homogenization-Protocol/) written by [E. Strand](https://emmastrand.github.io/EmmaStrand_Notebook/). I only did the soft homogenization protocol because I am only interested in extraction coral DNA/RNA.

### Protocol Preparation

**Reagents and supplies**
- RNAse Away
- RNA/DNA shield
- RNAse-free water
- Proteinase K digestion buffer
- Proteinase K
- Isopropanol
- 10mM Tris HCl pH 8.0 made with RNase-free water
- 10% bleach
- Zymo Duet DNA/RNA Extraction kit buffers: DNA/RNA lysis buffer, DNA/RNA Prep Buffer, DNA/RNA Wash Buffer, DNA Digestion buffer, and DNase I

**Equipment**
- Rocking oven that can be set at 55 °C
- Thermomixer
- Vortexer
- Qiagen Tissue Lyser: [Handbook](https://www.qiagen.com/us/resources/resourcedetail?id=65e7826c-4d50-4faf-8154-2fbc782c41a6&lang=en)
- Bead tubes: 2mL 0.5mm glass beads and tubes from [Fisher Scientific](https://www.fishersci.com/shop/products/bead-tube-2ml-0-5mm-glass-50pk/15340152)
- Designated RNAse free space
- Tabletop and larger centrifuges for 1.5 mL capable of 12,000xg
- Clippers

### Reagent Preparation

1. Add 96 mL 100% ethanol (104 mL 95% ethanol) to the 24 mL DNA/RNA Wash Buffer concentrate before use. DNA/RNA Wash Buffer included with D7003T (Mini Prep Plus Kit) is supplied ready-to-use and does not require the addition of ethanol prior to use. Check kit contents and instructions to confirm prep steps.
2. Reconstitute the lyophilized (freeze-dried) DNase I as indicated on the vial prior to use. Mix by inversion. Store frozen aliquots.
3. Reconstitute the lyophilized (freeze-dried) 20 mg Proteinase K with 1040 uL Proteinase K Storage Buffer or lyophilized (freeze-dried) 5 mg Proteinase K with 260 uL Proteinase K Storage Buffer. Vortex to dissolve. Store at -20 °C.

### Soft Homogenization
1. Thaw samples from -80 °C.
2. Add 500 μl of RNA/DNA shield to make the total volume 1 mL
3. Add ~0.25 μl of 0.5mm glass beads to each sample
4. Vortex for 2 minutes. Leave the settings on and on max power.
5. Remove supernatant from the bead tube and place in a new 1.5 microcentrifuge tube labeled on the side with the extraction sample number and today's date. Label the cap of the microcentrifuge tube with the sample number. This supernatant will become the sample for "soft homogenization".
6. Add 300 μl of sample, 30 μl of Proteinase K digestion buffer (10:1 ratio of sample:digestion buffer), and 15 μl of Proteinase K (2:1 ratio of digestion buffer:Proteinase K) to a new 1.5 mL microcentrifuge tube.
7. Vortex and spin down all tubes.
8. Place bead tubes and leftover supernatant tubes (~300 μl) in -80 °C freezer.

## Zymo Duet RNA DNA Extractions

Modified from the [Zymo protocol](https://github.com/kevinhwong1/KevinHWong_Notebook/blob/master/images/Zymo_quick-dna-rna_miniprep_plus_kit.pdf).

**DNA Extraction**
1. Set up yellow DNA spin columns and collection tubes, label appropriately
2. Warm elution liquids to 70 °C (10mM Tris HCl pH. 8.0 and RNase free water)
3. Add equal volume (to supernatant; 345 µl) DNA/RNA lysis buffer to each sample tube
4. Finger flick to mix tubes
5. Add 700 µl (total volume) of sample gently to the yellow DNA spin column
6. Centrifuge at 16,000 rcf (g) for 30 seconds
7. **Important** Save the flow through from this step: transfer to a new 1.5mL tube labeled for RNA
8. Add 400 µl DNA/RNA Prep Buffer gently to the yellow DNA spin columns
9. Centrifuge at 16,000 rcf (g) for 30 seconds
10. Discard flow through (Zymo kit waste)
11. Add 700 µl DNA/RNA Wash Buffer gently to the yellow DNA spin columns
12. Centrifuge at 16,000 rcf (g) for 30 seconds
13. Discard flow through (Zymo kit waste)
14. Add 400 µl DNA/RNA Wash Buffer genetly to the yellow DNA spin columns
15. Centrifuge at 16,000 rcf (g) for **2 minutes**
16. Discard flow through (Zymo kit waste)
17. Transfer yellow columns to new 1.5 mL microcentrifuge tubes ("E1")
18. Add 50 µl warmed 10mM Tris HCl to each yellow DNA column by dripping slowly directly on the filter
19. Incubate at room temperature for 5 minutes. Centrifuge at 16,000 rcf (g) for 30 seconds **keep the flow through**
21. Add another 50 µl warmed 10mM Tris HCl to each yellow DNA column by dripping slowly directly on the filter
22. Incubate at room temperature for 15 minutes.
23. Centrifuge at 16,000 rcf (g) for 30 seconds
24. Throw away filter and keep flow through.
24. Aliquot 10 µl of the elution to 0.5 mL PCR tubes for Qubit and Gel Electrophoresis analysis.
25. Store at 4 °C if quantifying the same day or the next, if waiting longer store in -20 °C freezer.

**RNA Extraction**
*Can do concurrently with DNA Extraction after DNA Extraction Step 7*
1. Add equal volume (700 µl) 100% EtOH to the 1.5 mL tubes labeled for RNA containing the original yellow column flow through
2. Vortex and spin down to mix
3. Add 700 µl of that liquid to the green RNA spin columns
4. Centrifuge at 16,000 rcf (g) for 30 seconds
5. Discard flow through (Zymo kit waste)
6. Add 700 µl to the green RNA spin columns (the rest from the 1.5mL RNA tubes)
7. Centrifuge at 16,000 rcf (g) for 30 seconds
    - Get DNase I from freezer
8. Discard flow through (Zymo kit waste)
9. Add 400 µl DNA/RNA Wash Buffer gently to each green RNA column
10. Centrifuge at 16,000 rcf (g) for 30 seconds
11. Discard flow through (Zymo kit waste)
12. Make DNase I treatment master mix:
    - 75µl DNA Digestion buffer x # of samples
    - 5µl DNase I x # of samples
> Today I had 5 samples, therefore: 375 µl of DNA Digestion buffer and 25 µl of DNase I

13. Add 80 µl DNase I treatment master mix directly to the filter of the green RNA columns
14. Incubate at room temp for 15 minutes
15. Add 400 µl DNA/RNA Prep Buffer gently to each column
16. Centrifuge at 16,000 rcf (g) for 30 seconds
17. Discard flow through (Zymo kit waste)
18. Add 700 µl DNA/RNA Wash Buffer gently to the green RNA spin columns
19. Centrifuge at 16,000 rcf (g) for 30 seconds
20. Discard flow through (Zymo kit waste)
21. Add 400 µl DNA/RNA Wash Buffer genetly to the green RNA spin columns
22. Centrifuge at 16,000 rcf (g) for **2 minutes**
23. Discard flow through (Zymo kit waste)
24. Transfer green columns to new 1.5 mL microcentrifuge tubes
25. Add 50 µl warmed DNase/RNase free water to each green RNA column by dripping slowly directly on the filter
26. Incubate at room temp for 5 minutes
27. Centrifuge at 16,000 rcf (g) for 30 seconds
28. Repeat steps 25-27 for a final elution volume of 100 µl
29. Aliquot 5 µl of the final elution to 0.5 mL PCR tubes for Qubit and TapeStation analysis.
30. Store all tubes in the -80 °C freezer.

## Clean-up
1. Place tissue and liquid in the waste container labeled Zymo extraction waste.
2. Wipe down RNA free area with RNase away and kimwipes.
3. Throw away all tips and restock tip boxes if necessary.

## Testing Quantity and Quality
To test RNA and DNA quantity: [Qubit](https://github.com/emmastrand/EmmaStrand_Notebook/blob/master/_posts/2019-05-31-Qubit-Protocol.md)
To test RNA quality: [TapeStation](https://github.com/emmastrand/EmmaStrand_Notebook/blob/master/_posts/2019-05-31-TapeStation-Protocol.md)
To test DNA quality: [Gel Electrophoresis](https://github.com/emmastrand/EmmaStrand_Notebook/blob/master/_posts/2019-07-16-Gel-Electrophoresis-Protocol.md)

### Solution Key:
**DNA/RNA Lysis Buffer**: Contains a high concentration of chaotropic salts, which destabilize hydrogen bonds, van der Waals forces and hydrophobic interactions. This destabilizes proteins, including nucleases. The buffer will also disrupt association of nucleic acids with water.
**DNA/RNA Wash Buffer**: Used to remove residual proteins and carbohydrates, and purifies the molecular end product.
**DNase I**: deoxyribonuclease is an enzyme that catalyzes the hydrolytic cleavage of phosphodiester linkages in the DNA backbone, thus degrading DNA. This is used in the RNA extraction step to purify RNA final product.
**DNA/RNA Prep Buffer**: Ethanol and guanidinium chloride used a deproteinization measure. Guanidinium is a very strong denaturing agent that will dissolve cells and RNAses.
**EtOH**: the addition of alcohol further enhances and influences the binding of nucleic aicds to the silica (see spin colum description below).
**10 mM Tris HCl**: DNA is more stable at slightly basic pH and will dissolve faster in a buffer than water. Using Tris instead of water will enhance rehydration of high molecular weight DNA.
**DNA/RNase free water**: Used as an elution in the RNA extraction steps. RNA can tolerate a slightly acidic pH and dissolves. Warmed water as an elution increases high molecular yield.
**Yellow DNA/Green RNA Spin Columns**: contain a silica membrane that binds to nucleic acids. Proteins and polysaccharides should be in the flow-through liquid that is discarded while RNA and DNA is kept on the membrane.
**Proteinase K**: an enzyme that cleaves the peptide bond in proteins next to the carboxyl group of hydrophobic amino acid residues. This decontaminates the sample and leaves purified DNA/RNA.

General workflow of an extraction:
1. Cell lysis through disruption of cellular membranes
2. Dehydration and precipitation of the cellular proteins (protein denaturation)
3. Separation of cellular proteins and other cellular components out of the nucleic acid
4. Precipitation and dissolving the nucleic acid

# Quantify Results

### Qubit

5 samples + 2 standards + 1 error = 8

**DNA Broad Range**

199 µl Buffer x 8 = 1592 µl Buffer
1 µl Reagent x 8 = 8 µl Reagent

**RNA Broad Range**

199 µl Buffer x 8 = 1592 µl Buffer
1 µl Reagent x 8 = 8 µl Reagent

* The first row indicates the DNA qubit results using the DNA broad range standards with black writing on the cap. The standards were very low, therefore I repeated the qubit results with the DNA broad range standards with red writing on the cap.

|                                           |   S1   |    S2    |  23  |  33  |  25  |  49  |  29  |
|-------------------------------------------|--------|----------|------|------|------|------|------|
| DNA (Standard with  black writing on cap) | 104.98 |  9261.30 | 3.18 |  2.8 |  Low |  Low | 5.18 |
|  DNA (Standard with  red writing on cap)  |  162.7 | 21982.36 |  3.9 | 3.08 | 2.18 | 2.08 | 5.38 |
|                    RNA                    | 382.72 | 10541.49 | 15.6 | 12.2 | 13.4 | 11.6 | 25.8 |

### TapeStation

* I did not tape sample 49 because there were the open tape only had 5 spots (4 samples + ladder). I will tape this sample at a future date if necessary

Overall Summary:
![Overall]({{ site.baseurl}}/images/20191203_Overall.png "Overall")

Sample #29:
![Sample#29]({{ site.baseurl}}/images/20191203_Sample29.png "Sample#29")

Sample #33:
![Sample#33]({{ site.baseurl}}/images/20191203_Sample33.png "Sample#33")

Sample #23:
![Sample#29]({{ site.baseurl}}/images/20191203_Sample23.png "Sample#23")

Sample #25:
![Sample#25]({{ site.baseurl}}/images/20191203_Sample25.png "Sample#25")

# Summary of results

* Overall, there were very low concentrations of DNA and RNA, however the quality of the RNA is relatively good for 2 samples (Sample 23 and 29).
* I did not do a heating digestion step according to this modified protocol from E. Strand. *P. astreoides* has lots of mucus, therefore a heating digestion step with the Proteinase K might be necessary

# Next steps

* Tomorrow I will try a heating step with the remainder of the  bead-bashed supernatant to determine if this will increase the yield of DNA and RNA.


text:
# Zwitterion Example - Basic

This is just a basic example of importing different languages into a web application with Zwitterion.

## Development

```bash
cd zwitterion/examples/basic
npm install
npm start
```

## Production

```bash
cd zwitterion/examples/basic
npm install
npm build
```

repository: wszhang/zwitterion

repo_name: wszhang/zwitterion


text:
> [Go to French version](/fr/Règlements/Décrets,%20ordonnances%20et%20règlements%20statutaires/2010/161.md)

# Regulations Prescribing Certain Offences to be Serious Offences

**SOR/2010-161**

Enabling authorities:
- [CRIMINAL CODE](/en/Acts/Revised%20Statutes%20of%20Canada/C/C-46.md)

Date registered: 13 July 2010

----------

Her Excellency the Governor General in Council, on the recommendation of the Minister of Justice, pursuant to subsection 467.1(4)[a] of the [Criminal Code](/en/Acts/Revised%20Statutes%20of%20Canada/C/C-46.md)[b], hereby makes the annexed Regulations Prescribing Certain Offences to be Serious Offences.

a: S.C. 2001, c. 32, s. 27

b: R.S., c. C-46

**1** The following offences under the [Criminal Code](/en/Acts/Revised%20Statutes%20of%20Canada/C/C-46.md) are serious offences that are included in the definition ***serious offence*** in subsection 467.1(1) of that Act:
- **(a)** keeping a common gaming or betting house (subsection 201(1) and paragraph 201(2)(b));
- **(b)** betting, pool-selling and book-making (section 202);
- **(c)** committing offences in relation to lotteries and games of chance (section 206);
- **(d)** cheating while playing a game or in holding the stakes for a game or in betting (section 209); and
- **(e)** keeping a common bawdy-house (subsection 210(1) and paragraph 210(2)(c)).

**2** The following offences under the [Controlled Drugs and Substances Act](/en/Acts/Statutes%20of%20Canada/1996/c.%2019.md) are serious offences that are included in the definition ***serious offence*** in subsection 467.1(1) of the [Criminal Code](/en/Acts/Revised%20Statutes%20of%20Canada/C/C-46.md):
- **(a)** trafficking in any substance included in Schedule IV (paragraph 5(3)(c));
- **(b)** trafficking in any substance included in Schedule II in an amount that does not exceed the amount set out for that substance in Schedule VII (subsection 5(4));
- **(c)** importing or exporting any substance included in Schedule IV or V (paragraph 6(3)(c)); and
- **(d)** producing any substance included in Schedule IV (paragraph 7(2)(d)).

## Coming into Force

**3** These Regulations come into force on the day on which they are registered.

repository: TravisMadill/CanadianLaws

path: /en/Regulations/Statutory Orders and Regulations/2010/161.md

repo_name: TravisMadill/CanadianLaws


text:
*Read this in other languages: [English](README.md), [Português](README.pt_BR.md).*

CSV files with names in the format:

  [_][name][.info].csv

Each file represents a data group

- By convention, names starting with "_" are generated by script.
  (probably not written to the repository)

- [name] name of the data group

- [.info] may be:
  . ".fixed" is ready and is not dynamically generated
  . Any ID of the data version, such as:
    . "v" (or "version") + "999,999" (or "AAAA.MM.DD", or variations)

repository: anselmobd/tuzle

repo_name: anselmobd/tuzle


text:
# FullNavigationDrawer
Full Navigation Drawer example in Native Android

### Things to Note
If you are getting error as "resource not found: @drawable/ic_home", you need to add image assets.
Get image assets from [Material Website](https://material.io/tools/icons).

If you get any other issues, Raise your issues [here](https://github.com/deviltech4/FullNavigationDrawer/issues).

Show some :heart: and :star: the repo.

You can always contribute to the repo by making Pull Request.

### 1. Collaborators

| S.no | Name | Country | Introduction | Contact |
|------|:------|:---------|:--------------|:------------|
| 1. | **Nirav Madariya** :octocat: | India | Microsoft Student Partner - Certified Cloud Solutions Architect (Microsoft Azure)  | [LinkedIn](https://www.linkedin.com/in/niravmadariya) - [GitHub](https://github.com/niravmadariya) |
| 2 | **Devil Tech**  |India| Developer | [GitHub](https://github.com/deviltech4) |

---


text:
# Rails Assets ![Build Status](https://github.com/tenex/rails-assets/actions/workflows/verify.yaml/badge.svg)

> [Bundler](http://bundler.io) to [Bower](http://bower.io) proxy

This README concerns the development aspect of the project. **[Visit
the site](https://rails-assets.org) to learn how to use Rails Assets
in your application.**

## Project Status

[Bower is
depcreated](https://bower.io/blog/2017/how-to-migrate-away-from-bower/)
and new projects should not use it. Because Rails Assets is a proxy
between bower and bundler, it should also not be used in new
projects. Instead, there are [multiple better
solutions](https://world.hey.com/dhh/rails-7-will-have-three-great-answers-to-javascript-in-2021-8d68191b)
which work with modern versions of Rails:

    A default path with Hotwire and import maps, an alternate path
    using a thin integration with one of the popular JavaScript
    bundlers, and finally the strict API path with a separate
    repository for the front-end.

## Development

### Setup

```sh
git clone git@github.com:tenex/rails-assets.git && cd rails-assets
bundle install && npm install
cp config/database{.sample,}.yml
cp config/application{.sample,}.yml
# edit config/database.yml and config/application.yml if necessary.
bin/rake db:setup
foreman start
```

### Headless chrome

`rspec` tests will use `capybara` for tests. Capybara's driver is set
up to use `selenium` with headless Chrome. Therefore, you will need
Chrome and the Chrome Selenium web driver.

``` sh
# get chrome
cat << EOF > /etc/apt/sources.list.d/google-chrome.list
deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main
EOF
wget -O- https://dl.google.com/linux/linux_signing_key.pub |gpg
--dearmor > /etc/apt/trusted.gpg.d/google.gpg
apt update && apt install -y google-chrome-stable
# get appropriate driver
chrome_version="$(google-chrome --version | cut -d ' ' -f3)" # Google Chrome 103.0.5060.53 -> 103.0.5060.53
(wget "https://chromedriver.storage.googleapis.com/${chrome_version}/chromedriver_linux64.zip" &&
 unzip chromedriver_linux64.zip -d /usr/local/bin)
```

### Convert Bower package into Ruby gem using CLI

```sh
bin/rake 'component:convert[jquery,2.0.3]'
```

This will create `rails-assets-NAME-VERSION.gem` file.

You can remove this component by:

```sh
bin/rake 'component:destroy[jquery,2.0.3]'
```

## Gems with a .js in their name

For packages from bower that have a .js in their name like [typeahead.js](https://github.com/twitter/typeahead.js) which can generate a gem with the name rails-assets-typehead.js if You want to use this gem with Rails 4.2 or higher in order for your gem to work in your application.js you have to require it as follow

```
//= require typeahead.js.js
```

instead of

```
//= require typeahead.js
```

## Credits

Maintained by Tenex Developers [@tenex](http://github.com/tenex).

Originally created by [@teamon](http://github.com/teamon), [@porada](http://github.com/porada) and [@sheerun](http://github.com/sheerun), with the help of [contributors](https://github.com/tenex/rails-assets/graphs/contributors). :heart:

Please don’t tweet bugs to us—[report an issue](https://github.com/tenex/rails-assets/issues) instead. :v:

repository: tenex/rails-assets

gha_language: Ruby

repo_name: tenex/rails-assets


text:
![MIT Badge](https://img.shields.io/badge/License-MIT-green)

# Jon Harvey React Portfolio

## Table of Contents
[Description](#description)\
[Motivation](#motivation)\
[User Story](#user-story)\
[Technologies](#technologies)\
[License](#license)\
[Process](#process)\
[Screen Shot](#screen-shot)\
[Links](#links)

## Description

A front-end React application that showcases some of the work I have done.

## Motivation

Demonstrates abilities with React and at the same time providing a platform for a portfolio.

## User Story

```md
AS AN employer looking for candidates with experience building single-page applications
I WANT to view a potential employee's deployed React portfolio of work samples
SO THAT I can assess whether they're a good candidate for an open position
```

## Technologies

* HTML, Bootstrap, & CSS
* JavaScript
* React

## License

[MIT License](https://choosealicense.com/licenses/mit/)

## Process

* I started with copying my previous portfolio code into the React app.  Then I broke the HTML code into react components.
* The biggest challenges for this project was getting use to React, but all in all it was a good experience.
* The successes for this project was breaking down the previous code into components to be used by React in a single page structure.

## Screen Shot

![Screen Shot](./src/assets/images/screen-shot.png)

## Links

Repository: https://github.com/harviator/jon-harvey-react-portfolio \
Deployed: https://harviator.github.io/jon-harvey-react-portfolio/

repository: harviator/jon-harvey-react-portfolio

repo_name: harviator/jon-harvey-react-portfolio


text:
# Leaky Example App

This is an example of a simple leaky Express application for use
during conference talks on debugging, monitoring, and profiling
Node applications.

Feel free to clone/fork/expand/demo/use/whatever this application
as much as you like.

### To Run it

```
~$ git clone https://github.com/jakerella/leaky-example.git
~$ cd leaky-example
~/leaky-example$ npm install
~/leaky-example$ node leaky.js
```

You'll get a message about startup, then a "chart" will appear
showing memory usage over time. By default, this app leaks memory
like crazy! Can you spot the two primary issues?

### LICENSE

This app is under an MIT license. Please see the LICENSE file for info.

repository: jakerella/leaky-example

repo_name: jakerella/leaky-example


text:
---
title: "Bookmarking with org-mode"
last_modified_at: 2020-04-08
comments: true
categories:
  - blog
tags:
  - org-mode
  - emacs
---

I thought about writing a short post on how I tend to capture bookmarks using
org-mode[^org-mode] these days.

## Capture template

I have following org-capture template[^org-capture], defined in my Emacs configuration file
based on the Doom config[^doom],

```elisp
;; Capture template
("l" "Daily Bookmarks" entry
    (file+headline (lambda () (personal-note 'daily)) "Bookmarks")
       "** %(org-cliplink-capture)%?\n" :unnarrowed t)

;; Utility function
(defun personal-note (ntype)
  (cond
    ((string= 'daily ntype) (concat org-directory (format-time-string "/%Y/%B_%-e.org")))
    ((string= 'work ntype) (concat org-directory (format-time-string "/work/%Y/note_%m_%d.org")))
    (t (error "Invalid personal note type: " ntype))))
```

Most important time saver in this capture template is the use of
`org-cliplink-capture` functionality which is provided by the `org-cliplink`[^org-cliplink] package.

I tend to capture bookmarks on daily notes file, as can be seen from the above
template. As an example, notes for today will be captured in a dedicated file
`$ORG_DIR/2020/April_8.org`, where `$ORG_DIR` is the root directory for notes.

With this approach, bookmarks will be scattered on multiple note files. Using
instead the `file+olp+datetree` capture method, one can maintain a single note
dedicated to bookmarks, say `$ORG_DIR/Bookmarks.org`.

I have set `F9` as the org-capture shortcut with following key binding,

  ```elisp
  (global-set-key [f9] 'org-capture)
  ```

Thus, capturing a bookmark link into the notes buffer is just two key presses:
`F9 + l`.

Following is how a sample bookmarked link looks like in my current setup.

![org-mode bookmark example]({{ "/assets/postassets/org-bookmarks/org-bookmark-example.png" | absolute_url }}){: .align-center }

Since bookmarks captured in this method are simply org-mode text nodes, you can
embellish entries in the same way as any other org-mode entry node.

Following are some of the advantages of bookmarking in this manner instead of
using an online service, such as pinboard[^pinboard].

### Contextual information

Bookmarks with org-mode allow you to add context and accompanying notes to a
bookmarking link (as can be seen in above example), which I find very valuable.
Sometimes, I find peripheral things I learn from web resources are even more
important than the links themselves. Org mode bookmarks, as captured via
following template allows me to easily do just that.

I add a bit of a background on things while I bookmark _because_ it is so easy
to do that, with Emacs, being a full fledged text editor. In fact, the capture
template as I've defined above, gets me right into a prompt to add more
details after inserting the link to the Emacs buffer.

### Link tags

Org-mode supports tags[^org-tags] and they are quite powerful. It is pretty easy
to set tags while capturing a new bookmark via Emacs. Tags can be used to filter
bookmarks on based on topics. For example, all bookmarks links with the tag
`agda` can be searched quite easily with org-mode.

### Data ownership

Notes in org-mode is just plain text. Thus bookmark data is portable across
operating systems with almost no risk of getting locked into a proprietary data
format.

### Fast local search

Emacs can filter and find bookamrked links very quickly using tools such as
helm[^helm] or ivy[^ivy]. Also one can classic POSIX tools such as `grep` and
other text processing tools to locate and filter bookmarks.

Going a one step further, one can setup indexed local search for org-mode note
files for even faster and more precise search experience. I have used
recoll[^recoll] on Linux for such a setup in the past.

## Limitations of this approach

Just as the advantages of this bookmarking approach is parallel to the
advantages of using org-mode in general, the disadvantages are pretty much
the same as general limitations of org-mode ecosystem.

- Lack of good mobile support[^org-mobile] - after not finding a good mobile
  org-mode solution, what I tend to do is to capture one off links while
  browsing from phone to a temporary note on Google Keep.
- Separate synchronisation solution - I use Dropbox to sync notes between
  computers. With Emacs and org-mode, syncing is something separate you have to
  think about.
- Lack of sharabilty - online bookmarking tools often provides a way to share
  your bookmarks within the service itself, i.e. without the need to export to a
  different format. But with the method I'm describing here, you cannot easily
  share your bookmarks without exporting only parts of your notes you might want
  to share.

------

I wanted to write more on making a case _for_ using offline bookmarks, but then
I realised that the case for this is same as making a case for why I'm using
org-mode for note taking - and there are many other posts around the internet
making _that_ case. So, in the end I decided to keep the post very short just
describing the capture template which I find very useful.

---------

### Links

[^org-mode]: [Org mode](https://orgmode.org/)

[^doom]: My current Emacs configuration is based on [Doom Emacs](https://github.com/hlissner/doom-emacs). However, the capture
    template is fairly standard and should be portable on recent org-mode
    setups.

[^org-cliplink]: [org-cliplink](https://github.com/rexim/org-cliplink). Note
    that `org-cliplink` does not come packaged with the default Doom
    configuration. You will need to add `org-cliplink` as an additional package.

[^org-tags]: [Tags - org-mode manual](https://orgmode.org/manual/Tags.html)

[^org-capture]: [Capture templates - Org mode manual](https://orgmode.org/manual/Capture-templates.html)

[^pinboard]: [Pinboard - Social bookmarking for Introverts](https://pinboard.in/)

[^org-mobile]: In the past when I looked at using org-mode on the phone, none of
    the apps I tried could handle the large notes repository I had. Things might
    have gotten better in the meantime.

[^helm]: [helm - Emacs incremental completion and selection narrowing framework](https://github.com/emacs-helm/helm)

[^ivy]: [ivy - a generic completion frontend for Emacs](https://github.com/abo-abo/swiper)

[^recoll]: [Recoll is a desktop full-text search tool](https://www.lesbonscomptes.com/recoll/)


text:
# DESBreaker
[![Build Status](https://travis-ci.org/mtenrero/DESBreaker.svg?branch=master)](https://travis-ci.org/mtenrero/DESBreaker)
Native program written in go designed to reveal the encryption key (brute-forcing) of a DES encrypted HEX block given the unencrypted message

## Usage
The program is precompiled for all platforms and OSes. Simply download and run your binary with the following parameters:

`desbreaker -hexKnown="HEXEncryptedValue" -plain="Decrypted value of hexKnown" -force="HEX to Decode"`

You also can print a help message if needed:

`desbreaker -h`

repository: mtenrero/DESBreaker

repo_name: mtenrero/DESBreaker


text:
# Zaszi Web

The codebase for my personal website [zaszi.net](https://zaszi.net/).

## Contribution

Found a problem or have a suggestion? Feel free to open an issue.

## License

Zaszi-web is licensed under the [MIT license](LICENSE).

repository: zaszi/zaszi-web

repo_name: zaszi/zaszi-web


text:
# Yatpd
:swimmer: Yet another tool project for diploma

### Usage
Before starting, try to test the basic functions. Among all the modules, typical parts to test are the three server/proxy implementations:

```shell
$ cd /path/to/project/root/directory

$ PYTHONPATH=. python3 server/static_file.py > log/static.log
$ PYTHONPATH=. python3 server/fastcgi_proxy.py > log/fastcgi.log
$ PYTHONPATH=. python3 server/http_proxy.py > log/http.log
```

Due to the slow connection speed of [httpbin.org](http://httpbin.org/), you may need to use [proxychain](https://github.com/rofl0r/proxychains-ng) to speed up tests of `HTTPProxy`, and possibly an error like `proxychains can't load process` could happen if your terminal uses [dash](https://wiki.ubuntu.com/DashAsBinSh) as the default shell, in this case just specify the shell with `bash -c "python3 file.py"`, full commands are listed below respectively:

```shell
$ PYTHONPATH=. proxychains4 python3 server/http_proxy.py > log/http.log
$ PYTHONPATH=. proxychains4 bash -c "python3 server/http_proxy.py > log/http.log"
```

Finally, you can change configurations in `config/config.yaml`, then start the main server and visit the site to see if everything works well:

```shell
$ PYTHONPATH=. python3 main.py
```

Note that `host:port` pair by default is `localhost:80`, and to bind that kind of "privileged" ports(1-1023) with non-root user, you'll need to set `capability` of python binary, say `/usr/bin/python3`:

```shell
$ sudo setcap 'cap_net_bind_service=+ep' /usr/bin/python3
```

Check logs under `log/` if you would like to, `main.log` will record the complete process of all requests and responses, while `(static|fastcgi|http).log` are the results of previously mentioned tests.

:tada: All the above tests including other modules' tests are now written down as a helper script in `modtests.sh`, which you can directly run and see the results. You may use `tee` to duplicate outputs to a log file and check them later:

```shell
$ ./modtests.sh 2>&1 | tee modtests.log
```

### Dependency
Project's FastCGIProxy module communicates with FastCGI using [`cgi-fcgi`](https://manpages.debian.org/testing/libfcgi-bin/cgi-fcgi.1.en.html), which can be installed by `apt-get install libfcgi0ldbl` on Debian series or `yum --enablerepo=epel install fcgi` on CentOS series.

If you are using `application` as the demo project, following PHP dependencies are required:
- `php-mysql` for database connection
- `php-gd` for captcha image generation
- `php-fpm` for running with FastCGI as Unix Socket

### Notes
The buffer size `readbuf.first` is assumed to be big enough to read the entire HTTP head part, because the program uses the header value to determine whether there is still a left part to receive, and if true, read the rest of them using buffer size `readbuf.left`.

Parameter `fastcgi.upstream` can be configured to a TCP `host:port` pair OR a Unix domain socket file, however, there is an unknown problem using `cgi-fcgi` with Unix domain socket on [WSL](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux) platform: The process executed with large input from stdin by pipe terminates with exit code `11` and output no content, while an input size that is a little larger than 65536 still being handled normally. So if there is any need to upload large files AND the project is deployed on WSL, use TCP instead of Unix domain socket as FastCGI upstream.

### Annex
In addition, there are Timer module and Worker module to try, which are written for the purpose of learning, and to be reminded, the latter one is not stable.

Files of Timer module are all located under the directory `timer`, implemented with K-ary Heap or [Red-Black Tree](https://github.com/stanislavkozlovski/Red-Black-Tree) as the data structure. Code of Worker module is in `worker` directory, the design is inspired By [Gunicorn](https://github.com/benoitc/gunicorn)'s [Arbiter](https://github.com/benoitc/gunicorn/blob/master/gunicorn/arbiter.py) and the implementation is not guaranteed to work as expected if you send signals too fast, in which case you should be aware of the zombie processes left.

### Changelog
See :bookmark:[Releases](https://github.com/KingsleyXie/Yatpd/releases)

repository: KingsleyXie/Yatpd

repo_name: KingsleyXie/Yatpd


text:
# Clickbait challenge #
Project is partly reproducing a [paper](https://arxiv.org/pdf/1710.06699.pdf) and also extending with a lot of new features.
Originally project aims to detect clickbait phrases and was mostly motivated by [Clickbait Challenge](https://www.clickbait-challenge.org/)

## Structure of the modules ##
### data_reading ###
**data_reading** contains how data is read from file provided from challenge page, preprocessing related content and also an example how to read data from file after feature extraction

### feature_extraction ###
**feature_extraction** module contains code for extracting features. It is divided into few services:

| Service                    | Purpose                                                                     |
|----------------------------|-----------------------------------------------------------------------------|
| article_service            | extracts data from structure of article e.g. number of paragraphs           |
| behaviour_service          | extracts data like retweets or hashtags                                     |
| clickbait_words_service    | check if data contain clickbait specific phrases                            |
| common_words_service       | extracts data overlapping between keywords and each section of article/post |
| cosine_similarity_service  | calculates cosine similarity between each parts of the post/article         |
| dependencies_service       | calculates different number of POS per each part of article/post            |
| formality_service          | looks for formal and informal word in article and post                      |
| image_service              | extracts features from image                                                |
| ngrams_service             | extracts all ngram related features                                         |
| patternPOS_service         | looks for patterns in POS                                                   |
| readability_service        | calculates readability features                                             |
| sentiment_analysis_service | extracts all sentiment related features                                     |
| slang_service              | checks for occurrence of clickbait specific phrases                         |
| time_service               | extracts features about time of posting the article                         |
| word_service               | extracts features related to words and characters                           |

### feature_selection ###
This module contains code for selecting best features (by name), calculating the
statistics and creation of the ranking. In addition this module also contains selected features for 78, 79, 81 and 246 features (both data and labels of the features selected).
Code in this module also ranks the features according to their usefulness to improve regression and classification problem.

### figures ###
This module contains some figures related to the performance of each Machine Learning algorithm.

### ml ###
**ml** module contains all classification/regression code, mostly scripts performing tests on data. We can distinguish following packages related to certain algorithms:

| Package           | Purpose                                                   |
|-------------------|-----------------------------------------------------------|
| AdaBoost          | code related to regression using AdaBoost                 |
| GTBoost           | code related to regression using GTBoost                  |
| linear_regression | code related to regression using simple linear regression |
| random_forest     | code related to regression using random forest            |
| ridge_regression  | code related to regression using Ridge                    |
| svr               | code related to regression using SVM                      |
| utils             | module containing helper functions used among ml module   |

## Instalation related info ##
Dependencies:
```python3
pip3 install numpy nltk pytesseract pickle sklearn xgboost textstat
```
Also might need to install tesseract.
```
brew install tesseract
```
For POS extraction it is crucial to have [POS taggers](https://nlp.stanford.edu/software/tagger.shtml) and [NER taggers](https://nlp.stanford.edu/software/CRF-NER.html) from Stanford at project root.

For sentiment analysis it is crucial to have Stanford's Core NLP server running in the background on port 9000.
 Instructions how to run and download can be found [here](https://stackoverflow.com/questions/32879532/stanford-nlp-for-python?fbclid=IwAR2rECAGbOzMyez-Q6DcbqRbNr1ZZfK0jklHa9joU9PTzA6Uwpi6ocRQphM).
 Without server running features will not be extracted.


text:
# Backend namex/api setup

1. Follow instructions from https://github.com/bcgov/namex/blob/master/docs/developer.md first

2. Install PyCharm
	- download JetBrains Toolbox
	- create acount (if student create free account, otherwise start 30 day free trail)
	- open JetBrains Toolbox and install PyCharm

3. Open new project in PyCharm
	- open PyCharm
	- File > New Project (select api folder from within your local namex)

4. Set project interpreter/venv in PyCharm
	- File > default settings > Project Interpreter
		```
		- press wheel beside project interpreter drop down field > add
		- select location as new empty folder within api (name folder venv)
		- select base interpreter as python 3.6
		- press okay
		```

5. Install requirments in "requirements.txt"
	- a banner should have appeared in your project window after setting up your venv asking you to install these
	- click install

6. Create postgres database named "namex"

7. Get .env file from developer
	```
	- change username/password to your username/password in postgres
	- place .env in api folder (make sure it is named ".env")
	```

8. Get "client_secrets.dev.json" file from developer
	- place in "client_secrets" folder

9. Run wsgi in PyCharm
	- select wsgi.py
	- select wsgi dropdown at top righthand corner of window > edit configurations
	- select '+' at top left corner > Flask Server
		```
		- name configuration
		- select script path
		- target = path to wsgi
		- Python Interpreter = Python 3.6 (venv)
		```

10. Create database tables
	- open terminal in PyCharm (view > tool widndows > terminal)
		```sh
		python manage.py db upgrade
		```
	- list tables in postgres namex database (make sure tables were created)

11. Run api
	- open terminal in PyCharm
		```sh
		source .env (not needed if direnv working)
		python config.py
		flask run
		```

repository: VarekBoettcher/namex

repo_name: VarekBoettcher/namex


text:
# Gemfiler

Gemfiler will take your Gemfile and make it nice. It will alphabetize and group everything correctly. It can also turn hash syntax into Ruby's 1.9 hash syntax, and align versions / options nicely.

## Installation

```gem install gemfiler```

## Usage

Once you've installed gemfiler, you'll get the ```gemfiler``` executable.

  * cd into the project with the gemfile you'd like to prettify.
  * type ```gemfiler file``` (If you'd like to specify a Gemfile, type ```gemfiler file OtherGemfile```)
  * Voila!

To see a list of options, type ```gemfiler help file```

## Additional Options

```gemfiler file --ruby19_hashes``` Will use the 1.9 hash syntax

```gemfiler file --nice_spaces``` Will align all versions / options

## Before / After

### Before

```ruby
source 'http://rubygems.org'

gem 'state_machine'
gem 'validates_timeliness', '~> 3.0.2'
gem 'gmaps4rails'
gem 'chronic'
gem 'paper_trail'
gem 'no_peeping_toms', :git => 'git://github.com/patmaddox/no-peeping-toms.git'
gem "tire", :git => 'git@github.com:bobbytables/tire.git', :ref => '543f4b410f6c7b4ce62b4b866fb45a2339642b16'
gem 'draper', '~> 0.9'

```

### After

```ruby
source :rubygems

gem 'chronic'
gem 'draper',               '~> 0.9'
gem 'gmaps4rails'
gem 'no_peeping_toms',      git: 'git://github.com/patmaddox/no-peeping-toms.git'
gem 'paper_trail'
gem 'state_machine'
gem 'tire',                 git: 'git@github.com:bobbytables/tire.git', ref: '543f4b410f6c7b4ce62b4b866fb45a2339642b16'
gem 'validates_timeliness', '~> 3.0.2'

```

## Gotchas
  Gemfiler works by acting like Bundler, it executes the Gemfile under a shim, and passes all of the gems as objects around Gemfiler.

  * Comments go away (Working on this)
  * Statements will go away, if you have any if statements, or anything other than bundler commands, it will either fail or remove the statement.

## Contributing

1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Added some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request

repository: bobbytables/gemfiler

repo_name: bobbytables/gemfiler


text:
### [CVE-2022-22600](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22600)
![](https://img.shields.io/static/v1?label=Product&message=iOS%20and%20iPadOS&color=blue)
![](https://img.shields.io/static/v1?label=Product&message=macOS&color=blue)
![](https://img.shields.io/static/v1?label=Product&message=tvOS&color=blue)
![](https://img.shields.io/static/v1?label=Product&message=watchOS&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=%3C%2012.3%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Version&message=%3C%2015.4%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Version&message=%3C%208.5%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Vulnerability&message=A%20malicious%20application%20may%20be%20able%20to%20bypass%20certain%20Privacy%20preferences&color=brighgreen)

### Description

The issue was addressed with improved permissions logic. This issue is fixed in tvOS 15.4, iOS 15.4 and iPadOS 15.4, macOS Monterey 12.3, watchOS 8.5. A malicious application may be able to bypass certain Privacy preferences.

### POC

#### Reference
No PoCs from references.

#### Github
- https://github.com/ARPSyndicate/cvemon
- https://github.com/KlinKlinKlin/MSF-screenrecord-on-MacOS
- https://github.com/SYRTI/POC_to_review
- https://github.com/WhooAmii/POC_to_review
- https://github.com/acheong08/MSF-screenrecord-on-MacOS
- https://github.com/manas3c/CVE-POC
- https://github.com/nomi-sec/PoC-in-GitHub
- https://github.com/soosmile/POC
- https://github.com/trhacknon/Pocingit

repository: trickest/cve

repo_name: trickest/cve


text:
Chefup
======

!! This is a ~fork of janne's awesome work https://github.com/mynewsdesk/chefup for my private use !!
Not a real fork since the changes are (to be) bigger and quite far from the original project

Changes in this fork
-------------
start.sh install ruby and homebrew, some recipes that janne used are removed and some are removed

Prerequisites
-------------
* Install the lastest OS X
* Install XCode from App Store

Setup
-----

Fetch this repo

    git clone https://github.com/n1koo/chef-magic-for-osx.git

or

    curl -L https://github.com/n1koo/chef-magic-for-osx/tarball|tar xz

And run chefup:

    cd ~/chef-magic-for-osx && bin/start.sh


text:
# Icon Component

## Usage

```js
import Icon from '/components/common/Lab/Icon';
```

## Properties
- *`{icon}`* - String that asserts which icon will render.
- *`{size}`* - Size of icon.
- *`{color}`* - Color of icon.
- *`{spin}`* - Flag that asserts if icon spin or not.

| propName      | propType | isRequired   | defaultValue |
|---------------|----------|--------------|--------------|
| icon          | string   | yes          |              |
| size          | number   | no           | 20           |
| color         | string   | no           | #000         |
| spin          | boolean  | no           | false        |

## Icon

*This is the doDOC Icon gallery.*
- List of the available icons.
> This list is particular because all the icons are directly embedded in the code (no need for HTTP requests). That means they will load faster and in a more reliable fashion.
The icons can be rendered through the <Icon /> common component.

### Example
```js
import Icon from '/components/common/Lab/Icon';

<Icon
  icon="heart"
  size={20}
  color="black"
  spin={false}
/>
```

repository: jcmnunes/mcteixeira

repo_name: jcmnunes/mcteixeira


text:
---
layout: page
title: Correctness
---

## Over-specifying function arguments

Annotating function arguments with types can prevent the function being called with the wrong arguments, as well as making the intent of the function clear. However, contrary to some people's beliefs, it does not lead to improved performance because Julia compiles a new version of the function for each combination of input types. A common mistake is to over-specify the type of an argument when actually a less strict abstract type is more appropriate.

### Anti-pattern

{% highlight julia %}
myfunction(x::Int64, y::Int64) = 2*x + y
{% endhighlight %}

### Best practice

If you want the function to only work on integers, use the abstract container type `Integer`:

{% highlight julia %}
myfunction(x::Integer, y::Integer) = 2*x + y
{% endhighlight %}

However this function could work on any real number:

{% highlight julia %}
myfunction(x::Real, y::Real) = 2*x + y
{% endhighlight %}

In fact, it can work on any `x` and `y` where `*` and `+` are defined, so the following might also be appropriate:

{% highlight julia %}
myfunction(x, y) = 2*x + y
{% endhighlight %}


text:
#Rainbow

##A plugin for the Rising World server.

###Description

Rainbow is a plugin that allows you to send text in a rainbow format to the rest of the server.

It has a single command, /rainbow.

```
USAGE: /rainbow <message>
```

###Installation

Place the folder for the plugin in the scripts folder of your server. The scripts folder should be at
the same level as your start script.


text:
# JCDownloader
A useful iOS downloader framework based on [AFNetworking](https://github.com/AFNetworking/AFNetworking).

## Features
This framework supports the development of iOS 7.0+ in ARC.

* Single file download start/pause/remove operation and so on.
* File list downloads with groupId.
* Breakpoint downloading supported.

### Single file download
```objective-c
JCDownloadItem *downloadItem = [[JCDownloadItem alloc] init];
downloadItem.downloadUrl = @"download url";
downloadItem.downloadFilePath = @"download file path";
self.operation = [JCDownloadOperation operationWithItem:downloadItem];
[self.operation startWithProgressBlock:^(NSProgress *progress) {
    //update progress
} completionBlock:^(NSURL *filePath, NSError *error) {
    //download operation completion, do something
}];
```

```objective-c
[self.operation resetProgressBlock:^(NSProgress *progress) {
    //update progress
} completionBlock:^(NSURL *filePath, NSError *error) {
    //download operation completion, do something
}];
```

```objective-c
[self.operation pauseDownload];
```

```objective-c
[self.operation removeDownload];
```

### File list downloads

```objective-c
extern NSString *const JCTImageDownloadGroupId;
```

```objective-c
NSMutableArray *downloadList = [NSMutableArray array];
for (NSInteger index = 0; index < [self urlList].count; index++) {
    JCTImageDownloadItem *item = [[JCTImageDownloadItem alloc] init];
    item.groupId = JCTImageDownloadGroupId;
    item.downloadUrl = [self urlList][index];
    item.downloadFilePath = [JCDownloadUtilities filePathWithFileName:[item.downloadUrl lastPathComponent] folderName:@"downloadImages"];
    JCDownloadOperation *operation = [JCDownloadOperation operationWithItem:item];
    [downloadList addObject:operation];
}
[[JCDownloadQueue sharedQueue] startDownloadList:downloadList];
```

```objective-c
[[JCDownloadQueue sharedQueue] startDownloadsWithGroupId:JCTImageDownloadGroupId];
```

```objective-c
[[JCDownloadQueue sharedQueue] pauseDownloadsWithGroupId:JCTImageDownloadGroupId];
```

```objective-c
[[JCDownloadQueue sharedQueue] removeDownloadsWithGroupId:JCTImageDownloadGroupId];
```

### Downloads notifications
```objective-c
FOUNDATION_EXPORT NSString *const JCDownloadIdKey; ///< download identifier key in notifications userInfo, instance type of the value is NSString.
```

```objective-c
FOUNDATION_EXPORT NSString *const JCDownloadProgressNotification; ///< notification of download progress.
FOUNDATION_EXPORT NSString *const JCDownloadProgressKey; ///< download progress key in JCDownloadProgressNotification userInfo, instance type of the value is NSProgress.
```

```objective-c
FOUNDATION_EXPORT NSString *const JCDownloadCompletionNotification; ///< notification of download completion.
FOUNDATION_EXPORT NSString *const JCDownloadCompletionFilePathKey; ///< download completion file path key in JCDownloadCompletionNotification userInfo, instance type of the value is NSURL.
FOUNDATION_EXPORT NSString *const JCDownloadCompletionErrorKey; ///< download completion error key in JCDownloadCompletionNotification userInfo, instance type of the value is NSError.
```

## CocoaPods
To integrate JCDownloader into your iOS project, specify it in your Podfile:

	pod 'JCDownloader'

##Contacts
If you have any questions or suggestions about the framework, please E-mail to contact me.

Author: [Joych](https://github.com/imjoych)
E-mail<EMAIL_ADDRESS>
## License
JCDownloader is released under the [MIT License](https://github.com/imjoych/JCDownloader/blob/master/LICENSE).

repository: imjoych/JCDownloader

repo_name: imjoych/JCDownloader


text:
# Função Afim
### A program that makes first degree functions and calcs the function passed by the user
![Screenshot 2020-06-11 14 39 09](https://user-images.githubusercontent.com/62625567/84421286-b75cc600-abf1-11ea-8f0b-8985622fe28d.png)
![Screenshot 2020-06-11 15 07 49](https://user-images.githubusercontent.com/62625567/84424236-2b996880-abf6-11ea-90d5-0350e5071b0a.png)
<br>
This program creates a function that works similar to the graphic above.

### Why I developed this?
During this first year of high school, I am studying First Degree Functions. I think that developing a program like this could really helps me to think how these calculates I'm doing are made and how they work together.

### Requirements:
* To run this project on your computer,you need the JDK SE. This project is developed in JDK SE 14.0.1, which you can download on this link - [SEJDK14.0.1](https://www.oracle.com/java/technologies/javase-jdk14-downloads.html).
* You need to import this **Eclipse** project on your workspace.

repository: GustavoMartinsSantos/FuncaoAfim

repo_name: GustavoMartinsSantos/FuncaoAfim


text:
# Change Log

All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## 1.3.3 (2022-02-16)

### Bug Fixes

* gha release job npm publish token ([ce7aacd](https://github.com/telus/tds-core/commit/ce7aacdd77e54c4f8e48eb31d0c05dc804530324))

## 1.3.2 (2022-02-15)

### Bug Fixes

* gha release job git config ([276ebb6](https://github.com/telus/tds-core/commit/276ebb6968a0b56c9b87c178f6895a60ae108e71))

## 1.3.1 (2022-02-15)

### Bug Fixes

* gha release job git config ([1ab603d](https://github.com/telus/tds-core/commit/1ab603d68c36219b0711fc353bc2515b64712ca9))

# [1.3.0](https://github.com/telus/tds-core/compare/@tds/shared-hocs@1.2.0<EMAIL_ADDRESS>(2021-09-21)

### Features

* **core-hocs:** add react 17 to peer deps ([2c45c6a](https://github.com/telus/tds-core/commit/2c45c6a0a728eeef2b3cdb8be0455f2fc6753706))

# [1.2.0](https://github.com/telus/tds-core/compare/@tds/shared-hocs@1.1.0<EMAIL_ADDRESS>(2019-09-18)

### Features

* **shared-hocs:** add withForwardedRef hoc ([03aa563](https://github.com/telus/tds-core/commit/03aa563))

# [1.1.0](https://github.com/telus/tds-core/compare/@tds/shared-hocs@1.0.0<EMAIL_ADDRESS>(2019-07-24)

### Features

* **shared-hocs:** adding aria attr. support - setting focus on render ([4929e6e](https://github.com/telus/tds-core/commit/4929e6e))

# 1.0.0 (2019-06-04)

### Features

- **shared-hocs:** move hocs to new package ([b2e5ddc](https://github.com/telus/tds-core/commit/b2e5ddc))

repository: telus/tds-core

repo_name: telus/tds-core


text:
# cocoadocs-api
This is more of an API _for_ CocoaDocs than the other way around.

### What is this?

The CocoaDocs API is a conduit between CocoaDocs the hosted Mac-Mini that generates a lot of the metadata around a CocoaPod release, and CocoaPods Trunk.

Within that scope has three major roles:

* Take CocoaDocs data and move it into the trunk database ( thereby making it available as an API)
* Perform the CocoaPods Quality Indexes with the data sent from CocoaDocs.
* Tweet out awesome Pods, via @CremeDeLaPods

It uses token based authentication with the CocoaDocs server to ensure anyone can't submit their own data..

It has three API routes:

* `get '/''` -> Says Hello, so you know all is good.
* `post '/pods/:name'` -> Submits JSON data + token from CocoaDocs for parsing and moving into the db.
* `get '/pods/:name/stats'` -> Returns a JSON array of the QIs that apply to a Pod. This is so we can build user interfaces like the one seen on CocoaPods.org.

As QIs are changed, they can be updated by `rake update_all_qis`.

repository: lachlanbell/cocoadocs-api

repo_name: lachlanbell/cocoadocs-api