text:
# Welcome to the Butterfree Docs!

The main idea is for this repository to be a set of tools for easing [ETLs](https://en.wikipedia.org/wiki/Extract,_transform,_load). The idea is using Butterfree to upload data to a Feature Store, so data can be provided to your machine learning algorithms.

## Table of Contents
- [What is going on here?](#what-is-going-on-here)
- [Service Architecture](#services-architecture)
- [Extract](#extract)
- [Transform](#transform)
- [Load](#load)
- [Streaming](#streaming)
- [Setup Configuration](#setup-configuration)
- [Command-line Interface](#command-line-interface)

## What is going on here

Besides introducing Butterfree itself, it's necessary to define some concepts that will be presented throughout this Docs.

The feature store is where features for machine learning models and pipelines are stored. A feature is an individual property or characteristic of a data-sample, such as the height of a person, the area of a house or an aggregated feature as the average prices of houses seen by a user within the last day. A feature set can be thought of as a set of features. Finally, an entity is a unity representation of a specific business context.

This repository holds all scripts that will extract data from necessary sources (S3 and Kafka, for instance), transform all of this raw data into feature sets and, finally, upload these results in a feature store.

Scripts use Python and [Apache's Spark](https://spark.apache.org/).

It's important to highlight that a feature store incurs some challenging concerns, such as:
* Dealing with big volumes of data;
* Retroactively computing new features;
* Loading historical and online data for consumption;
* Keeping it simple to add new features and functionality;
* Making it easy to share code.

## Service Architecture

Regarding this architecture, some requisites can be emphasized, for instance:
* We currently support [Amazon S3](https://aws.amazon.com/s3/) and [Apache Kafka](https://kafka.apache.org/) as data sources;
* A hive metastore is required within your Spark session;
* An [Apache Cassandra](https://cassandra.apache.org/) database should be up and running.

![](https://i.imgur.com/Nu3Dwet.png)

Some important core concepts regarding this service are features, feature sets and entities, discussed previously. Besides, it's possible to draw attention to other two major ideas:
* Historical Feature Store: all features are calculated over time and stored at S3;
* Online Feature Store: hot/latest data stored at a low latency data storage, such as Apache Cassandra.

## Extract

Basically, the extract step is performed with a ```Source``` object, by defining the desired data sources. You can learn more about it in the [Extract Session](extract.md).

## Transform

The transform step is defined within a ```FeatureSet```, by explicitly defining the desired transformations. More information about the transformations can be found at the [Transform Session](transform.md).

## Load

It's the last step of the ETL process, and it's defined by a ```Sink``` object. Please, refer to the [Sink Session](load.md) to know more.

## Streaming

We also support streaming pipelines in Butterfree. More information is available at the [Streaming Session](stream.md).

## Setup Configuration

Some configurations are needed to run your ETL pipelines. Detailed information is provided at the [Configuration Section](configuration.md)

## Command-line Interface

Butterfree has its own command-line interface, to manage your feature sets. Detailed information
provided by the [Command-line Interface](cli.md) section.

repository: jdvala/butterfree

branch_name: refs/heads/staging

repo_name: jdvala/butterfree


text:
# Gingabulous Syntax Theme for Atom

My personal custom syntax theme for Atom.

I plan on doing a major overhaul of this theme, however, the focus first and foremost is
the scope variables structure.

## Examples

### JavaScript

![js example 1][js_ex1]

### SCSS

![scss example 1][scss_ex1]
![scss example 2][scss_ex2]
![scss example 3][scss_ex3]

### HTML

![html example 1][html_ex1]

### Pug _w/ Front Matter support via [a pug grammar extension package](https://github.com/joeyred/language-fm-pug)_

![pug example 1][pug_ex1]

## Currently Supports

- JavaScript ES5/ES6
- JSON
- YAML
- React
- Vue
- php
- CSS
- LESS
- SCSS
- HTML
- Liquid
- Pug
- Markdown
- And more... probably...

[js_ex1]: https://raw.githubusercontent.com/joeyred/gingabulous-syntax/master/screenshots/screenshot_js_ex1.png "JavaScript - Example 1"
[scss_ex1]: https://raw.githubusercontent.com/joeyred/gingabulous-syntax/master/screenshots/screenshot_scss_ex1.png "SCSS - Example 1"
[scss_ex2]: https://raw.githubusercontent.com/joeyred/gingabulous-syntax/master/screenshots/screenshot_scss_ex2.png "SCSS - Example 2"
[scss_ex3]: https://raw.githubusercontent.com/joeyred/gingabulous-syntax/master/screenshots/screenshot_scss_ex3.png "SCSS - Example 3"
[html_ex1]: https://raw.githubusercontent.com/joeyred/gingabulous-syntax/master/screenshots/screenshot_html_ex1.png "HTML - Example 1"
[pug_ex1]: https://raw.githubusercontent.com/joeyred/gingabulous-syntax/master/screenshots/screenshot_pug_ex1.png "Pug - Example 1"

license: MIT

repository: joeyred/gingabulous-syntax

branch_name: refs/heads/master

extension: md

gha_language: CSS

gha_license_id: MIT

license_type: permissive

repo_name: joeyred/gingabulous-syntax


text:
# appveyor-postman

This repository contains a [Postman](https://www.getpostman.com/) collection and environment file that can be used to exercise the [AppVeyor API](https://www.appveyor.com/docs/api/).

## Video

A short video explaining what this is, and how to use it can be found here:

[![Introduction to the AppVeyor Postman Collection](https://img.youtube.com/vi/U8mVjJxt_ts/0.jpg)](https://www.youtube.com/watch?v=U8mVjJxt_ts)

## Getting Started by importing from Link

1. Open Postman
1. Click Import
1. Click Import From Link
1. Paste the following Link `https://raw.githubusercontent.com/gep13/appveyor-postman/master/AppVeyor.postman_collection.json`
1. Click Import
1. Click the `Environment Options` gear at the top right hand corner of Postman
1. Click `Manage Environments`
1. Click `Add`
1. Add a key for each of the following:

    * _accountName_
      * The name of the account that hosts the AppVeyor project you want to work with
    * _projectSlug_
      * The identifier for the AppVeyor project you want to work with
    * _authenticationToken_
      * The API Token of the user that you want to use to access the API.  Log into `ci.appveyor.com` and then select the drop down list at the top right hand corner and click `API Token`.
    * _recordsPerPage_
      * The number of records to return in historical queries

1. Click Add
1. Close the `Manage Environments` window
1. In the collections list on the left hand side, expand `AppVeyor` then `Projects and Builds`
1. Double click on `Get Projects` request
1. In the Environments drop down list at the top right hand corner of Postman, select the Environment that you named earlier
1. Click send
1. If everything has worked, you should get a list of projects for the account associated with the API Token that you used

## Getting Started by cloning Repository
To get started with this collection and test that everything is working, after cloning this repository, follow these steps:

1. Open Postman
1. Click Import
1. Click Choose Files
1. Browse to the location where you cloned the repository to
1. Select the `AppVeyor.postman_collection.json` file and click `Open`
1. Click the `Environment Options` gear at the top right hand corner of Postman
1. Click `Manage Environments`
1. Click Import
1. Click Choose Files
1. Browse to the location where you cloned the repository to
1. Select the `AppVeyor Empty.postman_environment.json` file and click `Open`
1. Click the newly imported Environment
1. Edit the name of the Environment as required (for example, to the name of the AppVeyor project you want to work on)
1. Fill in the required information:

    * _accountName_
      * The name of the account that hosts the AppVeyor project you want to work with
    * _projectSlug_
      * The identifier for the AppVeyor project you want to work with
    * _authenticationToken_
      * The API Token of the user that you want to use to access the API.  Log into `ci.appveyor.com` and then select the drop down list at the top right hand corner and click `API Token`.
    * _recordsPerPage_
      * The number of records to return in historical queries

1. Click Update
1. Close the `Manage Environments` window
1. In the collections list on the left hand side, expand `AppVeyor` then `Projects and Builds`
1. Double click on `Get Projects` request
1. In the Environments drop down list at the top right hand corner of Postman, select the Environment that you named earlier
1. Click send
1. If everything has worked, you should get a list of projects for the account associated with the API Token that you used

Feel free to try out the other requests that are included within this collection.

repository: kirychenkav/appveyor-postman

repo_name: kirychenkav/appveyor-postman


text:
# Release Notes for Azure Web Apps extension for Application Insights.

The following contains the releases notes for Azure Web Apps Extension for runtime instrumentation with Application Insights.
This is only applicable for pre-installed extensions.

[Learn](https://docs.microsoft.com/azure/azure-monitor/app/azure-web-apps)
more about Azure Web App Extension for Application Insights

## FAQS

*How to find which version of extension I am currently on:*

Please navigate to: https://websitename.scm.azurewebsites.net/applicationinsights to find the exact version of the pre-installed
extension.

*What if I am using private extensions*?

Please uninstall private site extension since it is no longer supported.

## Release Notes

### 2.8.33
  - .net, .netcore, Java & NodeJS agents and the Windows Extension: support for Sovereign Clouds. Connections strings can be used to send data to sovereign clouds.

### 2.8.31
- asnetcore agent: Fixed issue related to updated Application Insigths SDK's one of the references (see known issues for 2.8.26). If `System.Diagnostics.DiagnosticSource.dll` of incorrect version is already loaded by runtime, the codeless now will not crash the application and will simply back-off. For customers who was affected by that issue it is advised to remove the `System.Diagnostics.DiagnosticSource.dll` from their bin folder OR use older version of the extension by setting "ApplicationInsightsAgent_EXTENSIONVERSION=2.8.24", otherwise - the application monitoring will not be enabled.

### 2.8.26
- aspnetcore agent: Fixed issue related to updated Application Insights SDK - the agent will not try to load `AiHostingStartup` if the ApplicationInsights.dll is already present in bin folder. This resolves issues related to reflection via Assembly\<AiHostingStartup\>.GetTypes().
- Known issues: exception `System.IO.FileLoadException: Could not load file or assembly 'System.Diagnostics.DiagnosticSource, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'` could be thrown if another verison of `DiagnosticSource` dll is loaded. This could happen for example if `System.Diagnostics.DiagnosticSource.dll` is present in the publish folder. As mitigation, use previous version of extension by setting app settings in app services: ApplicationInsightsAgent_EXTENSIONVERSION=2.8.24. Application Insights team is investigating if this scenario can be supported with future versions of ApplicationInsights SDK and agent.

### 2.8.24
- repackaged version of 2.8.21

### 2.8.23
- Added aspnetcore 3.0 codeless monitoring support.
- Updated Asp.Net Core SDK to [2.8.0](https://github.com/microsoft/ApplicationInsights-aspnetcore/releases/tag/2.8.0) for runtimes 2.1, 2.2 and 3.0. Apps targetting .Net Core 2.0 will continue to use 2.1.1 of the SDK.
- Java and NodeJS codeless monitoring on App Services windows private preview bits.

### 2.8.21
- private preview for Java and nodeJS APM agents for AppSvcs Windows.

### 2.8.14
- Update Asp.Net Core SDK version from 2.3.0 to the latest (2.6.1) for Apps targetting .Net Core 2.1, 2.2. Apps targetting .Net Core 2.0 will continue to use 2.1.1 of the SDK.

### 2.8.12

- Support for Asp.Net Core 2.2 Apps.
- Fixed a bug in Asp.Net Core extension causing injection of SDK even when application is already instrumented with SDK. For 2.1 and 2.2 apps, mere presence of ApplicationInsights.dll in application folder will now cause extension to backoff.
For 2.0 apps, extension backs off only if ApplicationInsights is enabled with .UseApplicationInsights() call.

- Permanent fix for incomplete HTML Response for Asp.Net Core Apps. This fix is now extended to work for .Net Core 2.2 Apps.

- Added support to turn off Javascript injection for Asp.Net Core Apps. (APPINSIGHTS_JAVASCRIPT_ENABLED=false appsetting)
For asp.net core, the JavaScript Injection is "Opt-Out" mode i.e unless explicitly turned off, this will be enabled. (This is done to retain current behavior)

- Fix Asp.Net Core extension bug which caused injection even if ikey was not present.
- Fix a bug in SDK version prefix logic which caused incorrect SDK version in telemetry.

- Added SDK version prefix for Asp.Net Core apps to identify how telemetry was collected.
- Fixed SCM- ApplicationInsights page to correctly show the version of pre-installed extension version.

### 2.8.10
- Fix for incomplete HTML response for Asp.Net Core apps.


text:
---
layout: post
title: 3. Longest substring without Repeating characters
subtitle: Difficulty - Medium
category: LeetCode
tags: [algorithm, c function, medium]
permalink: /2016/11/02/3_Longest_Substring_Without_Repeating_characters/
bigimg:
  - "/img/Image/BigImages/marian_beach_in_sanfran.jpg" : "MRINA of San Francisco, CA (2016)"
---

# [3. Longest substring without repeating characters](https://leetcode.com/problems/longest-substring-without-repeating-characters/)

Given a string, find the length of the longest substring without repeaing characaters.

  - Example

     - Given **"abcabcbb"**, the answer is **"abc"**, which the length is 3.

     - Given **"bbbbb"**, the answer is **"b"**, with the length of 1.

     - Given **"pwwkew"**, the answer is **"wke"**, with the length of 3. Note that the answer must be a substring,

     **"pwke"** is a subsequence and not a substring.

```c
int lengthOfLongestSubstring(char* s) {

}
```

# My solution

## 1. Brute force - with hash

  - First of all, I use the  of for statement. First is just for length of substring. Second is just for index of the original string, Third is for checking if there is the same thing in substring. (pre-requisit is just english and lony lowercase).
   * but, this problem include the special charaters. So you consider range of ASCII code

```c
// a b c d e f g h i  j  k  l  m  n  o  p  q  r  s  t  u  v  w  x  y  z
// 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
int lengthOfLongestSubstring(char* s) {
   int i =0, j=0, k=0;
   char alphabets[128];
   int flag = 0;

   // the length of substring
   for ( i = 0 ; i < strlen(s) ; i++) {
      // for original string's index
      for ( j = 0 ; j < strlen(s) ; j++) {
           int tag=0;
           // not over the whole string.
           if (j + i >= strlen(s))
                break;

           // for initializaion of temp array
           memset(alphabets, 0, sizeof(alphabets));

           for (k = j ; k < j+i+1 ; k++) {
              int index = (s[k])%128;

              if ( alphabets[index] == 0 )
                    alphabets[index] = 1;
              else{
                  tag = 1;
                  break;
              }
           }

           if ( tag == 0 ) {
              flag = i+1;
           }
      }
   }
   return flag;
}
```

After testing with the above code. the result is Time Limit Exceeded.

## 2. brute force with reverse order + hash

  - the point of the above problem is for the longest charaters. so I will try this function with reverse order

```c
// a b c d e f g h i  j  k  l  m  n  o  p  q  r  s  t  u  v  w  x  y  z
// 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
int lengthOfLongestSubstring(char* s) {
   int i =0, j=0, k=0;
   char alphabets[128];
   int flag = 0;

   // the length of substring
   for ( i = strlen(s) ; i > 0 ; i--) {
      // for original string's index
      for ( j = 0 ; j < strlen(s) ; j++) {
           int tag=0;
           // not over the whole string.
           if (j + i > strlen(s))
                break;

           // for initializaion of temp array
           memset(alphabets, 0, sizeof(alphabets));

           for (k = j ; k < j+i ; k++) {
              int index = (s[k])%128;

              if ( alphabets[index] == 0 )
                    alphabets[index] = 1;
              else{
                  tag = 1;
                  break;
              }
           }

           if ( tag == 0 ) {
              flag = i;
              return flag;
           }
      }
   }
   return flag;
}
```

In this case, Time Limit exceeded.

# Another way

  I think sliding is best way, this means just from where substring is wrong, just restart !!

  For example,

  -> a b c a b c b b

  -> a b c **a**

  -> then You have to check if location of **a** is in in a b c.

```c
// a b c d e f g h i  j  k  l  m  n  o  p  q  r  s  t  u  v  w  x  y  z
// 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
int lengthOfLongestSubstring(char* s) {
   int i =0;
   unsigned char alphabets[128] = {-1};
   int maxlen = 0, currentlen = 0;

   for ( i = 0 ; i < strlen(s) ; i++) {

       if (alphabets[s[i]] != -1) {
            i = alphabets[s[i]];
            memset(alphabets, -1, sizeof(alphabets));
            currentlen = 0;
            continue;
       }
       alphabets[s[i]] = i;
       maxlen = ( maxlen > ++currentlen ) ? maxlen : currentlen;
   }
   return maxlen;
}
```

The above method exceeded time limit.

## Another way

```c
int lengthOfLongestSubstring(char* s) {
   int i =0, j = 0 ;
   int alphabets[128];
   int maxlen = 0, startLocation = -1, currentlen=0;

   memset(alphabets, -1, sizeof(alphabets));

   for ( i = 0 ; i < strlen(s) ; i++) {

       if (alphabets[s[i]] != -1) {
            // this part is important to keep startLocation in substring.
            startLocation = (alphabets[s[i]] > startLocation) ? alphabets[s[i]] : startLocation;

       }
       alphabets[s[i]] = i;
       currentlen = i-startLocation;
       maxlen = ( maxlen > currentlen ) ? maxlen : currentlen;
   }
   return maxlen;
}
```

if you wato plus 0ne to [i,j), the result is [i+1, j+1).

basic concept is the same from right above, but it shrink count of for statement.

**this sliding method is useful in array and string.**

# [Reference site : cplusplus](http://www.cplusplus.com/reference/clibrary/)

[i,j) = {x | i <= x < j} is left-closed and right-open.

you need to konw about str functions.

> [memset](http://www.cplusplus.com/reference/cstring/memset/) :

  - void * memset (void * ptr, int value, size_t num);

  - Fill block of memory. **be careful that value is just type conversion from int to unsigned char.**

  - return ptr value.

> [strlen](http://www.cplusplus.com/reference/cstring/strlen/)

  - size_t strlen (const char *str);

  - return length of string except for NULL Charater in a string.

gha_language: Jupyter Notebook


text:
# bitopi
Dockerized environment for developing PHP applications

> Inspired and customized version of [Vessel](https://github.com/shipping-docker/vessel)

## What's included?
- Ubuntu 16.04
- Nginx
- PHP 7.2-fpm
  - modules: pgsql, sqlite3, gd, curl, memcached, imap, mysql, mbstring, xml, zip, bcmath, soap, intl, xdebug, msgpack, igbinary

## Install
Just download as zip or git clone command in terminal:
```
git clone https://github.com/leninhasda/bitopi.git
```
Then copy `docker` folder, `bitopi` and `docker-compose.yml` file in your project directory. Finally run the following command in your project path to initialize:
```
sudo bash bitopi init
```

## How to use

repository: leninhasda/bitopi

repo_name: leninhasda/bitopi


text:
## Front end test

###Install and run
you need node.js
- npm install -g gulp
- npm install -b bower
- gulp serve

### Instructions
1. Fetch this repo in your github account.
2. Make a new branch called test-me and add your stuff there.
3. Once you have completed the test make a new PR to this repo, for that branch.
4. You have max 3 hours.

### Infos
1. Default route is `/` which loads `TestMeController` controller, and display `test-me.html` view.
2. You must indent your code, follow the .editorconfig and .eslint rules.

### HTML and CSS part - Todo:
1. Create an html structure with header and content similar as much as possible to the example located in src/assets/layout.png.
2. The page should be responsive. Customization for tablet and phone will be a plus.
3. Write css in sass.

### Angular part - Todo:
1. Write an angular directive called `race-cars-paginator` which display a list of race cars.
2. The directive should fetch cars from the service injected in `TestMeController`.
3. Use bootstrap for display the items in a <table>.
4. Limit the items shown in the table at 10.
5. Use `ui-bootstrap` `pagnation` for paginate the table rows.

###Extra
1. Try to use all the best practice that makes Angular fast and cool, one time binding, track by, bindToController, controllerAs ...
2. Write unit-tests for controller and directive (big extra)

repository: kurtommy/fe-test

gha_language: JavaScript

repo_name: kurtommy/fe-test


text:
**Before submitting this PR, please make sure**:

- [ ] Your code builds clean without any errors or warnings
- [ ] You are using approved title ("feat/", "fix/", "docs/", "refactor/")

**A description of the changes proposed in the pull request**:

**Tests performed by the developer**:

**Tips for QA testing**:

repository: CoinAlpha/hummingbot

branch_name: refs/heads/development

gha_language: Python

repo_name: CoinAlpha/hummingbot


text:
chin up
=======

![my setup](docs/img/screenshots/home_view.png)

![my setup](docs/img/screenshots/input.png)

### Why? ###
To become the best I can be: I need motivation, I need to get my chin up.

### How do you measure? ###
Every metric that I believe significantly effects my motivation and health will be measured on a scale from 1 to 10.
If there is something significant to note, I'll put that down as well. However, the main goal is to motivate myself through
numbers and statistics.

**1 being** the worst, least effort I could possibly put in and **10 being** the best, most effort I could possibly put in.

### When will you be... done? ###
I don't ever expect to be a 10 in all areas all the time, so there will always be room for improvement! I need/want some
motivation in my life these days. It's strange being 25 and having your whole life ahead of you. So crippling to want to
pursue Jiu Jitsu, Fishing, Programming, Gaming, Olympic Lifting, Powerlifting, Traveling, starting a family, etc. etc.

It's difficult to make a decision, especially because of my personality type always wanting to do things perfectly/the right way.
I'm hoping this helps me pursue all of those things by simply being a healthy and happy person.

### Isn't this just like a really dumbed down workout tracker? ###
Totally.

It's not meant to be for one specific goal, but all of my goals boiled down to their most basic components.

Sometimes it feels like even if I got a world record, made a million dollar idea come to fruition, or wrote some amazing
novel programming library I'd still feel unfulfilled. That's why I need to start worrying about these metrics.

Setup
=====

Setup the database environment variables
```
export DATABASE_NAME='db'
export DATABASE_USERNAME='postgres'
export DATABASE_PASSWORD=''
export DATABASE_HOST='localhost'

export PIN_PASSCODE_USERNAME='eric' # user to sign in as, defaults to "admin"
export PIN_PASSCODE_PIN=1234        # the passcode required to login as the above user, using 0-9 and #

export DJANGO_SECRET_KEY='blehblah'
```

Setup your timezone
```python
# settings/base.py
TIME_ZONE = 'US/Pacific'
```

Install requirements
```
pip install -r requirements.txt
```

Syncdb and migrate
```
python manage.py syncdb --migrate
```

Test it out
```
python manage.py runserver
```

Then go to `http://localhost:8000/admin/` and add daily/monthly tracking items.

Stats
=====

![my setup](docs/img/screenshots/stats.png)

 * **Month to month** - Average for the entire month
 * **Week to week** - Average for the entire week
 * **Day of the week** - Average for that day of the week for the last year
 * **7 day** - Last 7 day simple
 * **30 day** - Last 30 day simple

Correlations
============

Thanks to numpy I added really quick correlations between metrics, it's pretty ugly but it will tell you what metrics
might positively/negatively correlate to each other.

![correlations](docs/img/screenshots/correlations.png)

Easy login
==========

To make Chin Up easier to use, I made a simple app and threw it on pypi called [django-pin-passcode](https://github.com/ckcollab/django-pin-passcode).
It logs you in to the user you define after you enter a certain passcode composed of 0-9 and #.

Example tracking items
======================

If you want the same setup I have, go to the `admin` screen and add these items.

### Daily checklist (binary=True)
- Vitamins
- Coffee
- 20 pushups for 3 sets
- 20 squats for 3 sets
- (a lot more, this depends entirely on what you do/want to do every day)

### Daily tracking
- Happy
    * 1 being seeing my mom with tubes coming out of her face and head
    * 10 being happiest I've ever been, nothing feels impossible
- Motivated
    * 1 being ultra depressed not even eating
    * 10 being I did everything I needed to and more
- Flexibility
    * 1 being no stretching in chair all day no walking around
    * 10 being I did every stretch possible and did the splits
- Strength
    * 1 being I feel as soft as an 8 year old girl
    * 10 being I squatted and deadlifted the day before--now I can't move
- Endurance
    * 1 being I got winded getting out of my chair
    * 10 being I jump roped for 10 minutes and ran a mile without breathing hard
- Relationship
    * 1 being I got into a huge argument and feel terrible
    * 10 being we made dinner together and wrote each other poetry

### Monthly tracking
- Life goals
    * 1 being no progress towards goals and very depressed
    * 10 being I got a world record deadlift
- Power
    * 1 being no physical activity
    * 10 being I ran and worked out every opportunity I had
- Nature
    * 1 being no outdoor activity
    * 10 being I spent the entire time camping and fishing

Acknowledgements
================

I got this idea from [Steven Skoczen](https://github.com/skoczen)

repository: ckcollab/chin-up

repo_name: ckcollab/chin-up


text:
---
title: Bildungdigital21
subtitle: Future direction for german digital education strategy
date: 2021-04-10T18:46:07.005Z
summary: Producing a fast tagloud from a transcript of a Youtube video
draft: false
featured: false
authors:
  - admin
lastmod: 2021-03-07T08:05:11+01:00
tags:
  - rstats
  - NLP
  - coding
categories:
  - Codesnippets
projects: []
image:
  caption: ""
  focal_point: ""
  preview_only: false
---

## A new direction for the German digital education strategy?

The German government has organized on the 22nd of February 2021 an online-event regarding a future strategy on digital education. The event was a mix of political intention statements and some advertisement of existing initiatives. What I found remarkable was that there is still the vision, that any overarching OER platform would solve any problems with education despite this has failed on the European level already many years ago. The video of the discourse is embedded below.

<iframe width="560" height="315" src="https://www.youtube.com/embed/WAlP39a5LUU" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

## Visualizing the discourse
{{< tweet<PHONE_NUMBER>644766728 >}}
To get a fast overview about the main topics of the discourse I have hacked together a short R-script to produce a tagcloud from the most used meaningful words in the discourse.

```R
# We first install the Youtubecaption library
install.packages('youtubecaption')
# Now we import the captions from the video
library(youtubecaption)
library(quanteda)
library(tidyverse)
url <- "https://www.youtube.com/watch?v=WAlP39a5LUU"
caption <- get_caption(url, language ="de")
caption
# Now we need to make a document-term-matrix from the content
my_corpus <- corpus(caption$text)
summary(my_corpus)
# Extending the stopwordlist with a more extended one from Github
ger_stopwords <- read_lines("https://raw.githubusercontent.com/stopwords-iso/stopwords-de/master/stopwords-de.txt")
custom_stopwords <- setdiff(ger_stopwords, stopwords("german"))
# Constructing the
meine.dfm <- dfm(my_corpus, remove_numbers = TRUE, remove_punct = TRUE, remove = c(stopwords("german"), custom_stopwords))
meine.dfm.trim <- dfm_trim(meine.dfm, min_docfreq = 1, min_nchar = 3)
# Visualizing the matrix
textplot_wordcloud(meine.dfm.trim, min_size = 1, max_size = 2, max_words = 100)
```
This code takes the full transcript from youtube, builds a corpus, removes stopwords and visualizes the most frequent words in the resulting tagloud.

{{< figure src="featured.png" caption="Tagcloud from the event" >}}

repository: mkalz/mkalz-academic

repo_name: mkalz/mkalz-academic


text:
---
layout: page
title: Readings
permalink: /readings/
output: true
---
## Books

* [Lean Startup](https://www.amazon.com/Lean-Startup-Entrepreneurs-Continuous-Innovation/dp/0307887898), Eric Ries
* [Beyond Transparency](http://beyondtransparency.org), Code for America Press
* [Web Scraping with Python](http://shop.oreilly.com/product/0636920078067.do) by Ryan Mitchell
* [The Data Warehouse ETL Toolkit](http://shop.oreilly.com/product/9780764567575.do) by Ralph Kimball and Joe Caserta

## Articles / Videos

* [Beyond Tech: Policymaking in the Digital Age](https://medium.com/code-for-america/beyond-tech-policymaking-in-a-digital-age-2776b9a17b69) by Jennifer Pahlka
* [Civic Tech as a Tween](https://medium.com/@cydharrell/civic-tech-as-a-tween-4cd780b971bb) by Cyd Harrell
* ["Healthcare.gov and the Gulf between Planning and Reality"](http://www.shirky.com/weblog/2013/11/healthcare-gov-and-the-gulf-between-planning-and-reality/) by Clay Shirky
* [Two Kinds of Empathy](https://medium.com/@abhinemani/two-kinds-of-emp-25706bf36df4) by Abhi Nemani
* [“People, Not Data”](https://medium.com/@lippytak/people-not-data-47434acb50a8) by Jake Solomon
* [Govtech: the $400B Market Hiding in Plain Sight](https://medium.com/@GovtechFund/govtech-the-400-billion-market-hiding-in-plain-sight-c71ec2a2f5e7) by Ron Bouganim
* [Government as a Platform](https://www.mitpressjournals.org/doi/pdf/10.1162/INOV_a_00056) by Tim O’Reilly
* [The Strategy is Delivery](https://www.youtube.com/watch?v=3bK9B8_0FDQ) by Mike Bracken (Video)
* [Scaling Civic Tech](https://knightfoundation.org/features/civictechbiz/) by The Knight Foundation
* [Before the Commit: A Note for Tech Friends Newly Motivated to Hack for Justice](https://medium.com/@mishmosh/before-the-commit-a-note-for-tech-friends-newly-motivated-to-hack-for-justice-6a6269b76a64) by Michelle Lee
* [12 Things Everyone Should Understand About Tech](https://medium.com/humane-tech/12-things-everyone-should-understand-about-tech-d158f5a26411) by Anil Dash
* [Building Technology with, not for](https://medium.com/organizer-sandbox/building-technology-with-not-for-communities-an-engagement-guide-for-civic-tech-b8880982e65a) by Laurenellen McCann
* [A Serenity Prayer for GovTech](https://blog.citygro.ws/hello-im-catherine-and-i-m-a-government-technologist-57e4ae621039) by Catherine Geanuracos
* [Small (City) Pieces, Loosely Joined](https://medium.com/@abhinemani/small-city-pieces-loosely-joined-5202fb5a93e3) by Abhi Nemani
* [Why Good Hackers Make Good Citizens](https://www.youtube.com/watch?v=QeAGu40vZzI) by Catherine Bracy (Video)
* [GovTech Business Model Canvas](https://blog.stormventures.com/govtech-business-model-canvas-3b8246af8a93) by Frederik Groce
* [Y Combinator Founder Stories: Detroit Water Project](https://blog.ycombinator.com/qa-with-tiffani-ashley-bell/) by Tiffani Ashley Bell
* [My failures: Civic technology ideas that didn’t quite work](https://medium.com/@joshuatauberer/my-failures-civic-technology-ideas-that-didn-t-quite-work-c73ecf730032) by Joshua Tauberer
* [What side are you on, Vendors?](https://medium.com/code-for-america/which-side-are-you-on-vendors-1259e18c2d86) by Jennifer Pahlka
* [How Technology Is Transforming The Government CIO Role](https://www.citysourced.com/blog/technology-transforming-government-cio/) by Andrew Kirk

## Additional (Optional) Reading

* [Regulatory Hacking: A Playbook for Startups](https://www.amazon.com/Regulatory-Hacking-Playbook-Evan-Burfield-ebook/dp/B078GBFZ73) by Evan Burfield
* [Open Government: Collaboration, Transparency, and Participation in Practice](http://shop.oreilly.com/product/9780596804367.do) by O'Reilly Media (Compilation)
* [The Responsive City](https://www.amazon.com/Responsive-City-Communities-Data-Smart-Governance/dp/1118910907) by Susan Crawford and Stephen Goldsmith
* [Civic Tech: Making Technology Work for People](https://www.amazon.com/gp/product/1732084807/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1) by Andrew Schrock
* [The CUT Book](https://www.slideshare.net/juggernautco/the-cutgroup-book) by SmartChicagoCollaborative
* [Smart Cities](https://www.amazon.com/Smart-Cities-Civic-Hackers-Utopia/dp/0393349780/ref=pd_lpo_sbs_14_t_0?_encoding=UTF8&psc=1&refRID=HCX17KXYY5QBQ7X49Q0E) by Anthony Townsend

repository: abhinemani/civictechcourse

repo_name: abhinemani/civictechcourse


text:
# hwtGraph
[![CircleCI](https://circleci.com/gh/Nic30/hwtGraph.svg?style=svg)](https://circleci.com/gh/Nic30/hwtGraph)
[![Coverage Status](https://coveralls.io/repos/github/Nic30/hwtGraph/badge.svg?branch=master)](https://coveralls.io/github/Nic30/hwtGraph?branch=master)
[![PyPI version](https://badge.fury.io/py/hwtGraph.svg)](http://badge.fury.io/py/hwtGraph)
[![Documentation Status](https://readthedocs.org/projects/hwtgraph/badge/?version=latest)](http://hwtgraph.readthedocs.io/en/latest/?badge=latest)
[![Python version](https://img.shields.io/pypi/pyversions/hwtGraph.svg)](https://img.shields.io/pypi/pyversions/hwtGraph.svg)

Library for conversion of HWT hardware representation to graph formats for visualization purposes.

Use `sudo pip3 install hwtGraph` or download this repo and run `python3 setup.py install` to install this library.

## Features

* Convert HWT hardware description to [ELK json](https://www.eclipse.org/elk/documentation/tooldevelopers/graphdatastructure/jsonformat.html) for visualization.

* suppor for additional graph transofrmations in all transformation phases (conversion is specified as sequence of transofrmations and user can modify it)

## Similar software

* [myhdl2dot](https://github.com/harboleas/myhdl2dot)


text:
# Novemeber 2021 Release - Autorest Core 3.7.0, Modelerfour 4.22.0

Changelogs for full details:

- [Autorest Core](https://github.com/Azure/autorest/blob/main/packages/extensions/core/CHANGELOG.md)
- [Modelerfour](https://github.com/Azure/autorest/blob/main/packages/extensions/modelerfour/CHANGELOG.md)

## Modelerfour errors with original location

With previous improvments to the source map system, this version adds source map tracing all the way up to modelerfour. This means errros and warnings that previously occured in `Prechecker` or `Modelerfour` will now show the original location if applicable instead of an obscure name.
![](./images/m4-error-source.png)

## Extension installation progress

Version 3.7.0 of Autorest Core comes with some improvements to the experience by showing a progress bar when it needs to install extensions. Certain extensions would be relatively slow to install and it could let to believe that autorest was stuck on install as no feedback was sent during install.

![](./images/progress-install.gif)

## Improved error reporting when extensionn install fails

Previous version of autorest core resolved many cases where extension would fail to install for various reasons. There is however still some scenarios where autorest can't solve the problem itself(A bad installation of python preventing @autorest/python to be installed)

This version will now display nicely the inner log from the installation in case of a failure

![](./images/installation-failure.png)

## Other

### `@autorest/extension-base` breaking changes

Latest version of `@autorest/extension-base` (3.4.0) introduced a few breaking changes. This is mostly to cleanup and have a consistent naming convention of the JS/TS ecosystem as well as providing a more descriptive api for reporting errors to enable sourcemap support for extensions.

repository: Azure/autorest

branch_name: refs/heads/main

gha_language: TypeScript

repo_name: Azure/autorest


text:
# nexagateway

A very simple gateway app for Nexa automation units running on Arduino. This is just a toy software, with time I will port to other languages and make it better.

## How it works

It just opens a TCP port and waits for data, when it gets forwards to a serial port where the Arduino is connected.

## Usage

```
./haabnexa [OPT]
HAAB Nexa Gateway
Possible options:
-o [PORT] should be something like /dev/ttyUSB0 (linux)
-p [PARITY] setup parity and data bits as XYZ

    [XYZ]
    X - Data bits can be 5,6,7 or 8
    Y - Parity can O,E or N
    Z - Stop bits can be 1 or 2

-s [SPEED] as a integer like 9600, 14400 etc... you know...
-n [PORT] as a integer network port number, being 5697 the dedault
```

repository: brunobcfum/nexagateway

repo_name: brunobcfum/nexagateway


text:
## Usage

* [Define a State Store](#define-a-state-store)
* [Create a Migrator](#create-a-migrator)
* [Create Migrations](#create-migrations)
* [Add Migrations](#add-migrations)
* [Migrating up to the Latest Version](#migrating-to-the-latest-version)
* [Migrating to a Specific Version](#migrating-down-to-a-specific-version)

### Define a State Store

The migrator needs to save and retrieve state information to determine which migrations to run.
This information should be stored on a filesystem, database, or key-value store.

For these examples, we will use the built-in `MemoryStateStore`.
Note that this should only be used for testing, as it is non-persistent.

```coffee

stateStore = new BocoMigrate.MemoryStateStore

```

See [State Stores](#state-stores) for more information.

### Create a Migrator

Configure the migrator with the state store you created.

```coffee

migrator = new BocoMigrate.Migrator stateStore: stateStore

```

### Create Migrations

A migration must have an unique `name` and `timestamp`, and an `up` method.

If you do not specify a `down` method, it will be considered an irreversable migration.

Let's create some migrations that add messages to an array, so we can observe what happens
when we run them.

```coffee

messages = []

```

You can create a migration as an instance of `Migration`.

```coffee

migration1 = new BocoMigrate.Migration
  name: "migration1"
  timestamp: "2015-01-01T00:00:00Z"
  up: (done) -> messages.push "message from #{@name}"; done()
  down: (done) -> messages.pop(); done()

```

You can also create custom classes for your migrations, extending `Migration`.

```coffee

class AddMessage extends BocoMigrate.Migration
  constructor: (name, timestamp, messages) ->
    super name: name, timestamp: timestamp
    @messages = messages

  up: (done) -> @messages.push "message from #{@name}"; done()
  down: (done) -> @messages.pop(); done()

migration2 = new AddMessage "migration2", "2015-01-02T01:30:00Z", messages
migration3 = new AddMessage "migration3", "2015-03-25T22:15:33Z", messages

```

### Add Migrations

```coffee

migrator.addMigrations migration1, migration2, migration3

```

### Migrating Up To The Latest Version

```coffee

test "migrating to the latest version", (done) ->

  migrator.migrate (error) ->
    return done error if error?
    assert.equal 3, messages.length
    assert.equal "message from migration3", messages[2]
    done()

```

### Migrating to a Specific Version

```coffee

test "migrating down to a specific version", (done) ->

  migrator.migrate migration1.timestamp, (error) ->
    return done error if error?
    assert.equal 1, messages.length
    assert.equal "message from migration1", messages[0]
    done()

test "migrating up to a specific version", (done) ->

  migrator.migrate migration2.timestamp, (error) ->
    return done error if error?
    assert.equal 2, messages.length
    assert.equal "message from migration2", messages[1]
    done()

```

repository: bocodigitalmedia/boco-migrate

gha_language: CoffeeScript

repo_name: bocodigitalmedia/boco-migrate


text:
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) > [sip.js](./sip.js.md) > [SimpleUserOptions](./sip.js.simpleuseroptions.md) > [aor](./sip.js.simpleuseroptions.aor.md)

## SimpleUserOptions.aor property

User's SIP Address of Record (AOR).

<b>Signature:</b>

```typescript
aor?: string;
```

## Remarks

The AOR is registered to receive incoming calls. If not specified, a random anonymous address is created for the user.


text:
### Introduction
Transpire Core is an amazing package fully featured with auth, store, api, admin, settings features built on top of Laravel v5.3,that is simple and enjoyable to use.

### Installation

You can install this package via composer using this command:

`composer require sudiptpa/transpire-core`

Next, you must install the service provider:

```
// config/app.php
'providers' => [
    ...
    Transpire\Core\CoreServiceProvider::class,
];
```
After that you can create the database tables by running the migrations:

`php artisan migrate`

### Security
If you discover any security related issues, please email<EMAIL_ADDRESS>, but everyone is more than welcome to contribute more of them.

### Contributing
Contributions are welcome and will be fully credited. We accept contributions via Pull Requests on Github(https://github.com/sudiptpa/transpire-core).

#### Pull Requests
- PSR-2 Coding Standard. The easiest way to apply the conventions is to install [PHP CS Fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer).
- Document any change in behaviour. Make sure the README.md and any other relevant documentation are kept up-to-date.
- Consider our release cycle. We try to follow SemVer v2.0.0. Randomly breaking public APIs is not an option.
- Create feature branches. Don't ask us to pull from your master branch.
- One pull request per feature. If you want to do more than one thing, send multiple pull requests.
- Send coherent history. Make sure each individual commit in your pull request is meaningful. If you had to make multiple intermediate commits while developing, please squash them before submitting.

### License

Transpire Core is open-sourced software licensed under the [MIT license] (https://opensource.org/licenses/MIT)

repository: jmkarki/transpire-core

repo_name: jmkarki/transpire-core


text:
# Safe Apps Developer Tools Monorepo

[![Logo](https://raw.githubusercontent.com/gnosis/safe-apps-sdk/master/assets/logo.png)](https://gnosis.pm/)
[![Build Status](https://travis-ci.org/gnosis/safe-apps-sdk.svg?branch=master)](https://travis-ci.org/gnosis/pm-contracts)

Developer tools to integrate third-party applications (Safe Apps) with Safe Multisig (https://gnosis-safe.io/app/).

You can find more resources on Safe Apps in the [Gnosis Safe Developer Portal](https://docs.gnosis.io/safe/docs/sdks_safe_apps/).

![safeapps_pathways_v4](https://user-images.githubusercontent.com/6764315/123075714-c5564100-d418-11eb-8da0-898aa163dee2.png)

## Packages

| Package                                                                                | Description                                                                                |
| ----------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------- |
| [cra-template-safe-app](https://github.com/gnosis/safe-apps-sdk/tree/master/packages/cra-template-safe-app) | CRA template to quickly bootstrap a Safe app                                                                           |
| [safe-apps-react-sdk](https://github.com/gnosis/safe-apps-sdk/tree/master/packages/safe-apps-react-sdk)     | A wrapper of safe-apps-sdk with helpful hooks                                                                          |
| [safe-apps-sdk](https://github.com/gnosis/safe-apps-sdk/tree/master/packages/safe-apps-sdk)                 | JavaScript SDK                                                                                |
| [safe-apps-provider](https://github.com/gnosis/safe-apps-sdk/tree/master/packages/safe-apps-provider)       | A generic provider that can be used with common web3 libraries                                                         |
| [safe-apps-onboard](https://docs.blocknative.com/onboard)                                                   | Blocknative included Safe App support in onboard.js v1.26.0. To use it, add `{ walletName: "gnosis" }` to wallet list. |
| [safe-apps-web3modal](https://github.com/gnosis/safe-apps-sdk/tree/master/packages/safe-apps-web3modal)     | A wrapper around Web3modal that would automatically connect to the Safe if the app is loaded as a Safe app             |
| [safe-apps-web3-react](https://github.com/gnosis/safe-apps-sdk/tree/master/packages/safe-apps-web3-react)   | A web-react connector for Safe Apps                                                                                |

## Testing your Safe App

You can use any of our production interfaces:

- Mainnet: https://gnosis-safe.io
- Rinkeby: https://rinkeby.gnosis-safe.io
- xDai: https://xdai.gnosis-safe.io

We also made a very simple interface for testing safe apps that can be used on any network: https://dev.gnosis-safe.io/

## Setting up development environment

### Installing dependencies

```
npm i -g lerna
yarn global add lerna

lerna bootstrap
```

### Running commands

We will use `build` command as an example. Same applies to other commands.

For all packages:

```
lerna run build
```

For a specific package:

```
lerna run --scope @gnosis.pm/safe-apps-sdk build --stream
```

`--stream` options enables command output. By default, lerna displays it only in case of an error.

## Release process

Release process is described in [releases.md](/docs/releases.md)

## Useful links

- [Start a new project using the Safe App React template](/packages/cra-template-safe-app)
- [Video introduction to Building with Safe Apps SDK & Contract Proxy Kit](https://www.youtube.com/watch?v=YGw8WfBw5OI)

repository: JulienKode/safe-apps-sdk

repo_name: JulienKode/safe-apps-sdk


text:
# Data Node

DataNode is the component to write insert and delete messages into persistent blob storage, for example MinIO or S3.

## Dependency

- KV store: a kv store that persists messages into blob storage.
- Message stream: receive messages and publish imformation
- Root Coordinator: get the latest unique IDs.
- Data Coordinator: get the flush information and which message stream to subscribe.

repository: milvus-io/milvus

gha_language: Go

repo_name: milvus-io/milvus


text:
# Sass Grid
Based off of Jo Franchetti's [grid-cats.glitch.me](https://grid-cats.glitch.me) via her Medium article [Common Responsive Layouts with CSS Grid and Some Without](https://medium.com/samsung-internet-dev/common-responsive-layouts-with-css-grid-and-some-without-245a862f48df). Transferred into Sass with accessible landmarks and headers by [Kathy Zadrozny](https://github.com/kzadrozny)

## Features
* Fixed/sticky navigation bar
* One page website
* Accessible layout (Using proper headers and landmark roles)
* Sass stylesheet
* Media query based off `em` for more consistent viewport breakpoint behavior
* Gulp tasks that concats Sass, watches files for changes, and reloads local host.

## Screenshot
![Screenshot of top half of template](docs/Site-Screenshot_README.png)

## Quick Start
* Install the required npm modules with `npm install`
* Run task manager with `gulp`
* Task manager auto runs port3000 when the gulp command is initiated.
* Open localhost:3000
* All changes are auto refreshed in your local host.

## Contributing and Issues
### Contribute Code or Documentation
1. Fork the repository on GitHub.
2. Make changes to your clone of the repository.
3. Submit a pull request.

### Report an Issue or Bug
1. Create a new issue at [github.com/kzadrozny/sass-grid/issues](https://github.com/kzadrozny/sass-grid/issues)
2. Describe the problem in detail. Explain what happened and what you expect should happen.
3. If helpful, provide code or a screenshot.

Read [CONTRIBUTING.md](docs/CONTRIBUTING.md) for more info.

## Accessibility Resources
* [Color Contrast Checker](https://webaim.org/resources/contrastchecker/)
* [Using ARIA landmarks to identify regions of a page](https://www.w3.org/WAI/GL/wiki/Using_ARIA_landmarks_to_identify_regions_of_a_page)
* [WebAIM: Invisible Content Just for Screen Reader Users](https://webaim.org/techniques/css/invisiblecontent/)
* [W3C Page Regions](https://www.w3.org/WAI/tutorials/page-structure/regions/)
* [MDN web docs Using the button role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Techniques/Using_the_button_role)
* [Making Data Tables Responsive](http://blog.apps.npr.org/2014/05/09/responsive-data-tables.html)
* [Web Content Policies and Best Practices Handbook](https://loop.lib.uchicago.edu/documentation/communications/web-content-policies-and-best-practices-handbook/)

Read [code-resources.md](https://github.com/uchicago-library/uchicago-library.github.io/blob/master/docs/code-resources.md) on the University of Chicago Library's github for more info and ADA compliant code samples.

## Author and Acknowledgments
* Created by [Kathy Zadrozny](https://github.com/kzadrozny)
* Based off of Jo Franchetti's [grid-cats.glitch.me](https://grid-cats.glitch.me)

## License
This project is licensed under the MIT License - see the [License.md](docs/License.md) file for details.

repository: kzadrozny/sass-grid

repo_name: kzadrozny/sass-grid


text:
---
layout: default
---

# 1998-01-14 - Re: rant on the morality of confidentiality

## Header Data

From: Tim May<EMAIL_ADDRESS>To: Bill Stewart<EMAIL_ADDRESS>Message Hash: edd248a1147a236b70abf3e41208bf1025cd004248d3302953b17758daf8a79b

Message ID<EMAIL_ADDRESS>Reply To<EMAIL_ADDRESS>UTC Datetime: 1998-01-14 09:55:30 UTC

Raw Date: Wed, 14 Jan 1998 17:55:30 +0800

## Raw message

```
{% raw  %}From: Tim May<EMAIL_ADDRESS>Date: Wed, 14 Jan 1998 17:55:30 +0800
To: Bill Stewart<EMAIL_ADDRESS>Subject: Re: rant on the morality of confidentiality
In-Reply-To<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>MIME-Version: 1.0
Content-Type: text/plain

At 10:20 PM -0800 1/13/98, Bill Stewart wrote:

>Consider the Nazi studies done on human susceptibility to freezing,
>poisons, torture, etc., and the followon work done by various
>evil empires.  Some of it was just done for fun,
>but some of it _was_ real science, with hypotheses and experiments,
>and there's only so much research you can do into the
>resistence of the body to serious damage without actually
>damaging live bodies, most accidental damage to human bodies
>isn't done in sufficiently instrumented environments to be useful,
>and it's just _damn_ hard to get good volunteers these days.
>Did most of that work rate as "immoral science" - I'd say so.

I think it's an error to use "moral" or "immoral" as a modifier for "science."

It's a matter of opinion/ethics as to whether some science is "for immoral
purposes," but calling something "immoral science" is fraught with trouble.

To a vegetarian, any science related to meat production is "immoral science."

To a devout pacifist, any science related to weapons in any way is "immoral
science."

To an Orthodox Jew, any science done on the Sabbath is "immoral science."

To a Communist, any science which refutes scientific socialism is "immoral
science."

To the Catholic Church, circa 1500, any science which challenged the
earth-centric view was "immoral science."

Personally, I don't view scientific experiments done on condemned prisoners
as immoral. If a human being has already been sentenced to die, and, for
example, accepts some payment (perhaps for his heirs) to die in some
scientifically interesting way, why call it "immoral"?

While I would not have, I hope, worked in a Nazi death camp, the science
obtained is undeniably real science, some of the only solid data we have on
freezing humans, on exposing them to pathogens, etc.

(BTW, there are those who believe using placebos in experiments involving
life-threatening situations (like diseases) is "immoral science." I view it
as a necessary way to do science in this arena. So long as the patients are
informed as to the protocol, and understand they may randomly end up in the
placebo group, I have no problems. Nonetheless, the fact that some or all
in the control group will die in the experiment is deemed by some to be
"immoral.")

--Tim May

The Feds have shown their hand: they want a ban on domestic cryptography
---------:---------:---------:---------:---------:---------:---------:----
Timothy C. May              | Crypto Anarchy: encryption, digital money,
ComSec 3DES:<PHONE_NUMBER> | anonymous networks, digital pseudonyms, zero
W.A.S.T.E.: Corralitos, CA  | knowledge, reputations, information markets,
Higher Power: 2^2,976,221   | black markets, collapse of governments.
"National borders aren't even speed bumps on the information superhighway."

{% endraw %}
```

## Thread

+ Return to [January 1998](/archive/1998/01)

+ Return to "[Bill Stewart <bill.stewart@pobox.com>](/authors/bill_stewart_bill_stewart_at_pobox_com_)"
+ Return to "[Blanc <blancw@cnw.com>](/authors/blanc_blancw_at_cnw_com_)"
+ Return to "[Tim May <tcmay@got.net>](/authors/tim_may_tcmay_at_got_net_)"
+ Return to "["Vladimir Z. Nuri" <vznuri@netcom.com>](/authors/vladimir_z_nuri_vznuri_at_netcom_com_)"

+ 1998-01-13 (Tue, 13 Jan 1998 11:14:38 +0800) - [Re: rant on the morality of confidentiality](/archive/1998/01/fd0c5249fb17b4677476d1cb3ec99cd02bd50c11077fa7285dc7ad655d5de985) - _Blanc<EMAIL_ADDRESS>  + 1998-01-14 (Wed, 14 Jan 1998 08:15:21 +0800) - [Re: rant on the morality of confidentiality](/archive/1998/01/30321a318a0792e56896474375e27d7212dbfc86e16ef065afe5fc5b80de1786) - _"Vladimir Z. Nuri"<EMAIL_ADDRESS>  + 1998-01-14 (Wed, 14 Jan 1998 15:47:35 +0800) - [Re: rant on the morality of confidentiality](/archive/1998/01/ceffccfb829f24fdfef3a774c5a2d7319b11c5b49d6f753fb572941bd0b98b04) - _Bill Stewart<EMAIL_ADDRESS>    + 1998-01-14 (Wed, 14 Jan 1998 17:12:20 +0800) - [Re: rant on the morality of confidentiality](/archive/1998/01/727ce3b0408792dacde9da618d364bc1174d6b988e9d6f43af15d8907a5485a7) - _"Vladimir Z. Nuri"<EMAIL_ADDRESS>  + 1998-01-14 (Wed, 14 Jan 1998 17:55:30 +0800) - Re: rant on the morality of confidentiality - _Tim May<EMAIL_ADDRESS>    + 1998-01-14 (Thu, 15 Jan 1998 07:15:16 +0800) - [Re: rant on the morality of confidentiality](/archive/1998/01/3b8d8e3eeb12e6a39767da8621ddc84a03dd7f070122f4c7b2468eb6ab027e4f) - _"Vladimir Z. Nuri"<EMAIL_ADDRESS>    + 1998-01-15 (Thu, 15 Jan 1998 11:22:32 +0800) - [Re: rant on the morality of confidentiality](/archive/1998/01/4e1273e6dfb0eb6d682d5c85d130296bff34726a5e603612032731582948306f) - _Blanc<EMAIL_ADDRESS>      + 1998-01-15 (Fri, 16 Jan 1998 05:11:33 +0800) - [Re: rant on the morality of confidentiality](/archive/1998/01/3b076a6e9603cd24924729bb1379ba3a8bebb8ba25463699f519733b46a8b40a) - _"Vladimir Z. Nuri"<EMAIL_ADDRESS>


text:
# Multi-Dataflow Composer: dataflow and environment tutorial
This tutorial shows how to model applications through dataflow models by means of the Open RVC-CAL Composer environment, that is the same adopted by the Multi-Dataflow Composer (MDC).

## Dataflow Models

Input data for MDC is constituted by RVC-CAL dataflow models. The source files of the models can be:
* **XDF networks** - specifying how dataflow actors are connected together (LINK TO DOC FOR XDF);
* **CAL actors** - specifying the behavior of dataflow actors (LINK TO DOC FOR CAL).

## Test Case
In this tutorial a Sobel edge detector will be taken as test case Sobel edge detector basically returns the magnitude of the gradient related to the color spatial variation within the image. In particular, the gradient of the color spatial variation is calculated as the square root of the sum of the squared components of the spatial gradients, that are horizontal and vertical gradient:

$$
G = \sqrt{G_x^2+G_y^2}
$$

Horizontal and vertical gradients for a certain pixel are typically calculated through a bi-dimenstional convolution of a kernel (convolution matrix) by the image itself. Sobels adopts 3x3 kernels:

$$
G_x=
\begin{bmatrix}
+1 & 0 & -1 \\
+2 & 0 & -2 \\
+1 & 0 & -1
\end{bmatrix},
G_y=
\begin{bmatrix}
+1 & +2 & +1 \\
0 & 0 & 0 \\
-1 & -2 & -1
\end{bmatrix}
$$

Note that some variants of edge detection algorithms also consider as edge, instead of the gradient magnitude, its thresholded value: if the gradient is greater than a certain threshold, they return the maximum pixel value (e.g. 255), if not they return 0.

The dataflow model describing Sobel edge detector, involving both XDF networks and CAL actors, is available online at XXXXXX. _Sobel.xdf_ is composed with 26 different CAL actors:
- 1 forward actor to provide an additional frame necessary to the input image entirely;
- 2 line buffers to store input image rows;
- 6 delays  to store input image pixels;
- 4 shifter actors to realize a multiplication by two of the pixel value;
- 6 subtractors to compute partial sums of spatial gradients;
- 2 adders with 3 inputs to compute spatial gradients;
- 2 multipliers to square the spatial gradients;
- 1 adder with 2 inputs to compute the sum of the squared spatial gradients;
- 1 square root to compute the square root of the sum of the squared spatial gradients;
- 1 align actor necessary to drop all the spurious data.

Basically, line buffers and delays provide a 3x3 matrix of pixels to be convolved with the kernel:

$$
\begin{bmatrix}
x_{00} & x_{01} & x_{02} \\
x_{10} & x_{11} & x_{12} \\
x_{20} & x_{21} & x_{22}
\end{bmatrix}
$$

Please note that the current pixel of the image, coming from the output of the forward actor, is in position (2,2) since input images are streamed row by row, element by element. Moreover, the gradient calculated on such pixel matrix will be referred to the pixel in position (1,1).

![sobel-dataflow](https://i.imgur.com/cGUG1h5.jpg)
Sobel dataflow model.

The dataflow models describing the test case adopted in the tutorial can be directly imported within the Eclipse runtime workspace running upon the MDC tool:
1. **Import Project** File > Import... > General > Exisiting Project into Workspace;
2. **Browse to** _test/Examples_ (**OK -> Finish**).

It is now possible to see the Orcc project containing the dataflow models to be used during the tutorial under the folders _src/baseline_ and  _src/common_. Besides _Sobel.xdf_ is present also _Testbench.xdf_. The testbench dataflow network is useful to simulate _Sobel.xdf_ since it connects this latter with two special actors (_SouceImage.cal_ and _ShowImage.cal_) allowing the reading of an image from a binary file and the displaying of the resulting edges on a display.

By double clicking dataflow networks or actors, it is possible to open the graphical environment, for the XDF networks, or the CAL editor, for the CAL actors, in order to analyze or modify them.

## Playing with Models
As introduced previously, the Orcc framework provides a powerful environmet to analyze, manipulate and simulate RVC-CAL dataflow models. In this section of the tutorial we are going to see how to draw and how to simulate dataflow models.

### Drawing Dataflow Models
Dataflow models can be drawn directly by the Orcc graphical interface. Indeed it is possible from there to add/remove/change actors, input/output and connections. Starting from the Sobel dataflow model, we are going to derive a new edge detector called Roberts. Roberts edge detector follows basically the same principle of Sobel, but it adopts different convolution matrices to compute spatial gradients. The matrices adopted by Roberts are 2x2:

$$
G_x=
\begin{bmatrix}
0 & +1 \\
-1 & 0
\end{bmatrix},
G_y=
\begin{bmatrix}
+1 & 0 \\
0 & -1
\end{bmatrix}
$$

With respect to Sobel, Roberts requires one less row and one less column of pixel for each convolution, that is for calculating the edge of each pixel. This means that several actors will not be necessary: 1 line buffer, 4 delays and 4 subtractors. Moreover, the matrix elements are all unary: no shift actor will be necessary. Also the adders with 3 inputs that were summing up the partial sums of the spatial gradients within Sobel are no more required, since only one partial sum will be necessary for Roberts.

Let's derive Roberts edge detector from the Sobel one:
1. Firstly, it is necessary to **duplicate the _Sobel.xdf_ dataflow**:
    1. Right click on _Sobel.xdf_ and then press Copy
    2. Right click on the _src/baseline_ folder and then press Paste
    3. Type "Roberst.xdf" as new name within the Name Conflict window appearing after the paste operation
2. **Remove all unnecessary actors** (1 line buffer, 4 delays, 4 subtractors, 4 shifters, 2 adders)
    1. Double click on the just created _Roberts.xdf_ in order to open it with the graphical interface
    2. To **remove** one **actor instance** from the network move the cursor over it and click on the garbage can > click yes on the Confirm Delet window
    3. It is necessary to remove:
        - _line_x12_
        - _del_x11_, _del_x01_, _del_x21_, _del_x20_
        - _sh_x01_, _sh_x10_, _sh_x21_, _sh_x12_
        - _sub_h1_, _sub_h2_, _sub_v1_, _sub_v2_
        - _add_h_, _add_v_
3. In order to respect the name conventions, some **actor instances should be renamed** by right clicking on them, select "Show properties" and modify the "Name:" field:
    1. _fwd_x22_ becomes _fwd_x11_
    2. _line_x02_ becomes _line_x01_
4. **Disconnect wrong connections** by right clicking on the connection and selecting "Delete"
    1. delete connection from port _dataOut_ of _del_x00_ to port _opA_ of _sub_h0_
6. Then **unconnected actor instances have to be connected** by **drawing a line** from one of the source instance ports to one of the destination instance port:
    1. connect port _outY_ of _fwd_x11_ to port _Y_ of _line_x01_
    2. connect port _outY_ of _fwd_x11_ to port _dataIn_ of _del_x10_
    3. connect port _Line_ of _line_x01_ to port _dataIn_ of _del_x00_
    4. connect port _dataOut_ of _del_x10_ to port _opA_ of _sub_h0_
    5. connect port _outY_ of _fwd_x11_ to port _opB_ of _sub_v0_
    6. connect port _sub_ of _sub_h0_ to port _opA_ of _mul_h_
    7. connect port _sub_ of _sub_h0_ to port _opB_ of _mul_h_
    8. connect port _sub_ of _sub_v0_ to port _opA_ of _mul_v_
    9. connect port _sub_ of _sub_v0_ to port _opB_ of _mul_v_
7. **Change entity of actor instances that are different going from Sobel to Roberts** by right clicking on the actor instance, select "Set/updated refinement" and then the new actor for the instante under modification:
    1. update actor of instance _fwd11_ from _Forward3x3.cal_ to  _Forward2x2.cal_
    2. update actor of instance _aln_ from _Align3x3.cal_ to  _Align2x2.cal_

Now the dataflow model _Roberts.xdf_ should be implementing the desired functionality, by convolving input pixels with the convolution matrices in order to extract spatial gradients and, in turn, detect edges of the incoming image.

![roberts-dataflow](https://i.imgur.com/zLR5hDs.jpg)
Roberts dataflow model.

### Simulating Dataflow Models
In this section we are going to see how to simulate dataflow models within the Orcc environment. This feature could be very powerful since it allows users to analyze applications at a very high level of abstraction.

Simulating dataflow models requires special actors serving as source and destination of the flow of tokens. Basically, simulation can be obtained by employing standard or native actor instances. The former are actors fully specified in CAL. The latter are actors not fully specified in CAL, but with references to the underlying Java source code, in order to achieve complex task (e.g. open or display an image).

In this tutorial we are going to see both examples of simulations with native or standard actor instances.

In order to simulate a dataflow model it is then necessary to bound it with source and destination actors. At this purpose, two additional dataflow models are present in the _src/baseline_ folder: _TestbenchDummy.xdf_ and _Testbench.xdf_. The former employs only standard actors, while the latter adopts also native actors. To analyze more in details testbenches double click on them. In the graphical interface will appear a dataflow co
mposed with two blue vertices, that are actor instances, and one yellow vertex, that is a network instances: it instantiates a dataflow in turn. As usual, by double clicking on one instance the corresponding entity will be opened: a CAL actor for blue instances, an XDF network for yellow instances.

![testbench-dataflow](https://i.imgur.com/PTiYOU1.jpg)
Testbench dataflow model.

#### Simulating with dummy source and destination (MISSING MODULES IN FOLDERS)
To simulate the dataflow model with dummy source and destination actors, it is not required any additional input for the model, but all the information embedded within the source actor _SourceImageDummy.cal_. By double clicking on it, it is possible to see how, after sending from port _SizeOfImage_ the size of image in terms of width and heigth (by default set to 300 and 225 pixels respectively), this actor simply send from port _Y_ pixels with value equal to the corresponding image row index. The destination actor instead is simply in charge of printing the value of the pixel received from port _Y_ in the console, together with its row and column indeces. In order to work properly, it also requires receiving the size of image from port _SizeOfImage_ before receiving pixels.

To launch a new dataflow simulation, it is necessary to create an Eclipse run configuration:

1. **Create a new run configuration** Run > Run configurations..., double click on Orcc simulation;
    1. **Name** choose a name for the configuration ("New Configuration" by default, set it to "Dummy Simulation");
    2. **Project** select _Tutorials_ project;
    3.  **Simulator** select _Visitor interpreter and debugger_ simulator;
    5.  **Options**:
        1.  **XDF name** select the name of the testbench you want to simulate (in this case _TestbenchDummy.xdf_);
        2. **Input stimulus** select one random file (it will be not used during this kind of simulation);
        3. **Output file directory** select an output file directory where the output files (if any) will be stored;
2. **Run** the configuration.

At this point, the simulation will start and in the console will appear the corresponding output. The same output can be analyzed and checked in order to understand if everything is going well in the developed system. Other options are also available and allow users to provide a golden reference to some outputs, to perform casts on data, to profile the execution or to extract execution traces. Further documentation related to these additional simualtion features is available on the [Orcc website](https://orcc.sourceforge.net/).

#### Simulating with native source and destination
The simulation with native source and destination actor instances is quite similar to the one with dummy source and destination. The only difference is that native actors are capable of actually read files and display images in order to accomplish the original goal of the test case.

It is necessary to launch also in this case a dataflow simulation. Like in the previous simulation, an Eclipse run configuration has to be created:

1. **Create a new run configuration** Run > Run configurations..., double click on Orcc simulation;
    1. **Name** choose a name for the configuration ("New Configuration" by default, set it to "Real Simulation");
    2. **Project** select _Tutorials_ project;
    3.  **Simulator** select _Visitor interpreter and debugger_ simulator;
    5.  **Options**:
        1.  **XDF name** select the name of the testbench you want to simulate (in this case _Testbench.xdf_);
        2. **Input stimulus** select the _gear.bin_ input file within the directory _referece/baseline_ of the _Tutorials_ folder (note that now this file will be read by the _SourceImage.cal_ actor and sent to the _dut_ netwrok instance);
        3. **Output file directory** select an output file directory where the output files (if any) will be stored;
2. **Run** the configuration.

After a couple of seconds a display window will appear, launched by the _ShowImage.cal_ actor, in order to show the edges of the image detected with the Sobel algorithm.

![original-image-example](https://i.imgur.com/kV6ZAn0.png)
Original image.

![sobel-processed-example](https://i.imgur.com/PWQIWAX.png)
Processed image after Sobel edge detection.

By simply changing the _dut_ network instance from Sobel to Roberts it is possible to simulate the Roberts dataflow and obtain the resulting edge image:

1. **Change** the _dut_ **network instance**
    1. **Open the tesbench** by double clicking on _Testbench.xdf_ file;
    2. **Update the network instance**
        1. Right click on the _dut_ network instance > Set/Update refinement;
        2. Choose the baseline.Roberts network as new entity for the instance;
2. **Change** the simulation **input file**
    1. Run > Run configurations..., select the "Real Simulation" run configuration;
    2. In the Input stimulus field browse to the _Roberts.bin_ file in order to update it;
3. **Run** the configuration.

As for the Sobel dataflow, a display window will appear showing the edges detected by the Roberts algorithm.

![roberts-processed-example](https://i.imgur.com/JBCkJkF.png)
Processed image after Roberts edge detection.

## Try it yourself!
It is possible to derive other edge detection dataflow and to try them with the same testbench used for Sobel and Roberts.

### Change Kernel
There are two other simple edge detectors that are basically equal to Sobel but they adopt different kernels to calculate the spatial gradients. These detectors are called Prewitt and Scharr.

The Prewitt gradient calculation kernels are:

$$
G_x=
\begin{bmatrix}
+1 & 0 & -1 \\
+1 & 0 & -1 \\
+1 & 0 & -1
\end{bmatrix},
G_y=
\begin{bmatrix}
+1 & +1 & +1 \\
0 & 0 & 0 \\
-1 & -1 & -1
\end{bmatrix}
$$

The Scharr gradient calculation kernels:

$$
G_x=
\begin{bmatrix}
+3 & 0 & -3 \\
+10 & 0 & -10 \\
+3 & 0 & -3
\end{bmatrix},
G_y=
\begin{bmatrix}
+3 & +10 & +3 \\
0 & 0 & 0 \\
-3 & -10 & -3
\end{bmatrix}
$$

Note that the multiplication by 3 for the Scharr kernels could be obtained in different ways: it is possible to create a new actor acting as multiplier or to use the already available actors (e.g. shifter and adder).

### Change Algorithm
Another possiblity to derive additional edge detectors is to consider algorithms that do not take as edge of the image the spatial gradient directly, but that apply a threshold to it and normalize the outputs to black (0) and white (255) values depending on the fact that the corresponding input is below or above the threshold respectively. A typical value for the threshold is 80.

Note that to derive thresholded edge detectors it is necessary to create a new actor in charge of performing the comparison of the spatial gradient with the threshold and the corresponding normalization to 0 or 255.

**Next tutorial:** baseline feature (ADD LINK).

repository: mdc-suite/mdc

gha_language: Java

gha_license_id: NOASSERTION

repo_name: mdc-suite/mdc


text:
# Radio Reference DSDPlus Parser

This app allows you to take [Radio Reference](https://www.radioreference.com/) CSV files and easily parse them to DSDPlus formats.

## Installation

#### Windows
Download the precomplie binary and run the EXE file. This will start the GUI.

[Download](https://github.com/jpekala/RadioReferenceParser/raw/master/windows/dsdplus_parser.exe)

#### Linux
Clone this repo and run the dsdplus_parser.py file

```bash
git clone https://github.com/jpekala/RadioReferenceParser.git
cd RadioReferenceParaser
python3 dsdplus_parser.py
```

#### MacOS
In progress

## Usage

## TODO List
- [ ] Fix OTA Channel Number (increase per freq/per site number)
- [ ] Create a PIP package
- [ ] Create a Standalone MacOS Package
- [ ] Add additioal parsers for DSDPlus from Radio Reference data
- [ ] Provide more in-depth documentation

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

## License
[MIT](https://github.com/jpekala/RadioReferenceParser/blob/master/LICENSE)

repository: jpekala/RadioReferenceParser

repo_name: jpekala/RadioReferenceParser


text:
# movie-quotes [![Build Status](https://travis-ci.org/vilaboim/movie-quotes.svg?branch=master)](https://travis-ci.org/vilaboim/movie-quotes)

> Get popular movie quotes

![](yoda.gif)

The name list is just a [JSON file](movie-quotes.json) and can be used wherever.

**Accepting PRs for additional quotes.**

## Install

```
$ npm install --save movie-quotes
```

## Usage

```js
const movieQuotes = require('movie-quotes');

movieQuotes.random();
//=> 'Max'
```

## API

### .all

Type: `array`

Top 100 best movie quotes according AFI.

### .random()

Type: `function`

Random movie quote.

## CLI

```
$ npm install --global movie-quotes
```

```
$ movie-quotes --help

  Examples
    $ movie-quotes
    "Show me the money!"  Gone with the Wind
    "I'm gonna make him an offer he can't refuse." The Godfather
    ...

repository: bogodars/movie-quotes

repo_name: bogodars/movie-quotes


text:
### [CVE-2019-5585](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5585)
![](https://img.shields.io/static/v1?label=Product&message=FortiClientMac&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Vulnerability&message=Denial%20of%20service&color=brighgreen)

### Description

An improper access control vulnerability in FortiClientMac before 6.0.5 may allow an attacker to affect the application's performance via modifying the contents of a file used by several FortiClientMac processes.

### POC

#### Reference
- https://fortiguard.com/advisory/FG-IR-19-003

#### Github
No PoCs found on GitHub currently.

repository: trickest/cve

gha_language: HTML

repo_name: trickest/cve


text:
# View Of portfolio

# Live View of this reactapp
Click me

# Technology Stack used in this project
* react-mdl UI components
* Reactjs routing
* Gradient background
* Google font api for icons

## Commands you will need to run this project
* `npx create-react-app whatever`
* `npm install react-router-dom`
* ` npm install @material-ui/core`

This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).

## Available Scripts

In the project directory, you can run:

### `npm start` on Windows
### `yarn start` on MACOS

Runs the app in the development mode.

Open [http://localhost:3000](http://localhost:3000) to view it in the browser.

The page will reload if you make edits.

You will also see any lint errors in the console.

### `npm test`

Launches the test runner in the interactive watch mode.

See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.

## Author

* **Krishna kakade** -[krishnadevz](https://www.github.com/krishnadevz)

# Follow Me for regular thoughts
Krishnadevz

repository: krishnadevz/ReactPortfolio

repo_name: krishnadevz/ReactPortfolio


text:
[![Actions Status](https://github.com/beamkenya/ex_jenga/workflows/Elixir%20CI/badge.svg)](https://github.com/beamkenya/ex_jenga/actions) ![Hex.pm](https://img.shields.io/hexpm/v/ex_jenga) ![Hex.pm](https://img.shields.io/hexpm/dt/ex_jenga) [![Coverage Status](https://coveralls.io/repos/github/beamkenya/ex_jenga/badge.svg?branch=develop)](https://coveralls.io/github/beamkenya/ex_jenga?branch=develop)

# ExJenga :dollar: :pound: :yen: :euro:

> Payment Library for Equity Bank's Jenga API in Kenya. Let us get this :moneybag:

## Table of contents

- [Features](#features)
- [Installation](#installation)
- [Configuration](#configuration)
- [Documentation](#documentation)
- [Contribution](#contribution)
- [Contributors](#contributors)
- [Licence](#licence)

## Features

- [x] Send Money
- [x] Send Money Queries
- [ ] Receive Money
- [ ] Receive Money Queries
- [ ] Buy Goods, Pay Bills, Get Airtime
- [ ] Airtime
- [x] Reg Tech: KYC, AML, & CDD API
- [ ] Account Services
- [ ] Forex Rates

## Installation

If [available in Hex](https://hex.pm/docs/publish), the package can be installed
by adding `ex_jenga` to your list of dependencies in `mix.exs`:

```elixir
def deps do
  [
    {:ex_jenga, "~> 0.1.0"}
  ]
end
```

## Configuration

Create a copy of `config/dev.exs` or `config/prod.exs` from `config/dev.sample.exs`
Use the `sandbox` key to `true` when you are using sandbox credentials, chnage to `false` when going to `:prod`

### Jenga API (Equity)

Jenga API link: https://developer.jengaapi.io

Add below config to dev.exs / prod.exs files.

This asumes you have a clear understanding of how [Jenga API works](https://developer.jengaapi.io/reference).

Read more about how the token is generted here: https://developer.jengaapi.io/docs/developer-quickstart .

The `private_key` is used to generate the `signature`. READ More: https://developer.jengaapi.io/docs/generating-signatures .

```elixir
config :ex_jenga,
    jenga: [
        api_key: "=======API KEY HERE ========",
        username: "=====USERNAME HERE=====",
        password: "=======PASSWORD HERE =======",
        private_key: "=======PRIVATE KEY HERE ======="
    ]
```

## Documentation

The docs can be found at [https://hexdocs.pm/ex_jenga](https://hexdocs.pm/ex_jenga).

## Contribution

If you'd like to contribute, start by searching through the [issues](https://github.com/beamkenya/ex_jenga/issues) and [pull requests](https://github.com/beamkenya/ex_jenga/pulls) to see whether someone else has raised a similar idea or question.
If you don't see your idea listed, [Open an issue](https://github.com/beamkenya/ex_jenga/issues).

Check the [Contribution guide](contributing.md) on how to contribute.

## Contributors

Auto-populated from:
[contributors-img](https://contributors-img.firebaseapp.com/image?repo=beamkenya/ex_jenga)

## Licence

ExJenga is released under [MIT License](https://github.com/appcues/exsentry/blob/master/LICENSE.txt)

[![license](https://img.shields.io/github/license/mashape/apistatus.svg?style=for-the-badge)](#)

gha_language: Elixir


text:
A Xamarin.Android binding of the [AltBeacon Android Beacon Library](https://github.com/AltBeacon/android-beacon-library). This library allows Android apps to interact with BLE beacons in accordance with the open and interoperable [AltBeacon proximity beacon protocol specification](https://github.com/AltBeacon/spec).

##What does this library do?

Allows Android apps to interact with BLE beacons.

## Reference Application

For a simple working example of Ranging BLE beacons with Xamarin.Android, check out the [Sample Application](https://github.com/chrisriesgo/Android-AltBeacon-Library/tree/master/Samples/Android/AndroidAltBeaconLibrary.Sample).

repository: JabusKotze/Parq-Xamarin

repo_name: JabusKotze/Parq-Xamarin


text:
---
title: "Transfer of Crown-owned residential red zone land management underway"
date: "2020-07-01"
---
![Christchurch red zone](redzone.png)

Christchurch’s transition to local leadership takes a big step forward today, with the management of about 6,000 red zone properties transferring from Land Information New Zealand (LINZ) to Christchurch City Council (CCC)
CCC is now responsible for managing Crown-owned residential red zone land in flatland areas – Brooklands, Southshore/South New Brighton and the Ōtākaro Avon River Corridor. LINZ will continue to manage the Port Hills red zone.

This means CCC is now the contact for red zone flatlands maintenance, plant and animal pest management, security, traffic management, land access and permanent land use.

LINZ CE Gaye Searancke says the flatlands management transfer is the culmination of nine years’ work, and CCC and LINZ have worked closely over recent months to ensure a smooth transition.

“We’ve covered a lot of uncharted territory since taking over responsibility for the Crown-owned red zone land  in 2015 – continuing the work started by the Canterbury Earthquake Recovery Authority.

“Since then, we’ve coordinated the demolition of about 300 houses, cleared and grassed thousands of properties and been responsible for keeping 7,700 properties safe and secure.

“We’ve also supported the local community’s activation of this area, through facilitating more than 130 transitional land use projects. LINZ will continue to be the first port of call for these temporary land uses, until we transfer ownership of the land.”

Under the 2019 Global Settlement Agreement, the ownership and management of Crown-owned red zone land is being progressively transferred from the Crown to CCC. The transfer of flatland management is the first step in this process, with ownership transferring separately in bundles over the next year.

“This is a major milestone and I’m proud of how we’ve looked after this land that is about four times the size of Christchurch’s Hagley park,” Ms Searancke says.

“It’s now a park-like area that has the potential to become a true asset for the city and something all Cantabrians can be proud of.”

repository: CathalGCurtin/gatsbylinzwebsitetest

repo_name: CathalGCurtin/gatsbylinzwebsitetest


text:
### [CVE-2017-4898](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-4898)
![](https://img.shields.io/static/v1?label=Product&message=Workstation%20Pro%2FPlayer&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Vulnerability&message=DLL%20Hijack&color=brighgreen)

### Description

VMware Workstation Pro/Player 12.x before 12.5.3 contains a DLL loading vulnerability that occurs due to the "vmware-vmx" process loading DLLs from a path defined in the local environment-variable. Successful exploitation of this issue may allow normal users to escalate privileges to System in the host machine where VMware Workstation is installed.

### POC

#### Reference
- http://www.vmware.com/security/advisories/VMSA-2017-0003.html

#### Github
- https://github.com/ivildeed/vmw_vmx_overloader


text:
# Engineer your diet.
Easily track your daily intake of 150 nutrients critical to your body's wellbeing.

## Getting Started:
1. Make sure you've got nodejs installed.  You can easily find guides elsewhere to do this.
2. Clone this repo & `cd` into the root directory
3. Install necessary npm packages using `npm install`.
4. `npm start` to start the webpack-dev-server.
5. Navigate to `localhost:8080`.
6. To build (eg. for production), run `npm run build`

## Suggestions on how to make this better?
Fork and submit a PR as usual.

repository: codeocelot/soylent-industries

repo_name: codeocelot/soylent-industries


text:
# NSE Livedata from excel
We can fetch the NSE live data using API from the excel itself, built python exe based application which is responsible to fetch live market data from NSE India such as LiveMarket, PreMarket, NseHolidays, NseFNO, Symboldata, and so on... Here, we automate excel itself for live data extraction using xlwings. Here demonstrated with python tk interface and built exe based application _NSEApplication.exe_.

Currenly script/ application collect NSE data as __Live Market Data, Pre Market Data, Symbol List, FNO Matket Data__ and __Market Holiday Data__ from excel itself in opened excel file.

  <img src="https://img.shields.io/static/v1?label=python&message=v3.9&color=faff00" alt="Python 3.9"

  [![Windows](https://img.shields.io/badge/WindowsOS-000000?style=flat-square&logo=windows&logoColor=white)](https://www.microsoft.com/en-in/)
  [![Visual Studio Code](https://img.shields.io/badge/VSCode-0078d7.svg?style=flat-square&logo=visual-studio-code&logoColor=white)](https://code.visualstudio.com/)
  [![Jupyter](https://img.shields.io/badge/Jupyter-F37626.svg?style=flat-square&logo=Jupyter&logoColor=white)](https://jupyter.org/)
  [![Pycharm](https://img.shields.io/badge/Pycharm-41c907.svg?style=flat-square&logo=Pycharm&logoColor=white)](https://www.jetbrains.com/pycharm/)
  [![Colab](https://img.shields.io/badge/Colab-F9AB00.svg?style=flat-square&logo=googlecolab&logoColor=white)](https://colab.research.google.com/?utm_source=scs-index/)
  [![Spyder](https://img.shields.io/badge/Spyder-838485.svg?style=flat-square&logo=spyder%20ide&logoColor=white)](https://www.spyder-ide.org/)

---
## :books: Introduction NSE Market segments
- Pre-market -->

      ['NIFTY 50': 'NIFTY', 'NIFTY BANK': 'BANKNIFTY', 'EMERGE': 'SME', 'SECURITIES IN F&O': 'FO', 'OTHERS': 'OTHERS', 'ALL': 'ALL']

- Live Market -->

      'Broad Market Indices': ['NIFTY 50', 'NIFTY NEXT 50', 'NIFTY MIDCAP 50', 'NIFTY MIDCAP 100', 'NIFTY MIDCAP 150', 'NIFTY SMALLCAP 50', 'NIFTY SMALLCAP 100', 'NIFTY SMALLCAP 250',
                              'NIFTY MIDSMALLCAP 400', 'NIFTY 100', 'NIFTY 200', 'NIFTY500 MULTICAP 50:25:25', 'NIFTY LARGEMIDCAP 250'],
      'Sectorial Indices': ['NIFTY AUTO','NIFTY BANK', 'NIFTY ENERGY', 'NIFTY FINANCIAL SERVICES', 'NIFTY FINANCIAL SERVICES 25/50', 'NIFTY FMCG', 'NIFTY IT', 'NIFTY MEDIA', 'NIFTY METAL',
                           'NIFTY PHARMA', 'NIFTY PSU BANK', 'NIFTY REALTY', 'NIFTY PRIVATE BANK'],
      'Others': ['Securities in F&O', 'Permitted to Trade'],
      'Strategy Indices': ['NIFTY DIVIDEND OPPORTUNITIES 50', 'NIFTY50 VALUE 20', 'NIFTY100 QUALITY 30', 'NIFTY50 EQUAL WEIGHT', 'NIFTY100 EQUAL WEIGHT', 'NIFTY100 LOW VOLATILITY 30',
                          'NIFTY ALPHA 50', 'NIFTY200 QUALITY 30', 'NIFTY ALPHA LOW-VOLATILITY 30', 'NIFTY200 MOMENTUM 30'],
      'Thematic Indices': ['NIFTY COMMODITIES', 'NIFTY INDIA CONSUMPTION', 'NIFTY CPSE', 'NIFTY INFRASTRUCTURE', 'NIFTY MNC', 'NIFTY GROWTH SECTORS 15', 'NIFTY PSE', 'NIFTY SERVICES SECTOR',
                          'NIFTY100 LIQUID 15', 'NIFTY MIDCAP LIQUID 15']}

- Market Holidays -->

      ['Trading', 'Clearing']

---

## :bulb: Demo
- Below is the demonstrated sample at my local environments/ system with platform as __Visual Studio Code__ (V1.61.2) on OS __Windows 10__.

https://user-images.githubusercontent.com/41562231/139540740-b667458d-8238-411b-a663-f6444a1cac7b.mp4

#### :pencil2: _Input_ -
- Run python code __app.py__ and excel will open with naming conventition as _NSE_data_DDMMYYYY_. (Pre-requesite microsoft excel is installed on OS system)
- You are able to write _Keys_ as mentioned in excel first sheet. If Key name is matched, then only you are able to fetch the data, else no data is captured in real time from NSE website https://www.nseindia.com/

#### :bookmark: _Output_ -
- `Data keys`

  ![MainScreen](https://user-images.githubusercontent.com/41562231/139541491-fa2cd7fc-322d-468e-bdb9-819de0b6af6a.JPG)

- `NSE Live-market data`

  ![LiveMarket](https://user-images.githubusercontent.com/41562231/139541452-77960989-8a86-4edc-955b-51474e202ce0.JPG)

- `NSE Pre-market data`

  ![PreMarket](https://user-images.githubusercontent.com/41562231/139541416-85dddccb-b015-4760-bdc8-ba9855735ddc.JPG)

- `NSE FnO market data`

  ![FnO](https://user-images.githubusercontent.com/41562231/139541350-75b5e377-5852-422a-bd7b-13174a83db3b.JPG)

---

## :wrench: Installation
- Create __virtual environment__ `python -m venv VIRTUAL_ENV_NAME` and activate it `.\VIRTUAL_ENV_NAME\Scripts\activate`.
- Install necessary library for this project from the file `requirements.txt` or manually install by `pip`.
  ```
  pip install -r requirements.txt
  ```
  To create project library requirements, use below command,
  ```
  pip freeze > requirements.txt
  ```
- In code, write your browser user-agent in headers before proceeding the script.
  ```python
  import requests

  def __init__(self):
        self.headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36'}
        self.session = requests.Session()
        self.session.get('http://nseindia.com', headers=self.headers)
  ```
  __How to capture the user-agent and API from NSE?__ _Refers below steps/ tutorial._

    1. Open NSE website https://www.nseindia.com/ and __inspect__ (Right click __->__ Inspect).
    2. Go to __Network__ and select www.nseindia.com under __Name__.
    3. Go to __Headers__ and copy the __user-agent__ value from bottom.

- Now run python file.
  ```
  python app.py
  ```
- Read more about __xlwings__ package and usages [__Excel automation__](https://www.xlwings.org/)

#### :computer: _py-to-exe conversion_ -
- Need to install library [__pyinstaller__](https://pypi.org/project/pyinstaller/) `pip install pyinstaller`.
- Run below command (VS Code terminal) for _python file to exe conversion_. (Recommended: merge api.py code to app.py / make single python file)
  ```
  pyinstaller -i .\icon.ico -n NseAppication -w -F --log DEBUG .\app.py
  ```
    __-i__ icon , __-n__ application name , __-w__ windows based , __--log DEBUG__ logging if error occures , __app.py__ python file
- For __py to exe conversion__, refers [pyinstaller documentation](https://pyinstaller.readthedocs.io/en/stable/usage.html)

---

## :bookmark: Directory Structure
```bash
    .                                   # Root directory
    ├── app.py                          # Python code
    ├── api.py                          # Python code
    ├── icon.ico                        # Icon file
    ├── build                           # build folder generated due to py-to-exe conversion
    ├── dist                            # dist folder generated due to py-to-exe conversion
    │   ├── NSE_data_0102021.xlsx       # Outout excel working live file created after launching exe application
    │   └── NSEApplication.exe          # Output exe application created after py-to-exe conversion (Not uploaded exe file due to application size  )
    ├── NseApplicaiton.spec             # Specification file generated due to py-to-exe conversion
    ├── requirements.txt                # Project requirements library with versions
    ├── README.md                       # Project README file
    └── LICENSE                         # Project LICENSE file
```

---

## :iphone: Connect with me
`You say freak, I say unique. Don't wait for an opportunity, create it.`

__Let’s connect, share the ideas and feel free to ping me...__

    <img align="center"<EMAIL_ADDRESS>alt="kunalkolhe3" height="30" width="40"/>
    <img align="center"<EMAIL_ADDRESS>alt="kunalkolhe3" height="30" width="40"/>
    <a<EMAIL_ADDRESS>target="blank"><img align="center"<EMAIL_ADDRESS>alt="kunalkolhe333" height="30" width="40"/>
    <img align="center"<EMAIL_ADDRESS>alt="kunalkolhe333" height="30" width="40"/>
    <img align="center"<EMAIL_ADDRESS>alt="kunal.kolhe.98" height="30" width="40"/>
    <img align="center"<EMAIL_ADDRESS>alt="kkunalkkolhe" height="30" width="40"/>


text:
# Releasing

Check the version number on `config/initializers/version.rb` then start the release for the next version.
Remember to follow [semantic versioning](config/initializers/version.rb).

```sh
$ git flow release start <version>
```

Update `config/initializers/version.rb` with the new version number and commit your changes.

```sh
$ git commit -am "Bump version to <version>"
$ git flow release finish <version>
```

Indicate changes when prompted and then push to remotes

```sh
$ git push origin master
$ git push origin develop
$ git push --tags
```

repository: gerson/generapp

repo_name: gerson/generapp


text:
# Geolocation [![Latest Stable Version](https://poser.pugx.org/midnite81/geolocation/version)](https://packagist.org/packages/midnite81/geolocation) [![Total Downloads](https://poser.pugx.org/midnite81/geolocation/downloads)](https://packagist.org/packages/midnite81/geolocation) [![Latest Unstable Version](https://poser.pugx.org/midnite81/geolocation/v/unstable)](https://packagist.org/packages/midnite81/geolocation) [![License](https://poser.pugx.org/midnite81/geolocation/license.svg)](https://packagist.org/packages/midnite81/geolocation) [![Build](https://travis-ci.org/midnite81/geolocation.svg?branch=master)](https://travis-ci.org/midnite81/geolocation) [![Coverage Status](https://coveralls.io/repos/github/midnite81/geolocation/badge.svg?branch=master)](https://coveralls.io/github/midnite81/geolocation?branch=master)

A IP Info DB integration for Laravel

# Versioning

|Version|Branch|PHP|Laravel|Notes|
|---|---|---|---|---|
|^3.0|master|\>=7.4|\>=6|Latest release, facade has been removed and guzzle dependency has been updated to version 7|
|^2.0|v2|\>=5.6|\>=5|Corrects issues with composer 2.0|
|^1.0|v1|\>=5.6|\>=5|First release - not compatible with composer 2.0|

# Installation

If installing on anything below PHP 7.4, please checkout the v2 branch and follow the
instructions on the readme for that branch.

This package requires PHP 7.4+, and includes a Laravel Service Provider.

To install through composer include the package in your `composer.json`.

    "midnite81/geolocation": "^3.0"

Run `composer install` or `composer update` to download the dependencies, or you can run
`composer require midnite81/geolocation`.

## Laravel 5 Integration

This package makes use of Laravel's auto package loader, so you shouldn't need to add this
to your config/app.php file. However, if you've disabled this then you'll need to  add the
GeoLocation service provider to the list of service providers
in `app/config/app.php`.

    'providers' => [

      Midnite81\GeoLocation\GeoLocationServiceProvider::class

    ];

Publish the config and migration files using
`php artisan vendor:publish --provider="Midnite81\GeoLocation\GeoLocationServiceProvider"`

# Configuration File

Once you have published the config files, you will find a `geolocation.php` file in the
`config` folder. You should look through these settings and update these where necessary.

# Env

You will need to add the following to your `.env` file and update these with your own
settings

    GEOLOCATION_API_KEY=<key>
    GEOLOCATION_CACHE=<duration_in_minutes>

# Get your GeoLocation API Key

Before using this package you must get an API Key from IP Info DB. Please access
http://ipinfodb.com/register.php and after registering and confirming your email address
your api key will be show. Please copy and set to your `.env` file on
`GEOLOCATION_API_KEY` option.

# Example Usage

    use Midnite81\GeoLocation\Contracts\Services\GeoLocationInterface;
    use Illuminate\Http\Request;

    public function index(GeoLocationInterface $geo, Request $request)
    {
        $ipLocation = $geo->getCity($request->ip());

        // if you do $geo->get($request->ip()), the default precision is now city

        // $ipLocation is an IpLocation Object

        echo $ipLocation->ipAddress; // e.g. <IP_ADDRESS>

        echo $ipLocation->getAddressString(); // e.g. London, United Kingdom

        // the object has a toJson() and toArray() method on it
        // so you can die and dump an array.
        dd($ipLocation->toArray());

    }

# Methods on IpLocation

    $ipLocation->getStatusCode(); // returns status code of request (e.g. 200)
    $ipLocation->getStatusMessage(); // returns any status message to go with code
    $ipLocation->getIpAddress(); // the geolocation IP requested
    $ipLocation->getCountryCode(); // country code of the IP e.g. GB
    $ipLocation->getCountryName(); // country name of the IP e.g. United Kingdom
    $ipLocation->getRegionName(); // region name of the IP e.g. England
    $ipLocation->getCityName(); // city name of the IP e.g. London
    $ipLocation->getZipCode(); // postcode of the IP e.g. SE01 1AA
    $ipLocation->getPostCode(); // postcode of the IP e.g. SE01 1AA
    $ipLocation->getLatitude(); // latitude of the IP e.g. 53.4030
    $ipLocation->getLongitude(); // longitude of the IP e.g. -1.201
    $ipLocation->getTimeZone(); // timezone of the IP e.g. +01:00
    $ipLocation->getAddressString(); // gets the city, region and country as a string
    $ipLocation->toArray(); // returns object as an array
    $ipLocation->toJson(); // returns object as a json object