text:
## Release Notes
<!-- (for in-app update check) -->
<!-- currentversion: 0.10.2 -->

##### 0.10.2 : Major issue fixes
- Fixed **undraggable window title bar region** (Major issue) ([topic #17](https://github.com/n457/Uncolored/issues/17))
- Fixed **minor information bar unlimited height** (Major issue) ([topic #18](https://github.com/n457/Uncolored/issues/18))
- Updated window title bar with a **responsive behavior in case of small window**

##### 0.10.1 : New Features + minor issue fixes
- Added a **window control button** to toggle (Un)colored window **always on top**
- Insert a **new line in a paragraph** with `Shift + Enter` / `⇧Enter` keyboard shortcut
- Fixed **background gradient** in document theme **Horizon** in case of short content.
- minor UI improvements

##### 0.9.1 : New Features + New Document Themes + Major & minor issue fixes
- Added (Un)colored **multiplatform UI-integrated window controls**, with related settings ([topic #3](https://github.com/n457/Uncolored/issues/3))
- Added text selection basic commands : **select all, copy, paste** ([topic #14](https://github.com/n457/Uncolored/issues/14))
- Added **Table of Content** visualization & **navigation** system
- Added **anchors & anchor links full support** for both HTML & Markdown document formats, with smooth auto-scroll
- Moved Document Information dialog to the bottom right of (Un)colored window, and reduced its dimensions
- Added a **Recount button** in the Document Information dialog
- Added **2 new document themes : Attitude & Horizon**
- Increased in-app documents & White Room documents **font size a bit, for more lisibility**
- Replaced `Uncolored` in-app URL-friendly name by `(Un)colored` **real application name**
- *On OS X*, closing (Un)colored via window controls do the same as `⌘Q` ([topic #8](https://github.com/n457/Uncolored/issues/8))
- *On Linux*, shortened launcher application description
- Improved (Un)colored **speed performance**
- Fixed a content clearing issue
- minor UI text changes & improvements
- minor UI styles changes & improvements
- *Work in Progress* : Emojis insertion via the toolbar

##### 0.8.1 : New Features + Major & minor bug fixes
- Additional ***Embed Content*** tool : insert SoundCloud tracks, Vine videos, and **any kind of other embed content**
- *Open application folder* button in *About* dialog ([topic #10](https://github.com/n457/Uncolored/issues/10))
- *Open settings file folder* button in *Settings* dialog ([topic #10](https://github.com/n457/Uncolored/issues/10))
- Changed default document tab names *Unnamed-X* to a more explicit one *Document-X* ([topic #1](https://github.com/n457/Uncolored/issues/1))
- Darken the background-color of the selected text/content for more visibility ([topic #6](https://github.com/n457/Uncolored/issues/6))
- Special thanks to Thomas Guilleminot in the *About* dialog ([topic #9](https://github.com/n457/Uncolored/issues/9))
- minor UI changes
- **Major issues fixes :**
- Sometimes the paste command doesn't work ([topic #4](https://github.com/n457/Uncolored/issues/4))
- Dropping external assets in the app change app view ([topic #5](https://github.com/n457/Uncolored/issues/5))
- **minor issues fixes :**
- Wrong toolbar positioning when a link is added via the *Apply Link* tool
- Duplicate file name extension when using *"Save As"* on an already saved document

##### 0.7.2 : Bug fixes & Added OS X versions
- Fixed empty priority info dialog
- Fixed empty paragraphs in editor

##### 0.7.1 : Quickfix
- Quickfix update check system

##### 0.7.0 : Features
- **Multiple document tabs** management
- Standard word processor **inline tools** (bold, italic, underline, strikethrough, add link to selection, superscript, subscript, clear format)
- 6 levels **title tools**
- **Block tools** (paragraph, quote, unordered & ordered list, image insertion via URL, **YouTube / Vimeo / Dailymotion / Twitch video** insertion via URL)
- Real-time **emojis** *(from http://www.emoji-cheat-sheet.com/ for now)*
- Export to **HTML documents** with 2 **themes** : GitHub Style & White Room *(more to come)*
- Export to **Markdown documents**
- **Interface themes** system *(1 interface theme for now, but more to come)*
- 41 **mouse & keyboard shortcuts**
- Basic **search / replace** system *(need improvements)*
- Document information display (number of paragraphs, words, etc.)
- Minimalist interface that let you focus on what matters : **the content**
- Update auto-check system (enable / disable in settings)
- Built-in english **quick guide** *(more languages to come)*

repository: enyaxu/Uncolored

repo_name: enyaxu/Uncolored


text:
Cluster Crypto Miner - Web UI & metrics
=======================================

***Project sponsored by [Kontron](https://www.kontron.com)***

***Project Lead and [related articles](https://medium.com/@samnco) by [Samuel Cozannet](https://www.linkedin.com/in/scozannet/)***

What is this ?
--------------

This small demo aims to provides a simple dummy web interface allowing to visualize live data about crypto currency
mining made on Kontron hardware, mining adaptative to hardware load (cpu).

This app has been made to run in a Kubernetes cluster, even if nothing abides you from running it somewhere else,
no code change required. The /metrics url is related to Prometheus / Kubernetes.

On top of the dummy index page, this app provides prometheus metrics that allow for inverse CPU/Memory load calculation.
Exposed metrics are useful if you want to use Kubernetes Horizontal Load Balancing to scale apps based on remaining CPU
capacity of the cluster.

This small project is not production grade and is only made for Mobile World Congress to demo.

Run
---

#### Python script usage (dev mode)

    bin/crypto-miner-webui <MY_WALLET_ID>

#### Run using gunicorn

First set required ENV variable (see below), then :

    gunicorn -b <IP_ADDRESS>:5050 --access-logfile - --error-logfile - crypto_miner_webui.web:app

*or*

    bin/crypto-miner-webui.sh

#### Docker Build and Run

    docker build . -t mwc-miner-metrics:latest

    docker run -p 5050:5050 -e WALLET_ID=<MY_WALLET_ID> mwc-miner-metrics.web:latest

Finally go to [http://localhost:5050/](http://localhost:5050/)

Env variables
-------------

#### Index page related

  - ***WALLET_ID*** <required to display index page> - public wallet key to display wallet data on index page
  - ***WALLET_API_URL*** <optional> - default to `https://etn.spacepools.org/api/stats_address`, url of the mining pool API. etn.spacepools.org is used by default.

#### Kubernetes / Prometheus Metrics related

  - ***EXCLUDE_POD_NAMESPACES*** <optional> - exlude pod namespaces from computed Prometheus CPU/Memory metrics.
  - ***LOAD_INCLUSTER_CONFIG*** <optional> - If set ('ON' or any value), the kubernetes config will be loaded from incluster
in opposition to default config load method (load_kube_config / load_incluster_config).
  - ***GRAFANA_SERVICE_HOST*** <optional> - If set to existing grafana host, displays grafana graph in a section on dashboard.
  - ***GRAFANA_SERVICE_PORT*** <optional> - If set to existing grafana port, displays grafana graph in a section on dashboard.
  - ***GRAFANA_GRAPH_ID*** <optional> - If set to existing grafana id, displays grafana graph in a section on dashboard.

Compatibility
-------------

This client can be used on Linux, OSX systems, or Windows.

This libraries are compatibles with Python 2.7+ and Python 3.X.

Mainly tested on 2.7 and 3.6.

Author and Licence
----------------

Project url : https://github.com/ronhanson/python-crypto-miner-webui

Copyright © 2018 [Ronan Delacroix](www.linkedin.com/in/ronan-delacroix)

This program is released under MIT Licence. Feel free to use it or part of it anywhere you want.

license: MIT

repository: ronhanson/crypto-miner-webui

branch_name: refs/heads/master

extension: md

license_type: permissive

repo_name: ronhanson/crypto-miner-webui


text:
---
Sort: 1
Title: Workshop Overview
NextPage: setup
ExitSign: Setup Environment
---

The environment you are using is one of a set of applications useful in hosting training workshops. These can be supervised workshops run in a classroom like environment, or can be self paced workshops provided via an online interactive learning portal.

In this workshop you will learn how to deploy a learning portal in OpenShift for training anonymous users, where the training can be done at any time.

You will also learn what capabilities this type of deployment gives you and how to configure the deployment.

repository: rodrigo-tsuru/lab-learning-portal

repo_name: rodrigo-tsuru/lab-learning-portal


text:
# oci-quickstart-hpc

<pre>
      `-/+++++++++++++++++/-.`
   `/syyyyyyyyyyyyyyyyyyyyyyys/.
  :yyyyo/-...............-/oyyyy/
 /yyys-                     .oyyy+
.yyyy`                       `syyy-
:yyyo                         /yyy/ Oracle Cloud HPC Cluster Demo
.yyyy`                       `syyy- https://github.com/oracle-quickstart/oci-hpc
 /yyys.                     .oyyyo
  /yyyyo:-...............-:oyyyy/`
   `/syyyyyyyyyyyyyyyyyyyyyyys+.
     `.:/+ooooooooooooooo+/:.`
`
</pre>

High Performance Computing and storage in the cloud can be very confusing and it can be difficult to determine where to start. This repository is designed to be a first step in expoloring a cloud based HPC storage and compute architecture. There are many different configurations and deployment methods that could be used, but this repository focuses on a bare metal compute system deployed with Terraform. After deployment fully independant and functioning IaaS HPC compute cluster has been deployed based on the architecture below.

This deployment is an example of cluster provisioning using Terraform and SaltStack. Terraform is used to provision infrastructure, while Salt is a configuration and cluster management system.

Salt configuration is stored under ./salt directory, containing pillar/ (variables) and salt/ (state) information. Read more about salt in the documentation: https://docs.saltstack.com/en/latest/

## Architecture
![Architecture](images/architecture.png)

## Authentication
terraform.tvars contain required authentication variables

## Operations
Salt commands should be executed from the headnode.
IntelMPI installation: sudo salt '*' state.apply intelmpi

## SSH Key
SSH key is generated each time for the environment in the ./key.pem file.

## Networking
* Public subnet - Headnode acts a jump host and it's placed in the public subnet. The subnet is open to SSH connections from everywhere. Other ports are closed and can be opened using custom-security-list in the OCI console/cli.  All connections from VCN are accepted. Host firewall service is disabled by default.
* Private subnet - All connections from VCN are accepted. Public IP's are prohibited in the subnet. Internet access is provided by NAT gateway.

## Roles
Roles are set in variables.tf as additional_headnode_roles, additional_worker_roles, additional_storage_roles or additional_role_all Additional roles provide ability to install and configure applications defined as Salt states.

Example roles:
* intelmpi: provides configured Intel yum repository and installs IntelMPI distribution
* openmpi: installs OpenMPI from OL repository

## Storage
* Storage node require to be DenseIO shape (NVME devices are detected and configured).

### Filesystems

Storage role servers will be configured as filesystem nodes, while headnode and worker nodes will act as a clients.
* GlusterFS (requires storage role) - To use GlusterFS set storage_type to glusterfs.  Filesystem will be greated as :/gfs and mounted under /mnt/gluster
* BeeGFS (requires storage role) - To use BeeGFS set storage_type to beegfs.  Filesystem will be mounted under /mnt/beegfs

### NFS
* Block volumes - Each node type can be configured with block volumes in the variables.tf
  Headnode will export first block volume as NFS share under /mnt/share (configured in salt/salt/nfs.sls)
  Other block volume attachments need to be configured manually after cluster provisioning.
* FSS - File system service endpoint will be created in the private subnet and mounted on each node under /mnt/fss

repository: HPCNow/oci-hpc

repo_name: HPCNow/oci-hpc


text:
# gem-compact [![Build Status](https://secure.travis-ci.org/godfat/gem-compact.png?branch=master)](http://travis-ci.org/godfat/gem-compact)

by Lin Jen-Shin ([godfat](http://godfat.org))

## LINKS:

* [github](https://github.com/godfat/gem-compact)
* [rubygems](https://rubygems.org/gems/gem-compact)

## DESCRIPTION:

Clean up gems for all the paths, including development dependencies.

This is mainly to cleanup gems installed with `--user-install`, because
`gem cleanup` would not try to cleanup gems installed there, and would also
ignore development dependencies. With `gem compact` it would try to cleanup
everything it could.

This gem might not be needed if we have
[cleanup user gems](https://github.com/rubygems/rubygems/issues/1530)

## REQUIREMENTS:

* Tested with MRI (official CRuby), Rubinius and JRuby.
* RubyGems 2.7.3+ (for `gem cleanup --check-development`)

## INSTALLATION:

    gem install gem-compact

## SYNOPSIS:

    gem compact # For all the gems
    gem compact rake # For a particular gem

## CONTRIBUTORS:

* Lin Jen-Shin (@godfat)

## LICENSE:

Apache License 2.0 (Apache-2.0)

Copyright (c) 2017-2018, Lin Jen-Shin (godfat)

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

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

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

repository: godfat/gem-compact

repo_name: godfat/gem-compact


text:
# Changelog

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

## [1.1.7](https://github.com/PauloGoncalvesBH/serverest/compare/v1.1.6...v1.1.7) (2020-03-26)

## [1.1.6](https://github.com/PauloGoncalvesBH/serverest/compare/v1.1.4...v1.1.6) (2020-03-24)

## [1.1.4](https://github.com/PauloGoncalvesBH/serverest/compare/v1.1.3...v1.1.4) (2020-03-19)

## [1.1.3](https://github.com/PauloGoncalvesBH/serverest/compare/v1.1.2...v1.1.3) (2020-03-19)

## [1.1.2](https://github.com/PauloGoncalvesBH/serverest/compare/v1.1.1...v1.1.2) (2020-03-18)

## [1.1.1](https://github.com/PauloGoncalvesBH/serverest/compare/v1.1.0...v1.1.1) (2020-03-18)

# [1.1.0](https://github.com/PauloGoncalvesBH/serverest/compare/v1.0.3...v1.1.0) (2020-03-18)

### Features

* alteração do timeout do token de segundos para milissegundos ([a0bfd83](https://github.com/PauloGoncalvesBH/serverest/commit/a0bfd83ba1831271bd7a8dbbc64c6d02155154f3))

## [1.0.3](https://github.com/PauloGoncalvesBH/serverest/compare/v1.0.2...v1.0.3) (2020-03-17)

### Bug Fixes

* **serverest:** ajustado caminho do diretorio /data/db.json ([38aed48](https://github.com/PauloGoncalvesBH/serverest/commit/38aed48fa8c3a28426de4a7ddeeb723689378a13))

## [1.0.2](https://github.com/PauloGoncalvesBH/serverest/compare/v1.0.1...v1.0.2) (2020-03-17)

## [1.0.1](https://github.com/PauloGoncalvesBH/serverest/compare/a6571f5e9e0f7a8e80c6b8400acf08063810c8b0...v1.0.1) (2020-03-17)

### Bug Fixes

* ajustado forma de acesso aos arquivos em /data ([11eea2d](https://github.com/PauloGoncalvesBH/serverest/commit/11eea2dc6f891c502a999689e1bc867e6cfca65b))

### Features

* implement CLI conf, rewrite doc and update images ([a6571f5](https://github.com/PauloGoncalvesBH/serverest/commit/a6571f5e9e0f7a8e80c6b8400acf08063810c8b0))

repository: fejsrodrigues/serverest

gha_license_id: MIT

repo_name: fejsrodrigues/serverest


text:
# Hangout Recommendation -- Front end

This project is part of the Hangout Recommendation project of Atelier Development. It’s named as “front end” since this part is meanly the code for constructing the user interface (i.e. the web pages).

This project is generated with [Angular CLI](https://github.com/angular/angular-cli/blob/master/README.md).

## Installation
To get started locally, follow these instructions:

1. Make sure that you have Node 10.13 or later installed. See instructions [here](https://nodejs.org/en/download/)
1. Make sure that you have Angular CLI installed; see instructions [here](https://angular.io/guide/setup-local)
1. Clone to your local computer using `git`
1. Start a terminal in the project folder
1. Using commande `npm install` to install all dependencies
1. Type `ng serve` to compile the project,
1. Once finished, enter the `http://localhost:4200/` in the explorar to see the results

## Usage
### Development server

Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.

### Code scaffolding

Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.

### Build

Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build.

### Running unit tests

Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).

### Running end-to-end tests

Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).

## License
This project  is under the MIT license. See the [LICENSE](https://github.com/CHUht/Hangout_Recommendations_Front_End/blob/master/LICENSE) file for details.

gha_language: CSS


text:
---
layout: post
comments: true
---

## Why use polymorphic association?

What if you want to create a model which you can use in more than one models. There are many
problems in real world where we want to create common interface between models. For example
let's say you are implementing comment feature on site and you want it to for Users, Vendors and Agents model.

<!-- more -->

One possible solution is to create seperate models for each of them which is not an optimized solution. Instead
we can use polymorphic assoication provided by Rails.

## How to use it?
Let's conitue with Comment model. The association can be defined as follow:
```
class Comment < ApplicationRecord
  belongs_to :commentable, polymorphic: true
end

class Vendor < ApplicationRecord
  has_many :comments, as: :commentable
end

class Agent < ApplicationRecord
  has_many :comments, as: :commentable
end
```
Required table structure can be achieved by following migration:

```
class CreateComments < ActiveRecord::Migration[5.0]
  def change
    create_table :comments do |t|
      t.text :body
      t.references :commentable, polymorphic: true, index: true
      t.timestamps
    end
  end
end
```
Now we are ready to use them. We can perform following opeartions on comment model such as:
- Create user comment
  ```
  @user.comments.create(body: "Very Good!")
  ```
  This will store comment with `commentable_type` as `"user"` and `commentable_id` as<EMAIL_ADDRESS>- Find all comments by user
  ```
  @user.comments
  ```

## When to use them?
Whenever you want to share functionality between many models.

For more details please visit [Rails Guide](http://guides.rubyonrails.org/association_basics.html#polymorphic-associations)


text:
---
title: Loaders
path: components/loaders
status: New
source: 'https://github.com/primer/css/tree/main/src/loaders'
bundle: loaders
---

Loaders inform users that an action is still in progress and might take a while to complete.

## Animated ellipsis

Add an animated ellipsis at the end of text with `<span class="AnimatedEllipsis"></span>`.

```html live
<span>Loading</span><span class="AnimatedEllipsis"></span>
```

It can also be used in combination with other components.

```html live
<h2><span>Loading</span><span class="AnimatedEllipsis"></span></h2>
<span class="branch-name mt-2"><span>Loading</span><span class="AnimatedEllipsis"></span></span><br>
<span class="Label mt-3"><span>Loading</span><span class="AnimatedEllipsis"></span></span><br>
<button class="btn mt-3" aria-disabled="true"><span>Loading</span><span class="AnimatedEllipsis"></span></button>
```


text:
# My own plugins for [Munin](http://www.munin-monitoring.org/)

This small repository contains some tiny plugins (written in [Bash](https://www.gnu.org/software/bash/) or [Python](https://www.python.org/)), for the [Munin](http://www.munin-monitoring.org/) monitoring tool.

Despite a [very rich plugin collection](http://gallery.munin-monitoring.org/), I found some that could be missing to someone (well, at least to me), so I decided to write them.
See below for a list of the plugins I wrote (tiny, and probably bugged), and how to install them.

----

## How to install them?
### 1.  Then [install or activate the plugins](http://munin-monitoring.org/wiki/faq#Q:Howdoyouinstallaplugin) you want
Then, pick the plugins you like in [this folder](https://github.com/Naereen/My-Munin-plugins/tree/master/), and [install them or activate them](http://guide.munin-monitoring.org/en/latest/plugin/writing.html#activating-the-plugin).

For instance, if you want to intall the plugin [`number_of_plugins.sh`](https://github.com/Naereen/My-Munin-plugins/tree/master/number_of_plugins.sh), then in the good folder (see step 1) do:

```bash
# Be sure it is executable
chmod 755 number_of_plugins.sh  # By default they should all be executable
# Then symlink it to /etc/munin/plugins/
sudo ln -s ${PWD}/number_of_plugins.sh /etc/munin/plugins/nb_of_plugins
```

You can (and should) then check that the plugin works:

```bash
$ munin-run nb_of_plugins  # Gives the number of plugin currently activated
plugins.value 34
myplugins.value 5
```

You can repeat these two steps for every plugins you want to install.

*Note:* you can also use the provided [`Makefile`](https://github.com/Naereen/My-Munin-plugins/tree/master/Makefile) to install one or all plugins:

```bash
make install__tmux  # Ask for sudo password and install tmux.sh to /etc/munin/plugins/tmux
make install_all    # Ask for sudo password and install all my plugins to /etc/munin/plugins/
```

----

## List of plugins
- [x] Number of open tabs, windows and panes in [tmux](https://tmux.github.io/) ? **Done**, see [`tmux.sh`](https://github.com/Naereen/My-Munin-plugins/tree/master/tmux.sh), it works but works even better if `user` is well configured (see below).
- [x] Number of open graphical programs and open windows in your window manager ? **Done**, see [`gui_windows.sh`](https://github.com/Naereen/My-Munin-plugins/tree/master/gui_windows.sh), it works *only* if `user` is well configured (see below).
- [x] Number of open tabs, windows and panes in [Sublime Text 3](https://www.sublimetext.com/3dev) ? It was harder... I created this tiny ST3 plugin ([`number_tabs.py`](https://github.com/Naereen/My-Munin-plugins/tree/master/number_tabs.py), to install in your [`Packages/User` directory](http://docs.sublimetext.info/en/latest/basic_concepts.html#the-user-package)), in order to have a ST3 command `number_tabs`. Then the script [`number_st3_tabs.sh`](https://github.com/Naereen/My-Munin-plugins/tree/master/number_st3_tabs.sh) calls it with `subl --background --command number_tabs` from the command line... FIXME do it better?
- [x] Number of documents and number of pages printed by my laptop ? **In progress**, see [`nb_printed_documents.sh`](https://github.com/Naereen/My-Munin-plugins/tree/master/nb_printed_documents.sh). FIXME Should already be available from [this list](http://gallery.munin-monitoring.org/printing-index.html)!
- [ ] Number of channels, users, groups and active users for a [Slack team](https://slack.com/) ? **Done** with [this Python file that accesses the Slack API](get-nb-of-connected-slack-users.py) and [this Bash file that prints the config or values](get-nb-of-connected-slack-users.sh).

### Required configuration
Edit your `munin-node` configuration file to specify the configuration.

Currently, [`tmux.sh`](https://github.com/Naereen/My-Munin-plugins/tree/master/tmux.sh) and [`gui_windows.sh`](https://github.com/Naereen/My-Munin-plugins/tree/master/gui_windows.sh) need to be ran from the user `$USER` (ie, you) and not `munin`:

```bash
[tmux]
user lilian   # adapt to your own username

[gui_windows]
user lilian   # adapt to your own username
```

----

## Some screenshots
### [Tmux](tmux.sh)
- On the main page:
![tmux](screenshots/tmux.png)
- On the page for this plugin (with the legend and information on the plots):
![tmux_2](screenshots/tmux_2.png)

## [GUI Windows](gui_windows.sh)
- On the main page:
![gui_windows](screenshots/gui_windows.png)

### [Munin plugins](number_of_plugins.sh)
- On the main page:
![number_of_plugins](screenshots/number_of_plugins.png)
- On the page for this plugin (with the legend and information on the plots):
![number_of_plugins_2](screenshots/number_of_plugins_2.png)

### [Slack stats](get-nb-of-connected-slack-users.sh)
- On the main page:
![get-nb-of-connected-slack-users](screenshots/get-nb-of-connected-slack-users.png)

----

## Wishlist for future plugins ?
I would like to be able to use [Munin](http://www.munin-monitoring.org/) to monitor:

- [ ] ~~Number of songs played from morning and number of songs currently in the waiting list, for my music player [GMusicBrowser](http://gmusicbrowser.org) ? ([by @squentin](https://github.com/squentin/gmusicbrowser/))~~ It seems impossible... (I explored the cli API of GMusicBrowser and it seems unachievable)
- [ ] ~~Number of open tabs and windows in [Firefox](https://www.mozilla.org/en-US/firefox/central/) ?~~ It seems impossible...
- [ ] Volume of the main sound card? Seems possible. But useless?
- [ ] Number of USB peripherics connected? Completely useless.
- [ ] Local [weather](https://github.com/munin-monitoring/contrib/tree/master/plugins/weather/), or temperature of my home?
- [ ] ... And you, do you have any other idea?

----

## :notebook: References ?
- For more details on [Munin](http://www.munin-monitoring.org/), see the official website, [www.munin-monitoring.org](http://www.munin-monitoring.org/), and the documentation, [guide.munin-monitoring.org](http://guide.munin-monitoring.org/).
- A good introductory page is [plugin/writing.html](http://guide.munin-monitoring.org/en/latest/plugin/writing.html) on [the new Munin guide](http://guide.munin-monitoring.org/en/latest/).
- Fore more details on Munin plugins, see first [this page (wiki/plugins)](http://munin-monitoring.org/wiki/plugins), then [the reference](http://guide.munin-monitoring.org/en/latest/reference/plugin.html), and if needed the older pages [PluginShell](http://munin-monitoring.org/wiki/PluginShell), or [PluginConcise](http://munin-monitoring.org/wiki/PluginConcise) or [HowToWritePlugins](http://munin-monitoring.org/wiki/HowToWritePlugins) on [the Munin wiki](http://munin-monitoring.org/wiki/).

----

## Other [self-quantified projects](http://perso.crans.org/besson/self-quantified.en.html) ?
- [uLogMe](https://GitHub.com/Naereen/uLogMe/): keep track of your computer activity throughout the day: visualize your active window titles and the number and frequency of keystrokes, in beautiful and responsive HTML timelines.
- [`selfspy`](https://github.com/gurgeh/selfspy): log everything you do on the computer, for statistics, future reference and all-around fun. I also worked a little bit on [selfspy-vis](https://github.com/Naereen/selfspy-vis), some tools to visualize the data collected by [`selfspy`](https://github.com/gurgeh/selfspy).
- My minimalist dashboard, generated every hour (with [a `crontab` file](https://help.ubuntu.com/community/CronHowto)), with this bash script [`GenerateStatsMarkdown.sh`](https://bitbucket.org/lbesson/bin/src/master/GenerateStatsMarkdown.sh).

----

## :scroll: License ? [![GitHub license](https://img.shields.io/github/license/Naereen/My-Munin-plugins.svg)](https://github.com/Naereen/My-Munin-plugins/blob/master/LICENSE)
[MIT Licensed](https://lbesson.mit-license.org/) (file [LICENSE](LICENSE)).
© [Lilian Besson](https://GitHub.com/Naereen), 2016.

[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://GitHub.com/Naereen/My-Munin-plugins/graphs/commit-activity)
[![Ask Me Anything !](https://img.shields.io/badge/Ask%20me-anything-1abc9c.svg)](https://GitHub.com/Naereen/ama)
[![Analytics](https://ga-beacon.appspot.com/UA-38514290-17/github.com/Naereen/My-Munin-plugins/README.md?pixel)](https://GitHub.com/Naereen/My-Munin-plugins/)

[![ForTheBadge built-with-swag](http://ForTheBadge.com/images/badges/built-with-swag.svg)](https://GitHub.com/Naereen/)

[![ForTheBadge uses-badges](http://ForTheBadge.com/images/badges/uses-badges.svg)](http://ForTheBadge.com)
[![ForTheBadge uses-git](http://ForTheBadge.com/images/badges/uses-git.svg)](https://GitHub.com/)

repository: Naereen/My-Munin-plugins

repo_name: Naereen/My-Munin-plugins


text:
# Summary

* [Read Me](README.md)
* [On Startup](docs/lifecycle/startup.md)
  * [Instantiation Arguments](docs/lifecycle/startup/instantiation.md)
  * [Bootstrapping](docs/lifecycle/startup/bootstrap.md)
* Basics
  * [Publishing](docs/basics/publishing.md)
* Advanced
  * [Data Versioning (Upgrades)](docs/upgrade.md)
* [Glossary](docs/GLOSSARY.md)

repository: zonika/amphora

repo_name: zonika/amphora


text:
# ember-cli-geopattern

Generate colorful geometric SVG patterns from input strings - great for avatars, placeholder images, etc. Uses the [geopattern library](https://github.com/btmills/geopattern) to generate the patterns.

## Installing

```sh
$ ember install ember-cli-geopattern
```

## Usage

Use to generate randomized tiling SVG backgrounds. Use the component in your templates:

```hbs
{{! username = '@davewasmer' }}
{{geo-pattern value=username}}
```

which produces the following pattern, applied as a `background-image` to the component's element:

![@davewasmer pattern](http://i.imgur.com/6YT929j.png)

You can use pattern by itself, by adding a CSS class with a `width` and `height` to the component:

```hbs
{{geo-pattern value=username class='avatar'}}
```

Or you can provide content to go inside the component's element (i.e. appear on top of the patterned background):

```hbs
{{#geo-pattern value=username}}
  Your username is: {{username}}
{{/geo-pattern}}
```

## Options

All the [geopattern library options](https://github.com/btmills/geopattern#api) are available as options to the component itself (i.e. `{{geo-pattern value='foo' generator='hexagons'}}`):

* **color** - the exact CSS hexadecimal color value to use
* **baseColor** - the base CSS hexadecimal color to work from. Think of this like the seed to a random number generator - this won't be the output color, but will be used to generate the output color.
* **generator** - the pattern to use. Available patterns ([view samples](https://github.com/jasonlong/geo_pattern#available-patterns)):
  * `octogons`
  * `overlappingCircles`
  * `plusSigns`
  * `xes`
  * `sineWaves`
  * `hexagons`
  * `overlappingRings`
  * `plaid`
  * `triangles`
  * `squares`
  * `concentricCircles`
  * `diamonds`
  * `tessellation`
  * `nestedSquares`
  * `mosaicSquares`
  * `chevrons`

repository: davewasmer/ember-cli-geopattern

repo_name: davewasmer/ember-cli-geopattern


text:
### [CVE-2018-5157](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-5157)
![](https://img.shields.io/static/v1?label=Product&message=Firefox%20ESR&color=blue)
![](https://img.shields.io/static/v1?label=Product&message=Firefox&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=%3C%2052.8%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Version&message=%3C%2060%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Vulnerability&message=Same-origin%20bypass%20of%20PDF%20Viewer%20to%20view%20protected%20PDF%20files&color=brighgreen)

### Description

Same-origin protections for the PDF viewer can be bypassed, allowing a malicious site to intercept messages meant for the viewer. This could allow the site to retrieve PDF files restricted to viewing by an authenticated user on a third-party website. This vulnerability affects Firefox ESR < 52.8 and Firefox < 60.

### POC

#### Reference
- https://bugzilla.mozilla.org/show_bug.cgi?id=1449898

#### Github
- https://github.com/ARPSyndicate/cvemon

repository: trickest/cve

branch_name: refs/heads/main

gha_language: HTML

repo_name: trickest/cve


text:
Create a readable Debian control file

AppCenter Dashboard was unable to parse your `debian/control` file. Please check it for
formatting errors.

Here is the error we received when trying to parse it:
```
{{ data }}
```

Here is a short sample of what a simple `debian/control` file would look like:
```
Source: com.github.owner.repo
Maintainer: Maintainer Person<EMAIL_ADDRESS>Section: sound
Priority: optional
Standards-Version: 3.0.4
Build-Depends: cmake (>= 2.8),
               debhelper (>= 8.0.0),
               libgee-0.8-dev,
               libgranite-dev,
               libgtk-3-dev (>= 3.14),
               valac (>= 0.18.1)

Package: com.github.owner.repo
Description: Repo
 A super amazing project.
```

repository: Arinzeokeke/houston

repo_name: Arinzeokeke/houston


text:
Tough Day 2.0
=============

Download
========

You can download the latest version from: https://repo.adobe.com/nexus/content/repositories/releases/com/adobe/qe/toughday2

Usage
=====

https://helpx.adobe.com/experience-manager/6-4/sites/developing/using/tough-day.html
https://github.com/adobe/toughday2/wiki

Development
==========

## Building
$  __mvn clean package__ (using the reactor pom)

## Contributing
PRs and issues are welcome, please reade our [CONTRIBUTING guideline](https://github.com/adobe/toughday2/blob/master/CONTRIBUTING.md).

gha_language: Java


text:
# Advanced Usage

Let us continue with the example described in the [Basics](basics.md) page.

## Dependency Injection support

Our ViewModel needs access to a Repository or a Use-Case class in order to be able to fetch the user's notes. In the [Usage](basics.md) section, we setup the repository as a singleton Kotlin `object`, so that we could access it without creating an instance of it.

This is rarely the case in real applications, and it is much more common to split your business logic into different Use-Case classes. Let us create a `GetNotesUseCase` class for our notes app:

```kotlin
class GetNotesUseCase (private val repository: NotesRepository) {
  fun getAllNotes() { ... }
  fun getPinnedNotes() { ... }
  fun getArchivedNotes() { ... }
}
```

Our ViewModel now looks like this:

```kotlin
class NotesListViewModel(
  initialState: NotesListState,
  private val notesUseCase: GetNotesUseCase
): VectorViewModel<NotesListState>(initialState) {
  ...

  suspend fun getNotes() { ... }

  suspend fun getAllNotes() {
    val allNotes = notesUseCase.getAllNotes()
    setState { copy(notes = allNotes) }
  }
  suspend fun getPinnedNotes() { ... }
  suspend fun getArchivedNotes() { ... }
}
```

Due to the addition of an additional dependency in the constructor which Vector can not satisfy *on its own*, we can not instantiate this ViewModel in our Fragment or Activity in the way we did before.

We need to tell Vector how to satisfy this ViewModel's dependencies using a `VectorViewModelFactory`, implemented in this ViewModel's `companion object`.

The `VectorViewModelFactory` interface has a method named `create()`, which is used to create and return an instance of this ViewModel. The `create()` method is supplied with a `ViewModelOwner` parameter, which is a wrapper around the Fragment/Activity owning this ViewModel. It can be used to get access to your dependency injection library's object graph. **You must not store a reference to this owner in your ViewModel, or you will create a memory leak for your Activity or Fragment.**

```kotlin
class NotesListViewModel(
  initialState: NotesListState,
  private val notesUseCase: GetNotesUseCase
): VectorViewModel<NotesListState>(initialState) {
  ...

  companion object: VectorViewModelFactory<NotesListViewModel, NotesListState> {
    fun create(initialState: NotesListState, owner: ViewModelOwner, handle: SavedStateHandle): NotesListViewModel? {
      val usecase = // use the ViewModelOwner parameter to access DI graph and get GetNotesUseCase
      return NotesListViewmodel(initialState, usecase)
    }
  }
}
```

With this factory now implemented, we can get access to our ViewModel again using view model delegates such as `by fragmentViewModel()`. Vector will lookup the factory automatically, and use it to instantiate your ViewModel.

### Koin

If you are using [Koin](https://insert-koin.io), the `create()` method in a `VectorViewModelFactory` looks like this:

```kotlin
fun create(initialState: NotesListState, owner: ViewModelOwner, handle: SavedStateHandle): NotesListViewModel? {
  val usecase = when (owner) {
    is FragmentViewModelOwner -> owner.fragment.get<GetNotesUseCase>() // `get` extension method from Koin
    is ActivityViewModelOwner -> owner.activity.get<GetNotesUseCase>()
  }
  return NotesListViewmodel(initialState, usecase)
}
```

### Dagger and AssistedInject

[Dagger](https://github.com/google/dagger) can generate your DI graph at compile time, but it can not handle constructor paramters only available at run-time such as the `initialState` parameter in our ViewModel. The [AssistedInject](https://github.com/square/AssistedInject) library helps with this, as it automatically generates factories for classes which depend on such runtime parameters.

Usage of AssistedInject and Dagger in Vector looks like this:

```kotlin
class NotesListViewModel @AssistedInject constructor(
  @Assisted initialState: NotesListState,
  private val usecase: GetNotesUseCase
) {

  ...

  @AssistedInject.Factory
  interface Factory {
    fun create(initialState: NotesListState): NotesListViewModel
  }
}

class NotesListFragment: VectorFragment() {
  @Inject
  lateinit var viewModelFactory: NotesListViewModel.Factory

  private val viewModel: NotesListViewModel by fragmentViewModel { initialState, savedStateHandle ->
    viewModelFactory.create(initialState)
  }

  override fun onCreate(...) {
    inject()
    super.onCreate(...)
  }
}
```

We leverage another ViewModel delegate supplied by Vector which accepts a ViewModel producing lambda as an input. When this lambda is supplied, you don't need to implement the `VectorViewModelFactory` interface just to create your ViewModel with custom dependencies.

## Handling process death

### What's process death?

When Android kills your application process while it is in the background, we call it process death. Before your application is killed, `onSaveInstanceState` is called for your Activities/Fragments, which can persist their state in a Bundle. When your application is recreated after a Process Death, you receive this bundle back as an argument as `savedInstanceState` in the `onCreate()` method.

### Doesn't a ViewModel handle this automatically?

No, a ViewModel is built to handle configuration changes, such as rotations or locale changes. It does not survive process death. Any state held by the ViewModel is lost after a process death, and is not recoverable.

The ViewModel is meant to handle state while in-memory, and the owning Fragment/Activity is supposed to save relevant parts of this state when being killed. **You need to use both of these together to correctly handle state restoration**.

### Problems with onSaveInstanceState

This setup works okay-ish when your application is small, or when the state is not complex. The biggest problem with this setup is that it also makes the Activity or Fragment responsible for managing state. Besides, it is difficult to implement this method correctly, and the user must also remember to extract the saved state from the `savedInstanceState` bundle.

### Vector's solution

The [AndroidX ViewModel-SavedState](https://developer.android.com/topic/libraries/architecture/viewmodel-savedstate) library helps with this problem. Vector builds on this library and provides a `SavedStateVectorViewModel`, which uses the `SavedStateHandle` object to help with state persistence.

```kotlin
class NotesListViewModel @AssistedInject constructor(
  @Assisted initialState: NotesListState,
  @Assisted handle: SavedStateHandle,
  private val notesUse: GetNotesUseCase
): SavedStateVectorViewModel(intitialState, savedStatehandle = handle)
```

The `SavedStateVectorVieWModel` has additional methods to help with state persistence: `setStateAndPersist` and `persistState`.
To use them, we need to make sure that our state class implements the `Parcelable` interface. We can use the `@Parcelize` annotation from [Kotlin-Android-Extensions](https://kotlinlang.org/docs/tutorials/android-plugin.html) to automatically generate the implementation for us.

```kotlin
@Parcelize
data class NotesListState(...): Parcelable
```

#### Persisting state

To persist state, we can simply replace the usage of `setState` in our ViewModel with `setStateAndPersist` to make sure that we save the latest state whenever it is modified. This way, whenever the application process is killed we would have already persisted the latest state.

The `setStateAndPersist` method first invokes the state reducer, and then calls `persistState()`. The default implementation of `persistState()` simply takes the state object, and saves it to the `SavedStateHandle` using the key `KEY_SAVED_SAVED` defined in the companion object of `SavedStateVectorViewModel`.

To customize this behaviour, you can override the `persistState()` method and provide your own implementation.

#### Restoring state

To restore the state, the `initialState` method of `VectorViewModelFactory` must be implemented in the ViewModel's companion object:

```kotlin
fun initialState(handle: SavedStateHandle, owner: ViewModelOwner): NotesListState? {
  val persistedState = handle[KEY_SAVED_STATE]
  if (persistedState != null) {
    return persistedState
  } else {
    ...
  }
}
```

repository: haroldadmin/Vector

gha_language: Kotlin

repo_name: haroldadmin/Vector


text:
# Example

## Overview
This folder contains one demo dataset(adult.csv), its synthesized dataset(adult_new.csv), and the utility evaluation report(report.html).

## Report
+ Basic Information

    ![basic](https://user-images.githubusercontent.com/55168900/66983937-4dd0fa00-f0ec-11e9-926d-266a207fef09.png)

    Two indicators are included to display the distribution similarity.
    - *err*, is the relative error of two values. Here it measures the discrepancy of each column between the original data
      (e.g. *adult.csv*) and synthesized data (e.g. *adult_new.csv*).
    - *jsd*, is Jensen-Shannon divergence. It is a measure of the similarity between the probability distribution of the original and synthesized data.

+ Attribute Distribution

    ![attribute](https://user-images.githubusercontent.com/55168900/66983935-4d386380-f0ec-11e9-8e53-e12610cf9542.png)

    It shows the count of values for each column.
    If the column is numerical, its values are split to an array of bins with the same step (e.g. above
    distribution of *age*); If the column is categorical, its values are unique, just like column *race*:

    ![basic_race](https://user-images.githubusercontent.com/55168900/66983938-4e699080-f0ec-11e9-9628-5d558b79c9b7.png)

 + Pair-wise Correlation

   ![pair_wise](https://user-images.githubusercontent.com/55168900/66983939-4f022700-f0ec-11e9-8be5-4457f43e9eb2.png)

   It show a matrix of [mutual information](https://en.wikipedia.org/wiki/Mutual_information) for pair-wise
   column. Its value ranges from 0 (no mutual information) to 1 (perfect correlation).

 + Do Classification Tasks

   Besides the above indicators, you can evaluate them by doing some machine learning tasks, e.g. classification.
   For example, run command `data-evaulate adult.csv adult_new.cv --class-label sex,salary`. It will
   generate the fourth section in the *report.html*, like:

   ![svm](https://user-images.githubusercontent.com/55168900/66984062-8f61a500-f0ec-11e9-9a9e-c9a56c5754c8.png)

   - [*Confusion Matrix*](https://en.wikipedia.org/wiki/Confusion_matrix) can evaluate the accuracy of a
     classification algorithm, e.g. The value *0.18* shows that there are 180 persons whose salary >50K, but classified as <=50K
   - *Misclassification Error Rate* is calculated based on the confusion matrix

repository: SAP/data-synthesis-for-machine-learning

gha_language: Python

repo_name: SAP/data-synthesis-for-machine-learning


text:
**[8theme] Layout Options (single page/post)**

![](//olya.8theme.com/theme-docs/legenda-docs/docs/imgs/single-post-options.png)

*Sidebar Position* - Select the sidebar position, if different from that selected in global 8Theme Options.

*Widget Area* - Choose the widget area you wish to display. You may use the custom one.

*Sidebar width* - Set the width of the sidebar on this page/post.

*Custom header* - Select this option to use different header from the default.

*Show Page Heading* - Enable/Disable page heading.

*Custom logo for this page/post* – Upload a custom logo that will be visible on this page/post only.

*Custom navigation for this page* – Select this option to use different navigation from the default.

*Show revolution slider instead of breadcrumbs and page title* - This option allows you to use the full-width slider instead of page heading.

**[8theme] Product Options**

![](//olya.8theme.com/theme-docs/legenda-docs/docs/imgs/8theme-product-options.png)

*Additional information block* - Use Static Blocks to show additional information for your product. It will be displayed below the product tabs.

*Mark product as "New"* - Add "New" label on product. Make sure that "NEW" icon is enabled in Theme options > Shop.

*Size Guide img* - This option allows you to upload the size guide for a product.

*Upload image for hover effect* - This Image will be shown on product hover if "Product Image Hover" is "Swap" in Theme Options > Products Page Layout.

*Title for custom tab* - Custom tab title.

*Text for custom tab* - Custom tab text.

gha_language: PHP


text:
# frontend-testing
The repository for the code of the series of blog posts about Frontend testing

[![Standard - JavaScript Style Guide](https://cdn.rawgit.com/feross/standard/master/badge.svg)](https://github.com/feross/standard)
[![Build Status](https://travis-ci.org/giltayar/frontend-testing.svg?branch=master)](https://travis-ci.org/giltayar/frontend-testing)

## notes

- QA v developer testing
- diamond of testing vs pyramid
  - e2e
  - integration
  - unit
- work backwards
  - e2e
  - integration
  - unit
  - visual
  - CI integration
- babel-register will transpile code in babelrc
- isomorphic/universal code works in both browser and server

license: Unlicense

repository: veekas/fe-testing-workshop

repo_name: veekas/fe-testing-workshop


text:
# gitlab_init.sh
Shell Script for fast initialization of gitlab repository

## Usage
```sh
sh gitlab_init.sh GITLAB_USER GITLAB_PROJECT
```
__GITLAB_USER__ must contain your username on https://gitlab.com/

__GITLAB_PROJECT__ must contain the project name. The project does not must exists into your gitlab account. When the project not exists it will create a new project.

[![Donate](https://img.shields.io/badge/Donate-PayPal-blue.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=Q98R2QXXMTUF6&source=url)


text:
# [Java format Unicode encoder/decoder](https://www.codewars.com/kata/java-format-unicode-encoder-slash-decoder "https://www.codewars.com/kata/58e2c062542a419083000033")

We need a reusable program to encode/decode text to unicode value as represented in Java and vice-versa.

## Encoder:

> Input: "hola"
> Output: "\u0068\u006f\u006c\u0061"

## Decoder:

> Input: "\u0068\u006f\u006c\u0061"
> Output: "hola"

## Observations:

* Please note that unicode values have always a backslash `\` the letter `u` and 4 hexadecimal digits corresponding to the value in the unicode character set.
* Codewars has some trouble showing non ASCII characters so perhaps you should try it locally first.

repository: ParanoidUser/codewars-handbook

repo_name: ParanoidUser/codewars-handbook


text:
# Small machine learning and AI projects

This repository holds a variety of smaller AI- and ML-related projects I've done, mostly as learning exercises. Each project is self-contained in its own directory.

For simplicity I use Anaconda to configure the runtime environment, which you can recreate with the `environment.yml` files here. If this file is present within a directory then use that to create an environment for that project, otherwise the code will work in the default environment `jkbml` created by `environment.yml` at the root of the repository.

**Instructions.** First make sure that git and Anaconda are installed on your computer. At the command line navigate to where you'd like to put your local copy of the repository, and type:
```
git clone https://github.com/jkboyce/ML.git
```
to download a local copy. Then create your runtime environment by navigating to the directory with the appropriate `environment.yml` file, and type:
```
conda env create -f environment.yml
```
Be sure to use the appropriate version of the .yml file for your platform (environments are *not* cross-platform). Creating the environment may take several minutes as Anaconda downloads the needed files.

Then activate the environment. On Windows you type (`jkbml` is the environment name; substitute a different one as appropriate):
```
activate jkbml
```
or for Linux and OSX:
```
source activate jkbml
```
At this point the environment is configured. Running the code varies by project. The ones that are `.ipynb` files are Jupyter notebooks; run them in the browser by first starting the Jupyter server on the command line:
```
jupyter-notebook
```
which should open a browser window. Then navigate to the `.ipynb` file of interest.

Please send any questions, comments, or bug reports! These are all MIT licensed so hack them up and republish as you wish.

repository: jkboyce/ML

repo_name: jkboyce/ML


text:
---
title: Speaker Series
metadata:
  description: The internal template configured with left and right  sidebars

slug: speaker-series
---

[g-section-extended name=main attributes="class:col-md-12"]
# Speaker Series

The Speaker Series aims to highlight a variety of STEM-related topics through talks open to both the NYUAD community and external attendees.

#Past talks:

September 27th: The Google Memo - Paula Dozsa

Former Google intern Paula Dozsa shared her thoughts on “the Google memo” and its larger implications for women in technology. The talk was attended by both students and faculty members and was followed by a mixer that enabled further discussions.

#Upcoming talks:
November 12th: Female Representation in STEM Fields in the UAE - Leigh Llewellyn Graham

Anthropologist Leigh Llewellyn Graham will share her research and insight into female representation in STEM Fields in the UAE.

[/g-section-extended]

repository: WeSTEM-NYUAD/westem-site

repo_name: WeSTEM-NYUAD/westem-site


text:
---
published: true
---
_Part of the "Real Life. Real Stories." series from Super Monedero._

[Disponible en español](https://supermonedero.com/2018-02-20-El-cr%C3%A9dito-no-es-un-regalo/)

_This is Ana's story._

The first time I held a credit card in my hands I was a college student in Colombia. It felt like a gift, in part because I had never asked for it nor had I needed it. “You don’t have to pay an annual fee,” they told me. I was just going to use it to get me out of a jam or to start my connection with this plastic, unseen money. Other students that had one felt like it gave them some type of higher status. I must have used it a few times to buy books, which were a luxury. I knew even then that I had to be careful, because it wasn’t really free money. It was me using the money that was earmarked for my everyday expenses that were now going to be used for treating myself. Or it was going to be using money I didn’t have with the hopes that I would have it someday.

When I told my dad about my new acquisition he told me,

## **“give it back, credit cards are a trap.”**

In Colombia it’s possible and normal to live without them, but in the USA where I have been living for the last 15 years, they’re not a luxury or a privilege: they’re a requirement in order to achieve

## **“the American dream.”**

If it were up to me, I never would have opened one. I have always taken my father’s words as true. However, when I was working, making good money and single, I needed to buy a car. To do that, I had to **“build my credit”**, which basically means you need to have credit cards and pay them off faithfully.

Credit cards were a way to write a history that would allow me to buy a car and other things here in this country. I was always very meticulous with my expenses, paid everything on time and completely when I could. My credit score since then was always perfect.

Establishing good credit gave me the security of knowing that I could treat myself to things when I was tired: a long vacation, a visit to the spa. With credit, _everything is possible_, and that includes _falling in the trap_ of using it for things that I wasn’t really able to buy with cash.

But times change and so does life.  You fly every year to see your family because you miss them. You travel to see your sister that lives across the globe. With each dream that becomes reality, come more expenses, some planned, some unexpected, like having to replace the central AC in your house, in the Miami summer; replacing a broken fridge, or just simply paying your children’s school, which is the highest priority.

And just like that, without realizing it, **we accumulated credit card debt that we couldn’t pay with just one salary and my half income as a working, stay-at-home mom.** To relieve the pressure of the interest rates, we consolidated all debt into one credit card with 0% interest for a year, then another. And then another. My husband’s credit was affected because he put his name on all the debt. At one point, **we even considered declaring bankruptcy** but in our case, it wasn’t going to change things much.

## For now, we said goodbye to credit cards and try to live our day to day with the money we have.

The lesson in all of this has been that credit can easily get out of hand, and in this country designed for consumption and debt, it’s very easy for this to happen.

Tightening our expenses has been a lesson that we are still learning, and today more than ever, my dad’s words ring true.

## Credit isn’t a gift, it’s a responsibility that can easily turn into a trap.

Interested in following along with Ana's story and others like her. Sign up for our Email Newsletter.
Click Here

repository: stoneacre/supermonedero

branch_name: refs/heads/gh-pages

repo_name: stoneacre/supermonedero


text:
---
title: "Python Revision - Section VIII - Decorators"
date:  2018-08-14 19:08:11
categories: [Python]
tags: [pyhton, decorators, programming]
---

### Decorators

In a generic way, decorator is a design pattern that allows some behaviour to be added to an individual object, dynamically, without affecting the behaviour of other objects from the same class.

In Python, everything is an object. Including functions. That being said, we can create functions within another function, we can return functions and we even can pass functions as an argument to another function.

So, decorators can be thought of as functions which modify the functionality of another function.

```python
def new_decorator(func):
    '''
    This function receives a function as a parameter, add some commands in it and returns a new function.
    '''
    def wrap_func():
       '''
       This function wraps some commands to the original function
       '''
        print("Code would be here, before executing the func")
        func()
        print("Code here will execute after the func()")

    return wrap_func

def func_needs_decorator():
    '''
    This function needs do be changed
    '''
    print("This function is in need of a decorator")

# We can change the func_needs_decorator() like this
func_needs_decorator = new_decorator(func_needs_decorator)

# Or, using the @ symbol like this:
@new_decorator
def func_needs_decorator():
    print("this function is in need of a decorator")

```

Decorators are largely used in web frameworks like Flask or Django!

___

I hope it will be helpful to you and if there's any questions or something else, please, feel free to contact me.

*Forte Abraço*


text:
# Tweet a Random Post from a Ghost Blog

Instead of repeating everything here, you can read all the details of how to use this and the libraries it depends on here:

[Using AWS Lambda to tweet random posts from a Ghost blog](https://grantwinney.com/using-aws-lambda-and-tweetinvi-to-tweet-a-random-ghost-blog-post/)


text:
+++
# Display name
name = "Ana Paula"

# Username (this should match the folder name)
authors = ["admin"]

# Is this the primary user of the site?
superuser = true

# Role/position
role = "Student, Web Development"

# Organizations/Affiliations
#   Separate multiple entries with a comma, using the form: `[ {name="Org1", url=""}, {name="Org2", url=""} ]`.
# <!-- organizations = [ { name = "Stanford University", url = "" } ] -->
organizations = []

# Short bio (displayed in user profile at end of posts)
bio = "Code enthusiast, learning how to program at WildSchool, London"

# Enter email to display Gravatar (if Gravatar enabled in Config)
email = ""

# List (academic) interests or hobbies
interests = [
  "Software Development",
  "Programming Languages",
  "Web and Mobile Applications",
  "Empowering Women",
  "Drawing",
  "Good Coffee, Jasmine tea and a strong Mate"
]

# Organizational groups that you belong to (for People widget)
#   Set this to `[]` or comment out if you are not using People widget.
user_groups = []

# List qualifications (such as academic degrees)
[[education.courses]]
  course = "BSc in Information Management"
  institution = "Universidade Federal do Paraná, Brazil"
  year = 2014

# <!-- [[education.courses]] -->
# <!--   course = "MEng in Artificial Intelligence" -->
# <!--   institution = "Massachusetts Institute of Technology" -->
# <!--   year = 2009 -->
# <!--  -->
# <!-- [[education.courses]] -->
# <!--   course = "BSc in Artificial Intelligence" -->
# <!--   institution = "Massachusetts Institute of Technology" -->
# <!--   year = 2008 -->

# Social/Academic Networking
# For available icons, see: https://sourcethemes.com/academic/docs/widgets/#icons
#   For an email link, use "fas" icon pack, "envelope" icon, and a link in the
#   form<EMAIL_ADDRESS>or "#contact" for contact widget.

[[social]]
  icon = "envelope"
  icon_pack = "fas"
  link =<EMAIL_ADDRESS># For a direct email link, use<EMAIL_ADDRESS>
[[social]]
  icon = "github"
  icon_pack = "fab"
  link = "https://github.com/anapcwb"

[[social]]
  icon = "linkedin"
  icon_pack = "fab"
  link = "https://uk.linkedin.com/in/apaula-santos"

[[social]]
  icon = "twitter"
  icon_pack = "fab"
  link = "https://twitter.com/Aninhaaac"

[[social]]
  icon = "instagram"
  icon_pack = "fab"
  link = "https://instagram.com/anapcwb"

# Link to a PDF of your resume/CV from the About widget.
# To enable, copy your resume/CV to `static/files/cv.pdf` and uncomment the lines below.
# [[social]]
#   icon = "cv"
#   icon_pack = "ai"
#   link = "files/cv.pdf"

+++

Hi! I’m Ana Paula. I'm based in London and I'm currently studying at [Wild Code
School](https://wildcodeschool.com) to become a Software Engineer. I’ll try to
share my journey here.

I have a passion for design, photos, and creative and modern websites and
applications.

repository: Anapcwb/anapdev

repo_name: Anapcwb/anapdev


text:
# GraphQL Resolvers

Resolver composition library for GraphQL

[![build status](https://img.shields.io/travis/lucasconstantino/graphql-resolvers/master.svg?style=flat-square)](https://travis-ci.org/lucasconstantino/graphql-resolvers)
[![coverage](https://img.shields.io/codecov/c/github/lucasconstantino/graphql-resolvers.svg?style=flat-square)](https://codecov.io/github/lucasconstantino/graphql-resolvers)
[![npm version](https://img.shields.io/npm/v/graphql-resolvers.svg?style=flat-square)](https://www.npmjs.com/package/graphql-resolvers)
[![sponsored by Taller](https://raw.githubusercontent.com/TallerWebSolutions/tallerwebsolutions.github.io/master/sponsored-by-taller.png)](https://taller.net.br/en/)

---

This library consists of simple *[but well tested](https://codecov.io/github/lucasconstantino/graphql-resolvers)* helper functions for combining other functions into more specialized ones.

## Installation

This package is available on [npm](https://www.npmjs.com/package/graphql-resolvers) as: *graphql-resolvers*

```
npm install graphql-resolvers
```

> You should consider using [yarn](https://yarnpkg.com/), though.

## Motivation

Many times we end-up repeating lots of logic on our resolvers. Access control, for instance, is something that can be done in the resolver level but just tends to end up with repeated code, even when creating services for such a task. This package aims to make it easier to build smart resolvers with logic being reusable and split in small pieces. Think *[recompose](https://github.com/acdlite/recompose)*, but for GraphQL resolvers.

## Documentation

[Read full documentation here](docs/API.md)

## Similar projects

Besides being inspired by some functional libraries out there, this project has some goals in common with other projects:

#### [apollo-resolvers](https://github.com/thebigredgeek/apollo-resolvers):

While `graphql-resolvers` follows the functional paradigm, `apollo-resolvers` project solves some problems using an opinionated and OOP approach. Furthermore, the second also solves other problems which `graphql-resolvers` does not intend to work on, such as [solving circular references on the resolver's context](https://github.com/thebigredgeek/apollo-resolvers#resolver-context).

#### [graphql-tools](https://github.com/apollographql/graphql-tools)

At first, my idea was to [incorporate](https://github.com/apollographql/graphql-tools/issues/307) the `combineResolvers` method into the wider project `graphql-tools`. That may yet happen some day, but I think people my not want to install the whole `graphql-tools` project when wanting this simple package's helper on their projects. Also, `combineResolvers` should work pretty fine with resolvers binded into [`graphql/types`](http://graphql.org/graphql-js/type/) too.

repository: lucasconstantino/graphql-resolvers

gha_language: JavaScript

repo_name: lucasconstantino/graphql-resolvers


text:
# Contribution Guidelines

## Table of Contents

- [Adding to this list](#adding-to-this-list)
- [How to submit projects](#how-to-submit-projects)
- [Updating your Pull Request](#updating-your-pull-request)

## Adding to this list

Please ensure your pull request adheres to the following guidelines:

- Search previous suggestions before making a new one, as yours may be a duplicate.
- Make an individual pull request for each tool you'd like to add.
- Use AP style.
- Use the following format:
  ```markdown
  |Project|[your-project-name](https://github.com/link/to/your/repo)|
  |----------|--------|
  |What it do|A short description of what your project does|
  |Languages/Frameworks|Comma-separated list of frameworks/languages you used|
  |Authors|Author, Organization; Author, Organization|
  ```
- New categories or improvements to the existing categorization are welcome.
- Check your spelling and grammar.
- The pull request and commit should have a useful title.
- The repository you link to should have all information needed for someone to install and get some basic usage out of your project.

Thank you for your suggestions!

## How to submit projects

(_Short answer:_ [Make a pull request](https://github.com/DallasMorningNews/awesome-news-hacks/pull/new/master).)

If you have something awesome to contribute to the list, this is how you do it.

You'll need a [GitHub account](https://github.com/join)!

1. Go to our Github repo's page: https://github.com/DallasMorningNews/awesome-news-hacks
2. Click on the `README.md` file: ![Step 2 Click on Readme.md](https://cloud.githubusercontent.com/assets/170270/9402920/53a7e3ea-480c-11e5-9d81-aecf64be55eb.png)
3. Now click on the edit icon. ![Step 3 - Click on Edit](https://cloud.githubusercontent.com/assets/170270/9402927/6506af22-480c-11e5-8c18-7ea823530099.png)
4. You can start editing the text of the file in the in-browser editor. Make sure you follow guidelines above. You can use [GitHub Flavored Markdown](https://help.github.com/articles/github-flavored-markdown/). ![Step 4 - Edit the file](https://cloud.githubusercontent.com/assets/170270/9402932/7301c3a0-480c-11e5-81f5-7e343b71674f.png)
5. Say why you're proposing the changes, and then click on "Propose file change". ![Step 5 - Propose Changes](https://cloud.githubusercontent.com/assets/170270/9402937/7dd0652a-480c-11e5-9138-bd14244593d5.png)
6. Submit the [pull request](https://help.github.com/articles/using-pull-requests/)!

## Updating your Pull Request

Sometimes, one of the list curators will ask you to edit your Pull Request before it is included. This is normally due to spelling errors or because your PR didn't match the awesome-news-hacks list guidelines.

[Here](https://github.com/RichardLitt/docs/blob/master/amending-a-commit-guide.md) is a write up on how to change a Pull Request, and the different ways you can do that.

repository: DallasMorningNews/awesome-news-hacks

repo_name: DallasMorningNews/awesome-news-hacks


text:
# Even Line Thickness Sample

A simple demo to show how to take a line strip and calculate a shape equivalent
to the line strip with a uniform width.

This is part of an article for how to perform a line inflation.
https://pixeleuphoria.com/blog/index.php/2021/01/04/calculating-an-even-width-for-a-line-strip/

![alt text](Screenshot.png)

The demo is a single scene with a single .cs file.

# License

MIT License

Copyright (c) 2021 Pixel Precision, LLC

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

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

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

repository: Reavenk/EvenLineThicknessSample

repo_name: Reavenk/EvenLineThicknessSample


text:
# build\_docker\_image

_... library of scripts and makefiles to ensure docker builds_
_adhere to certain standards ..._

Library runs a docker build against a modified _Dockerfile_ or
_Dockerfile.tmpl_.

The modifications annotate the images and instantiated containers,
so we can use `docker inspect` to see provenance information
e.g. git repo for source, git tag applied or the builder's name.

# TODO

* decouple docker build from docker tag and docker push
  to allow push to ECR or other repo.

* create separate bootstraps for:

  * $DEVMODE (no git tagging, no docker pushing, just building)

  * build + git / docker tag + aws ecr push

* user should be able to supply their own tagging mechanism

* Appropriate lib that tags and pushes to ECR, should not assume
  AWS ECR account id is retrieved via credstash - should only expect
  AWS_ECR_REPO_URI set as env var.


text:
## Dev Challenge

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

### Prerequisites

Following are requirement for running this project.

```
Nodejs
```

### Installing

Run the following cmd to get the dependencies installed

Steps:

```
go to project root directory and run 'npm install'.
```

## Running the project

Run the following cmd to get server running at http://localhost:8012

```
npm start
```

## Versioning

"version": "1.0.0"

## Authors

* **Vikrant Thete** - *Initial work* - (https://github.com/thetevikrant)

## License

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

## Acknowledgments

* Thanks **Lisa Thorne** for all her support.

repository: thetevikrant/dev-challenge

repo_name: thetevikrant/dev-challenge


text:
This repo demonstrates the use of Android Gradle Plugin's `matchingFallbacks` and `missingDimensionStrategy` features. These are used when an Android project has multiple modules with dependencies on each other, and these **modules do not agree on the number of flavor dimensions** or flavors.

## Repo structure

The app itself is a shell. It has no activities, no functionality and almost no Android code. It has 4 modules:

1. `app` module. Depends on `intermediate-1`,`intermediate-2` and `leaf`
2. `intermediate-1` module. Depends on `leaf`
3. `intermediate-2` module. Depends on `leaf`
4. `leaf` module. Has no dependencies

### Flavors

  - Only `app` and `leaf` modules care about flavors. I named the dimension as "target" and the flavors as "emulator" and "realdevice" but it doesn't really matter what you call them.
  - The intermediate modules don't care and don't even need to know about flavors.

### String resources

To demonstrate how flavors work, I've created some string resources (using gradle's `resValue` feature) in every flavor, in every module that does care about the flavor. When I build an APK for a particular flavor, I can inspect the string resource in APK analyzer to figure out which variant was used.

### In this commit

In this commit, I've basically introduced the same flavor dimensions and flavors in the intermediate modules. I know we started off saying these modules don't care about flavors, but this is the only correct way to do it. This is because the intermediate modules are both of the following

  - Providers for a module that has a flavor dimension
  - Consumers of another module that also has the same flavor dimension

**Note:** If you don't have these intermediate flavors setup that I demonstrate in this repo, you can absolutely use `missingDimensionStrategy` or `matchingFallback` depending on your situation.

I extracted the flavor config to a separate file for use in intermediate flavors. See `flavors.gradle`


text:
### virt-deploy start

the virt-deploy start is used to create the docker environment, then
the networks and the virtual machines at once. It has has a race
condition, and the creation of the networks fails because the docker
container is not yet ready.

So for now, start the elements one by one:

    virt-deploy env-start
    virt-deploy net-start -a
    virt-deploy vm-start -a

### virt-deploy vm-start blocks after launching the first vm

When creating a virtual machine, the 'noautoconsole' parameter is
mandatory else the first virt-install will block. I should either
start the 'virt-install' in background or always add the
'noautoconsole' parameter/

repository: yherve/virt-deploy

repo_name: yherve/virt-deploy


text:
# PuzzleBox.CodeContracts

The purpose of this project is to work through the idea of combining [Design by Contract](https://en.wikipedia.org/wiki/Design_by_contract) (DbC) and [Promises](https://en.wikipedia.org/wiki/Futures_and_promises).  The contract defines the specification of the operation and the promise monitors its fulfillment, streaming events back to the client.

## Promises
C# has native support for promises in the form of async/await.  This project expands on this to include the "promise to fulfill the contract", and allows the client to recieve detailed information during execution:

* Streamed results & progress
* When the contract is broken by either party
* Key behavioural decisions
* Side-effects relating to behaviour

Streaming events back to the client can lead to a conversational-style of API, particularly if operations are long-running and persisted.  Streaming logs back also frees the operation from being tied to a particular logging technology, leaving it up to the client or infrastructure.

Promises can be chained to subcontracts - where operations call other operations.

The client calling an opeartion:

```c#
var promise = commandHandler.Execute(command);

promise.LogStream
  .Subscribe(
    l => Console.WriteLine(l),
    ex => Console.WriteLine($"Error: {ex.Message}"),
    () => Console.WriteLine("Complete")
  );

var result = await promise.ResultTask;
```

## Contracts
C# doesn't have native support for DbC, like Eiffel or Scala for example, but there are some initiatves for it with [Code Contracts](https://docs.microsoft.com/en-us/dotnet/framework/debug-trace-profile/code-contracts) and [Spec#](https://en.wikipedia.org/wiki/Spec_Sharp).

The intention of a contract is that it relates to the operation's behaviour and not its implementation.  Since this is also what unit tests are supposed to test, it follows that unit tests should test the contract.  Testing side-effects are the exception to this, but they could either be added to the contract or separated from the operation under contract.  To be continued.

This project allows the formal declaration of an operation's contract, and capturing this information opens up a number posibilities, from self-describing operations to test code generation to improved specifications and reliability.

Each command handler defines its contract: preconditions, postconditions and exceptions thrown. The terminology is borrowed from Eiffel:

```c#
var contract = new Contract<TransferMoneyCommand, MoneyTransferredResult>()
  // Preconditions
  .Requires(
    "Amount to transfer must be greater that zero",
    c => c.Amount > 0)
  .Requires(
    "Source account cannot be blank",
    c => !string.IsNullOrWhiteSpace(c.SourceAccount))
  .Requires(
    "Destination account cannot be blank",
    c => !string.IsNullOrWhiteSpace(c.DestinationAccount))

  // Postconditions
  .Ensures(
    "Amount transferred is the same requested amount.",
    e => e.Command.Amount == e.AmountTransferred)
  .Ensures(
    "Money deducted from source account matches requested amount.",
    e => e.SourceBalance == e.OriginalSourceBalance - e.Command.Amount)
  .Ensures(
    "Money added to destination account matches requested amount.",
    e => e.DestinationBalance == e.OriginalDestinationBalance + e.Command.Amount)

  // Exceptions thrown
  .Asserts<NotFoundException>("Source account not found")
  .Asserts<NotFoundException>("Destination account not found")
;
```

## Future
* Explore how contracts handle distributed calls.
* How to capture side-effects.
* See where this fits in with BDD.
* Look into persistent, long-running operations.


text:
---
layout: doc
title: Technical Working Group
---

The OBO Foundry Operations Committee Technical WG is involved in maintaining the technical infrastructure for the OBO Foundry. This includes establishment of policies to be implemented in common tools, website maintenance, etc.

- Meetings
- Creating a prefix and domain for a resource
- How is the OBO PURL configured

## Contact Us

The best way to contact the OBO Foundry Technical Working Group is through the issue tracker. Select the Technical group template or the Prefix/domain request template.

The mailing list for the OBO Foundry Technical Working Group is <a href='mailto:obo-foundry-technical-working-group<EMAIL_ADDRESS>This is currently a closed list, but non-members can post to the list.

## Members

    Name
    ORCID
    GitHub
    Affiliation
    Country

{% assign members = site.data.operations.members | sort: "name" | where_exp:"item","item.groups contains 'technical'" %}
{% for member in members %}

    {% if member.link %}{{ member.name }}{% else %}{{ member.name }}{% endif %}
    {{ member.orcid }}
    {{ member.github }}
    {{ member.affiliation.name }}
    {{ member.country }}

{% endfor %}

gha_license_id: NOASSERTION


text:
# sum: Do the math with multiple workers

Let's say we want to calculate 1+2+...+10000(just pretend you have no idea how to work it out), and
we want to do it channel way.

we split the work loads among workers, and let them calculate part of the whole job, and sum the result
to get the final number.

NOTE: CPU-heavy tasks does not benefit much from channels, because all workers still need the same amount of CPU time.
And no one is doing any IO operatios while the other is busy.

repository: cizixs/go-concurrency

repo_name: cizixs/go-concurrency


text:
# ResumPY: generate your resume using Python
[![](https://img.shields.io/github/v/release/davidalvarezdlt/resumpy)](https://github.com/davidalvarezdlt/resumpy/releases)
[![](https://github.com/davidalvarezdlt/resumpy/workflows/Unit%20Testing/badge.svg)](https://github.com/davidalvarezdlt/resumpy/actions?query=workflow%3A%22Unit+Testing%22)
[![](https://codecov.io/gh/davidalvarezdlt/resumpy/branch/main/graph/badge.svg?token=ZX6CLBW31B)](https://codecov.io/gh/davidalvarezdlt/resumpy)
[![](https://img.shields.io/badge/python-%3E3.7-blue)](https://www.python.org/)
[![](https://requires.io/github/davidalvarezdlt/resumpy/requirements.svg)](https://requires.io/github/davidalvarezdlt/resumpy/requirements/)
[![](https://www.codefactor.io/repository/github/davidalvarezdlt/resumpy/badge)](https://www.codefactor.io/repository/github/davidalvarezdlt/resumpy)
[![](https://img.shields.io/github/license/davidalvarezdlt/resumpy)](https://github.com/davidalvarezdlt/resumpy/blob/main/LICENSE)

Modifying your CV every time you obtain a new diploma or publish a new article
can be tedious and time-wasting, even when using a document generator such as
LaTeX.

ResumPY transforms raw `.json` or `.yml` files into a fully-formatted
curriculum vitae in PDF. You won't have to deal with graphical/text editors or
with LaTeX code anymore, editing that main global file will be enough to obtain
your updated CV.

## How does it work
The idea behind this project is to separate the content and the template of our
_curriculum vitae_. To do so:

+ First, you must write your resume following the specified format. You can
choose to it using a `.json` file or a `.yaml` file. The only requirement is
that your document follows the schema provided in the document
`cv.schema.json`.
+ With your raw resume created, execute ResumPY as explained in the next
sections. A `.tex` file will be generated using the template of your choice.
+ That `.tex` file is finally compiled into a PDF using LaTeX and saved inside
`./generated_documents`.

## How to create your resume
There is only one rule to follow when using ResumPY: follow the syntax
provided in `cv.schema.json`. If you are not familiar with JSON validation,
please read the tutorials provided in [JSON Schema](https://json-schema.org/).
Notice that the input file will be validated at the beginning and some errors
may arise if the document is not valid.

The easiest and fastest way to start is by departing from the example provided
in `cv.example.json`.

## How to execute the code
First of all, install the dependencies required by the project. You can do it
using `pip` as:

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

To execute the code, we must **call the module** directly using the `-m`
argument of Python. The following snippet summarizes available arguments:

```
Usage:
    python -m resumpy --cv-file <cv_file_path> --theme <theme_name> [--filename <cv_filename>] [--keep-tex]

Options:
    --cv-file <cv_file_path>    Relative or absolute path to the raw .json or .yaml resume file
    --theme <theme_name>        Name of the theme to use to generate the resume
    --filename <cv_filename>    Name of the theme of the generated resume
    --keep-tex                  Keep LaTeX files used to generate the resume

Example:
    python -m resumpy --cv-file cv.example.json --theme sitges --filename example-cv
```

**Note**: to call a module, we must either execute the command from its root
directory or have it on the `$PYTHONPATH`.

## Available themes and examples
Only two themes are available at the moment:

|Theme Name (`<theme_name>`)|Example|Source|
|-|-|-|
|Sitges (`sitges`)|[Example](/examples/sitges-example.pdf)|Self-designed|

## Contribute
You are invited to submit your pull requests with new features or bug
corrections. Before creating the pull request, make sure to run all pre-commits
and unit tests.

```
pip install pytest pre-commit
pre-commit run --all
pytest
```

repository: maliksanoo/resumpy

repo_name: maliksanoo/resumpy


text:
# Adversarial Learning on the Latent Space for Diverse Dialog Generation

PyTorch implementation of our paper [Adversarial Learning on the Latent Space for Diverse Dialog Generation,](https://www.aclweb.org/anthology/2020.coling-main.441/) accepted to COLING 2020, Barcelona, Spain (Online).

## Installation
   Install allennlp 0.9.0 using conda or pip
   pip install pyro-ppl
## Running Experiments
   - VAE
     `allennlp train -s models/dialog_vae --include-package src experiments/vae.jsonnet`
   - GAN (run after VAE)
     `allennlp train -s models/dialog_gan_mse --include-package src experiments/dialog_gen.jsonnet`
## Important Code
   - experiments
     - vae.jsonnet (Configuration for VAE)
     - dialog_gen.jsonnet (Configuration for GAN with MSE)
   - src
     - data
       - dataset.py (DatasetReaders)
       - iterator.py (Special iterator for GAN)
     - modules
       - encoders
         - variational_encoder.py (Variational Encoder for VAE)
       - decoders
         - decoder.py (Decoder base class)
         - variational_decoder.py (Variational Decoder for VAE)
       - metrics.py (LMPPL and NLTKSentenceBLEU)
       - annealer.py (Different Annealing Schedules)
     - models
       - vae.py (Variational Autoencoder, SampleGenerator)
       - dialog_generator.py (Generator Module for GAN)
       - dialog_discriminator.py (Discriminator Module for GAN)
       - dialog_gan.py (Dialog Gan, GanOptimizer and SampleGenerator)

If you find the code useful, please cite:
```
@inproceedings{khan-etal-2020-adversarial,
title = "Adversarial Learning on the Latent Space for Diverse Dialog Generation",
author = "Khan, Kashif  and
Sahu, Gaurav  and
Balasubramanian, Vikash  and
Mou, Lili  and
Vechtomova, Olga",
booktitle = "Proceedings of the 28th International Conference on Computational Linguistics",
month = dec,
year = "2020",
address = "Barcelona, Spain (Online)",
publisher = "International Committee on Computational Linguistics",
url = "https://www.aclweb.org/anthology/2020.coling-main.441",
pages = "5026--5034",
abstract = "Generating relevant responses in a dialog is challenging, and requires not only proper modeling of context in the conversation, but also being able to generate fluent sentences during inference. In this paper, we propose a two-step framework based on generative adversarial nets for generating conditioned responses. Our model first learns a meaningful representation of sentences by autoencoding, and then learns to map an input query to the response representation, which is in turn decoded as a response sentence. Both quantitative and qualitative evaluations show that our model generates more fluent, relevant, and diverse responses than existing state-of-the-art methods.",
}
```


text:
---
layout: post
title: "Unsupervised Domain Adaptation with Copula Models"
date: 2017-09-29 18:14:55
categories: arXiv_CV
tags: arXiv_CV Prediction
author: Cuong D. Tran, Ognjen Rudovic, Vladimir Pavlovic
mathjax: true
---

* content
{:toc}

##### Abstract
We study the task of unsupervised domain adaptation, where no labeled data from the target domain is provided during training time. To deal with the potential discrepancy between the source and target distributions, both in features and labels, we exploit a copula-based regression framework. The benefits of this approach are two-fold: (a) it allows us to model a broader range of conditional predictive densities beyond the common exponential family, (b) we show how to leverage Sklar's theorem, the essence of the copula formulation relating the joint density to the copula dependency functions, to find effective feature mappings that mitigate the domain mismatch. By transforming the data to a copula domain, we show on a number of benchmark datasets (including human emotion estimation), and using different regression models for prediction, that we can achieve a more robust and accurate estimation of target labels, compared to recently proposed feature transformation (adaptation) methods.

##### Abstract (translated by Google)
我们研究无监督域适应的任务，在训练期间没有提供来自目标域的标记数据。为了处理源和目标分布之间潜在的差异，无论是在特征还是标签上，我们都利用基于copula的回归框架。这种方法的好处有两个方面：（a）它允许我们对常见的指数族以外的更广泛的条件预测密度进行建模，（b）我们展示了如何利用斯克拉定理（sklar's theorem）联合密度的Copula依赖函数，找到有效的特征映射，缓解域的不匹配。通过将数据转化为copula领域，我们展示了许多基准数据集（包括人类情绪估计），并使用不同的回归模型进行预测，与最近提出的相比，我们可以实现目标标签的更稳健和更精确的估计特征转换（适应）方法。

##### URL
[https://arxiv.org/abs/1710.00018](https://arxiv.org/abs/1710.00018)

##### PDF
[https://arxiv.org/pdf/1710.00018](https://arxiv.org/pdf/1710.00018)


text:
---
layout: page
title: Programming Assignments
---

### Assignment 0

- **Basic Pyton Programming**
- **Due Date**: 21st September, 2019 (Saturday)
- *Late submission will not be marked*
- **Instructions**
    - Download the Jupyter notebook template [here](/public/notebooks/iems5780_a0_template.ipynb)
    - Write your solutions in the notebook by running your own instance of Jupyter (or on Colaboratory if you want to)
    - When you have finished, submit the `.ipynb` file to Blackboard

### Assignment 1

- **Text Classification**
- **Due Date**: 19th October, 2019 (Saturday)
- *Late submission will not be marked*
- [Instructions](/assignments/assignment-1)

### Assignment 2

- **Socket and Concurrent Programming**
- **Due Date**: 30th November, 2019 (Saturday)
- *Late submission will not be marked*
- [Instructions](/assignments/assignment-2)

### Assignment 3

- **Recommender System**
- **Due Date**: 21st December, 2019 (Saturday)
- *Late submission will not be marked*
- [Instructions](/assignments/assignment-3)


text:
# Project Title : Readme Generator
  ## Project Description:
  This is a simple Readme Generator to help deploy professional readme files to your github.
  ## Badges
  !(https://img.shields.io/github/repo-size/:Bowerpower85/:undefined)
  ## Table of Contents
  * [Installation](#installation)
  * [Usage](#usage)
  * [Contributing](#contributing)
  * [Test](#test)
  * [Questions](#questions)
  * [License](#license)
  * [Author](#Author)
  * [Badges](#badges)
  ## Installation
  Fork my repository and run npm init to install node, then you can run with node index.js.
  ## Usage
  Make sure you have installed all the dependencies. When you are prompted with questions answer them and insure you Github username is correct. Then the readme should generate and you can push it up to your repo.
  ## Contributors
  Moses Kamara, Donald Chromy, Dan Seese, Doug Mitchell
  ## Test
  Right now it is just manual testing but Jest can be installed with node to design a test.
  ## Questions
  If you have any questions, contact Bowerpower85 on GitHub or email at undefined.
  ## License
  MIT License
  Copyright (c) [year] [Bowerpower85]
  Permission is hereby granted, free of charge, to any person obtaining a copy
  of this software and associated documentation files (the "Software"), to deal
  in the Software without restriction, including without limitation the rights
  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  copies of the Software, and to permit persons to whom the Software is
  furnished to do so, subject to the following conditions:
  The above copyright notice and this permission notice shall be included in all
  copies or substantial portions of the Software.
   IN NO EVENT SHALL THE
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  SOFTWARE.
  ## Author
  ![GitHub profile pic](https://avatars0.githubusercontent.com/u/56975398?v=4)

  <img src="images/Screenshot.gif">

  https://drive.google.com/file/d/1fwpizRySMqD4PNFYRf3nuLnnrmw87M6_/view


text:
# DLLInfo

This is a PowerShell module for reading DLLs information.

It can be used to find out what's the build configuration, target CPU and more.

# Installation
Module is available on [Powershell Gallery][gallery]

### Install
```powershell
PS> Install-Module -Name DLLInfo
```

### Import
```powershell
PS> Import-Module DLLInfo
```
# Usage

```powershell
PS> Get-BuildConfiguration "C:\dll\SiteMetadata.dll"
Release

PS> Get-TargetCPU "C:\dll\SiteMetadata.dll"
AnyCPU

PS> Get-JitOptimized "C:\dll\SiteMetadata.dll"
True
```

[gallery]: https://www.powershellgallery.com/packages/DLLInfo

repository: PowerShellLibrary/DLLInfo

gha_language: PowerShell

repo_name: PowerShellLibrary/DLLInfo


text:
CakePHP-DataTables
========
Provides server-side interoperability between CakePHP 2.x and jQuery DataTables plugin.

Based on cnizzdotcom/cakephp-datatable, modified for personal use. Feel free to further develop and submit pull requests.

Features
------
*	Takes paginated data and converts into json response compatible with datatables
*	Accepts dataTables ORDER BY requests
*	Accepts dataTables WHERE conditions
*	Accepts dataTables pagination
*	Works with LinkableBehavior and to a lesser extent Containable

Dependancies
------
* PHP 5.x
* CakePHP 2.x
* LinkableBehavior is recommended but not required

Installation
------

Clone into your app's Plugin directory. Composer to come later.

Licensing
------
Code is licensed under the MIT License.

repository: jameswestnz/cakephp-datatable

repo_name: jameswestnz/cakephp-datatable