text:
---
layout: default
title: Log OmniFocus items done today to DayOne
description: Logs today's OmniFocus done items to DayOne (avoiding duplication)
---

{{page.description}}

Shell script which logs, to the [DayOne](http://dayoneapp.com) application, any OmniFocus tasks which :

1.	Are marked as completed since midnight last night, and
2.	have not yet been logged to DayOne.

- The script directly queries the OmniFocus Sqlite cache, and doesn't require OmniFocus to be running.
- It avoids duplication of items logged earlier, if the script is called several times in one day.
- It can be called automatically from Hazel, whenever a change in the OmniFocus cache is detected, if that suits your workflow.

##Usage:

This script requires installation of the Day One [command line interface](http://dayoneapp.com/tools/).

Hazel settings to monitor changes in the OmniFocus cache folder:
- *~/Library/Caches/com.omnigroup.OmniFocus*
- or *~/Library/Caches/com.omnigroup.OmniFocus.MacAppStore*

(Depending on which version of OmniFocus you are running)

![Hazel settings](https://raw.github.com/RobTrew/tree-tools/master/OmniFocus%20scripts/Shell%20scripts%20for%20Geektool%20or%20logging/HazelSettings4DayOneLog.png)

Or, for sparser and more aggregated logging events, combine a delaying rule with one or more fixed time events:

![Two rules](https://raw.github.com/RobTrew/tree-tools/master/OmniFocus%20scripts/Shell%20scripts%20for%20Geektool%20or%20logging/ComplementaryRules.png)

![Hazel gaps between logging events](https://raw.github.com/RobTrew/tree-tools/master/OmniFocus%20scripts/Shell%20scripts%20for%20Geektool%20or%20logging/HazelLoggingIntervals.png)

![Timed rules to flush the logging buffer](https://raw.github.com/RobTrew/tree-tools/master/OmniFocus%20scripts/Shell%20scripts%20for%20Geektool%20or%20logging/TimedRules.png)

- The default output format is broadly that of TaskPaper or FoldingText, but with times only.
- Works best with Day One Preferences > Appearances:  **+ Markdown** **- Link Twitter @names**
- If you need *Link Twitter names* then it will probably make sense to edit the '@' characters out of the script

```
    Project A:
    - task1 @done(HH:MM)
    - task2 @done(HH:MM)
    - taskN @done(HH:MM)

    Project B:
    - taskX @done(HH:MM)
    - taskY @done(HH:MM)
    - taskZ @done(HH:MM)
```
Viewing the results in DayOne:
- When DayOne first opens it defaults to displaying a fresh editing session, and displays a **Done** button at upper right.
- To view the text created by automatic logging events, you will need to click the **Done** button, to exit the current editing session.
- Note that (Ver 3+ of this script) the final colon of the project line is a live link back to the project in OmniFocus.

Logging sound:
- By default the script makes a system 'pop' sound when the **done** log has taken place.
- To suppress this sound, comment out the relevant line near the end of the script (by preceding it with a hash character)
```
   afplay /System/Library/Sounds/Pop.aiff
```

- [**View Script**](https://github.com/RobTrew/tree-tools/blob/master/OmniFocus%20scripts/Shell%20scripts%20for%20Geektool%20or%20logging/OmniFocusLogDone2DayOne.sh)

url: https://raw.githubusercontent.com/jamiekowalski/tree-tools/2e1410aeeae8f2231f1dfb51325ed597ec2578d8/OmniFocus scripts/Shell scripts for Geektool or logging/2012-12-10-omnifocus-done-to-DayOne-shellscript.md

repository: jamiekowalski/tree-tools

repo_name: jamiekowalski/tree-tools


text:
# Chain-Saw Engine

This is the repository for Chain-Saw Engine For Friday Night Funkin

### Installing the Required Programs

For Android Go To LuckyDog7 Page
https://github.com/luckydog7/Funkin-android

First, you need to install Haxe and HaxeFlixel. I'm too lazy to write and keep updated with that setup (which is pretty simple).
1. [Install Haxe 4.1.5](https://haxe.org/download/version/4.1.5/) (Download 4.1.5 instead of 4.2.0 because 4.2.0 is broken and is not working with gits properly...)
2. [Install HaxeFlixel](https://haxeflixel.com/documentation/install-haxeflixel/) after downloading Haxe

Other installations you'd need are the additional libraries, a fully updated list will be in `Project.xml` in the project root. Currently, these are all of the things you need to install:
```
flixel
flixel-addons
flixel-ui
hscript
newgrounds
```
So for each of those type `haxelib install [library]` so shit like `haxelib install newgrounds`

You'll also need to install a couple things that involve Gits. To do this, you need to do a few things first.
1. Download [git-scm](https://git-scm.com/downloads). Works for Windows, Mac, and Linux, just select your build.
2. Follow instructions to install the application properly.
3. Run `haxelib git polymod https://github.com/larsiusprime/polymod.git` to install Polymod.

You should have everything ready for compiling the game! Follow the guide below to continue!

At the moment, you can optionally fix the transition bug in songs with zoomed-out cameras.
- Run `haxelib git flixel-addons https://github.com/HaxeFlixel/flixel-addons` in the terminal/command-prompt.

### Compiling game
NOTE: If you see any messages relating to deprecated packages, ignore them. They're just warnings that don't affect compiling

Once you have all those installed, it's pretty easy to compile the game. You just need to run `lime test html5 -debug` in the root of the project to build and run the HTML5 version. (command prompt navigation guide can be found here: [https://ninjamuffin99.newgrounds.com/news/post/1090480](https://ninjamuffin99.newgrounds.com/news/post/1090480))
To run it from your desktop (Windows, Mac, Linux) it can be a bit more involved. For Linux, you only need to open a terminal in the project directory and run `lime test linux -debug` and then run the executable file in export/release/linux/bin. For Windows, you need to install Visual Studio Community 2019. While installing VSC, don't click on any of the options to install workloads. Instead, go to the individual components tab and choose the following:
* MSVC v142 - VS 2019 C++ x64/x86 build tools
* Windows SDK (10.0.17763.0)

Once that is done you can open up a command line in the project's directory and run `lime test windows -debug`. Once that command finishes (it takes forever even on a higher end PC), you can run FNF from the .exe file under export\release\windows\bin
As for Mac, 'lime test mac -debug' should work, if not the internet surely has a guide on how to compile Haxe stuff for Mac.

branch_name: refs/heads/main

extension: md

license_type: permissive


text:
---
layout: post
title: Keep Route53 Health check source IP's up to date
description: "Using AWS Cli & JQ to ensure your route53 health check security groups are always up to date"
categories: [aws]
tags: [aws,route53,amazon,health]
published: True

---

We wanted to add Route53 health checks for some of our DNS end points but the list of origin IP's for these checks is not guaranteed.  This being the case we put together a small script to keep them up to date.

## Depedencies

* JQ - [jq](http://stedolan.github.io/jq/) is like sed for JSON data
* AWS CLI - [Aws](http://aws.amazon.com/cli/) AWS Command Line Interface (CLI)

## Example

{% highlight bash %}
GROUPID=sg-abc123456
PORTS="5060 5671"

for h in `aws route53 get-checker-ip-ranges | jq -r '.CheckerIpRanges[]'`; do

  for port in `echo $PORTS`; do
    printf "Adding ${h}:$port "
    aws ec2 authorize-security-group-ingress --group-id $GROUPID --protocol tcp --port $port --cidr $h 2&>1
    EXIT_CODE=$?
    if [[ $EXIT_CODE -eq 0 ]]; then
      echo " - Added"
    elif [[ $EXIT_CODE -eq 255 ]]; then
      echo " - Already present"
    else
      echo "Error"
      echo "---> $EXIT_CODE"
    fi
  done
done

{% endhighlight %}

license: MIT

branch_name: refs/heads/master


text:
# Code-Refactor-Assignment

## Overview of Assignment

For this project we were given a perfectly functioning webpage to be refracted so that it would be easier for other coders to use. Refracting it also meant that the page would function the same as the original styling for the source code.

The key goals were to ensure that the css had the proper structure and order since CSS heavilly relies on order, mainly order of presidence and specifity.

Another goal was to ensure that there was no unnecessary repititions of styling.

### The following are steps I took to help improve the CSS of given webpage

* I first revised the class header and made it a header tag. This made it easier to adjust the styling of the h1 elements

* I then grouped all the h2 tags together and removed the repeated tags in the css file

* I then grouped all the h3 tags and removed repeated tags in CSS file

* I removed the float right and float let class from the img attributes and revised it to alt attributes. This is helpful in cases where images aren't visible on the webpage, verbage is substitued to help the user know what the image should be.

* Grouped all the benefit images under one class. This removed excess repetitive styling.

* I then added an attribute selector to the images for the benefits class. This allowed me to style the images under one attribute.

* I also updated the margin in the benefits class and added a .lead class to the first h3 so that I could adjust the margin accordingly. It would need to have a separate margin from the other h3 based on the spacing on the original web page.

* I then changed the divs to sections in the html file, which made it easier for me to manipulate and style the elements and images in the content class.

* Lastly, I adjusted the font size for the h1 tag and revised the order of the heading attributes. And also added variables just incase another coder would like to change the colors of multiple attributes.

All these adjustments help to make the css file cleaner and easier to read.

### This is what the webpage should look like

![Refactor-webpage](/Assets/images/01-HTML-Git-CSS_02-Homework_Assets_01-html-css-git-homework-demo.png)

Please see the link below for the finished product.

* [Code Refractor for Horiseon](https://crystal-g-b.github.io/Code-Refactor-Assignment/)

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

repository: crystal-g-b/Code-Refactor-Assignment

repo_name: crystal-g-b/Code-Refactor-Assignment


text:
---
title: Documentation
layout: main
---

    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent"
            aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">

    </button>

                Home

                Top of Page

                Infosheet

                Dictionary Mapping

                Codebook

                Timeline

                Code Mappings

                Configuration

                Prefixes

                Property Customization

                Templating

## Welcome to the Semantic Data Dictionary wiki!
This wiki contains documentation on the Semantic Data Dictionary (SDD).
This approach provides a way to annotate data such that entities in a dataset and their relationships can be accurately represented by encoding mappings to a background set of ontologies.

![SDD Workflow](https://github.com/tetherless-world/SemanticDataDictionary/blob/master/SDDWorkflow.png)

The Semantic Data Dictionary is a specification formalizing how to assign a semantic representation of data by annotating dataset variables and their values using concepts from best practice vocabularies and ontologies.
It is a collection of individual documents that each play a role in creating a concise and consistent knowledge representation, including the Dictionary Mapping, Codebook, Timeline, and Code Mapping specifications, and the Infosheet, which is used to link these Semantic Data Dictionary elements together.

We implement the SDD as a collection of tabular data sheets which can be written in Excel or Comma Separated Value (CSV) files.
In order to organize the collection of sheets in the SDD, we use the Infosheet, which contains information about the Semantic Data Dictionary data model being described, as well as the location of the other SDD tables.

## Infosheet
The Infosheet is essentially the configuration document of the SDD structure. Thus it used to organize the SDD tables and contains information about the Semantic Data Dictionary, such as the name, identifier, or link to the documentation, in addition to the location of the other SDD tables. The SDD tables are usually a collection of CSV files that have the majority of the information on the dataset and their relationships.

| Infosheet Row | Related Property | Description | Example |
|------------ | ------------- | ------------- | ------------- |
| Code Mapping |  | Reference to Code Mapping table location | http://... |
| Codebook |  | Reference to Codebook table location | http://... |
| Dictionary Mapping |  |  Reference to Dictionary Mapping table location | http://... |
| Imports | _owl:imports_ |  Ontologies that the SDD references | http://semanticscience.org/ontology/sio-subset-labels.owl |
| Timeline|  |  Reference to Timeline table location | http://... |

The info sheet should follow Distribution Level Dataset Description based on the HCLS standards and the Data on the Web best practices.

## Dictionary Mapping

The bulk of the annotation is done using the Dictionary Mapping (DM) table, which is used to annotate the columns of a given dataset.
The DM table contains entries describing concepts explicit in the original dataset, as well as implicit entries.
The explicit entries contain mappings to the underlying attribute that is described by a particular dataset column, as well as provenance information such as how that variable was generated or derived.
Implicit entries are used to describe entities that are implicit within the dataset, usually related to one or more of the explicit entries in the dataset, such as the entity being measured, or the time at which a measurement was taken.
These entities are readily recognized by human data users even though there is no column in the dataset that refers to them directly, but we must make them explicit for machines.
These implicit entities can then be described with type, role, relation, and other information in the same manner as the explicit columns in the dataset.
The SDD DM Specification is shown below.

| DM Column | Related Property | Description |
|------------ | -------------| -------------|
| Attribute | _rdf:type_ | Class of attribute entry |
| attributeOf | _sio:isAttributeOf_ | Entity having the attribute |
| Column |  | Entry column header in dataset |
| Comment | _rdfs:comment_ | Comment for the entry |
| Definition | _skos:definition_ | Entry text definition|
| Entity | _rdf:type_ | Class of entity entry |
| Format | | Specifies the structure of the Unit value|
| inRelationTo | _sio:inRelationTo_ | Entity that the role is linked to |
| Label | _rdfs:label_ | Label for the entry |
| Property |  | Custom datatype property specification |
| Relation | | Custom relation that replaces inRelationTo |
| Role | _sio:hasRole_ | Type of the role of the entry |
| Time | _sio:existsAt_ | Time point of measurement |
| Unit | _sio:hasUnit_ | Unit of Measure for entry |
| wasDerivedFrom | _prov:wasDerivedFrom_ | Entity from which the entry was derived |
| wasGeneratedBy | _prov:wasGeneratedBy_ | Activity from which the entry was produced |

The names of the explicit and implicit entries are stored in the DM Column of the Dictionary Mapping table called "Column", which refers to the column names in the dataset.
Annotation properties including comments, labels, or definitions can be provided to describe an explicit or virtual entry in further detail, for the human reader.
If an entry describes a characteristic, the Attribute column should be populated with an appropriate class, and when appropriate the attributeOf column should be used to reference the entity to which the attribute belongs. Usually the attributeOf column contains the the implicit entity for which the explicit entry is a characteristic.

For instance, using the example from below, a dataset may contain a column called age. Although it may be easy for the human to read and understand that the age refers to the mother, the dataset often doesn't explicitly include this; if we aim the crate a full semantic representation of the data this relation must be defined for the computer.

If an entry describes an object, an applicable class should be included in the Entity column as well as its role that differentiates it as a member of that object class. Using the same example, if we look at the column with the implicit entry for mother (??mother), mother is not a characteristic of a human, but rather a *type* of human, the entity. Thus we add the class sio:Human to the entity column, and the role the defines its type in relation to the entity in the role column (chear:Mother).

In general, for each row in the Dictionary Mapping, either the Entity or Attribute column should be populated with an appropriate class, but we must be careful where and how we classify the entry. For instance, if we had a column called Race it would be the attribute of a human, but a column called Caucasain would be related to the entity human. In order to understand the correct columns to fill one may find it useful to explore the hierarchy of the relevant term.

In the case that an entry references another item, the object should be stored in the inRelationTo column. By default, if both the Role and Relation are empty, the knowledge graph created will connect the main entry to the value in the inRelationTo column using the SIO property *sio:inRelationTo*. Both the Relation and Role column have the ability to overwrite this property and can denote a custom relationship between the value. One common example of this is the SIO property isPartOf. In the case that both columns are filled, the Role reference for that entry in the knowledge graph will be *sio:hasRole*. It is important to note that the Role column can be used independently of the inRelationto column.

The units of a given variable and the format of the data in the cell can be specified in the Unit and Format columns, respectively. For instance if the one of the entries is the age of an object, the unit column shouldd specify whether the age is stored in years, days, months, etc.

Time instances (events) or time intervals associated with an entry should be referenced in the Time column. Time intervals are not solitary occurances but rather things that span a period of time. In our example, an example of the is the ??visit1, which represents visits anytime during the first trimester of pregnancy. Entries in the Time column that are Time Intervals, not Time Instances, should also be noted in the Timeline.

Provenance information pertaining to how the variable was derived or generated can be included in the wasDerivedFrom and wasGeneratedBy columns, respectively.
An example Dictionary Mapping from the CHEAR project is provided below.

| Column | Attribute | attributeOf |  Entity | Unit | Time | Role | inRelationTo | wasDerivedFrom |
| ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- | ----------- |
| id | sio:Identifier | ??child | | | |  | ??study | |
| race | sio:Race | ??mother |  | | | | | |
| age | sio:Age | ??mother | | sio:Year |  ??visit1 | | | |
| edu | chear:EducationLevel | ??mother | |  | ??visit2 | | | |
| insur | chear:InsuranceType | ??mother | | |  ??visit3 | | | |
| urineam_3 | sio:Quality | ??sample3 | | |  ??visit3 | | | |
| t1bmi | chear:BMI | ??mother | | kg/m2 | ??visit1 | | |  t1weight, ??height|
| t1weight | chear:Weight | ??mother | | kg | ??visit1 | | | |
| smoke | chear:SmokingStatus | ??mother | | | ??pregnancy | | | |
| birthwt | chear:Weight | ??child | | g | ??birth | | | |
| ??height | sio:Height | ??mother | | | | | |
| ??mother | | | sio:Human | | | chear:Mother |   ??child ||
| ??child | | | sio:Human | | | chear:Child |   ??mother ||
| ??birth | | | sio:Birthing | | |  |  ??child | |
| ??pregnancy | | | chear:PregnancyPeriod | | |    | ??birth | |
| ??conception | | | chear:Conception | | |  |  ??child | |
| ??sample3 | | | U | | | | | ??mother|

## Codebook

The Codebook table has a similar role to the Dictionary Mapping table; while the Dictionary Mapping serves to encode the meanings of the column headers in the dataset, the Codebook contains the all the possible values for each column, and their associated labels. For instance, if you had a dataset which contained information about people, one of the possible columns may be gender, which would be the entry in the Dictionary Mapping, while the possible entries for that column, male and female, would be entries in the Codebook.

| Codebook Column | Related Property | Description |
|------------ | -------------| -------------|
| Class | _rdf:type_ | Class the Code refers to |
| Code | _sio:hasValue_ | Value of the dataset entry|
| Column |  | Entry column header in dataset |
| Comment | _rdfs:comment_ | Comment for the codebook entry |
| Definition | _skos:definition_ | Definition for the codebook entry |
| Label | _rdfs:label_ | Label for the codebook entry |
| Resource | _rdf:type_ | Resource URI the Code refers to |

For variables with discrete values, when appropriate, we augment each possible value with mappings to corresponding concepts, as shown in the table below.

| Column | Code | Label    | Class  |
|------------ |------------ | -------------| -------------|
| race | 0  | white                           | chear:White                        |
| race | 1  | black                           | chear:BlackOrAfricanAmerican       |
| race | 2  | other                           | chear:OtherRace                    |
| edu  | 0  | high school degree or less      | chear:HighSchoolOrLess             |
| edu  | 1  | technical college or some college | chear:SomeCollege |
| edu  | 2  | college graduate                | chear:CollegeGraduate              |
| edu  | 3  | above			       | chear:AdvancedDegree              |
| smoke | 0  | no smoking in pregnancy         | chear:NonSmoker                    |
| smoke | 1  | some smoking in pregnancy       | chear:Smoker                      |
| insur | 0  | private/hmo/self-pay            | chear:NoPublicInsurance            |
| insur | 1  | public | chear:PublicInsurance |

## Timeline

Customized time intervals can be specified in the Timeline sheet, which can be used to annotate the corresponding class and unit related to a given entry, as well start and end times of an event, and a connection to concepts that the entry may be related to. When using the timeline ensure that the time entry in the table is a *time interval* rather than a *time instance*. For example, a birthday would not be in the timeline, rather it should be viewed as a characteristic of a subject.
On the other hand, in the CHEAR study, the data tracks child development in terms of observations taken at specific times relative to the birth or conception of the child.
Comparing measurements across subjects for a particular time such as "the second trimester of pregnancy" requires we have a concept to describe this time interval, even though it will not necessarily fall during the same calendar week for any two subjects.

The Timeline Specification is shown below.

| Timeline Column | Related Property | Description|
|------------ | -------------| -------------|
| End | _sio:hasEndTime_ | End time associated with the timeline entry |
| inRelationTo | _sio:inRelationTo_ | What the timeline entry is in relation to |
| Label | _rdfs:label_ | Label for the timeline entry |
| Name | | Reference to the virtual timeline entry |
| Start | _sio:hasStartTime_ | Start time associated with the timeline entry |
| Type | _rdf:type_ | Class of the timeline entry |
| Unit | _sio:hasUnit_ | Unit of time |

An example Timeline table is shown below.

| Name | Label | Type | Start | End | Unit | inRelationTo |
|------------ | -------------|------------ |------------ |------------ | -------------| -------------|
| ??visit1 | Visit 1 | chear:Visit | 4.71| 19.1 | sio:Week | ??conception |
| ??visit2 | Visit 2 | chear:Visit | 14.9 | 32.1 | sio:Week| ??conception |
| ??visit3 | Visit 3 | chear:Visit | 22.9| 38.3 | sio:Week | ??conception |

## Code Mappings
The Code Mappings table contains mappings of abbreviated terms or units to their corresponding ontology concepts.

This aids the annotator in allowing the use of shorthand notations instead of having to repeated search for the URI of the ontology class.
An example set of code mappings is shown below.

| code | uri | label |
| ---- | ---- | ---- |
| Pb | chebi:25016 | Lead |
| S | uberon:0001977 | Serum |
| cm | obo:UO\_0000015 | centimeter |
| kg | obo:UO\_0000009 | kilogram |
| kg/m2 | obo:UO\_0000086 | kilogram per square meter |
| mgL | obo:UO\_0000273 | milligrams per liter |

The set of code mappings used in the CHEAR project are useful for a variety of domains, and can be found on [GitHub](https://github.com/tetherless-world/chear-ontology/blob/master/code_mappings.csv).

## Configuration
The config.ini file is the configuration file used by the sdd2rdf script.
Note that file locations written in this config file can be absolute paths or URLs, as well as relative paths from the location that the sdd2rdf.py script exists.
An example configuration file is shown below.

You may notice that the file addresses are stored in both the infosheet and the configuration file. In the scenario that the locations are different in the two files, the script will use the infosheet.

[Prefixes]
# Specify a file with the prefixes for existing ontologies used in your translation
prefixes = Cheese/config/prefixes.txt
# Specify the base uri to be associated with all triples minted by the script
base_uri = cheese-kb

[Source Files]
# Specify the location of the Dictionary Mapping file
dictionary = Cheese/input/DM/cheeseDM.csv
# Specify the location of the Codebook file
codebook = Cheese/input/CB/cheeseCB.csv
# Specify the location of the Timeline file
timeline = Cheese/input/TL/cheeseTL.csv
# Specify the location of the Code Mapping file
code_mappings = Cheese/config/code_mappings.csv
# Specify the location of the Data file
data_file = Cheese/input/Data/cheese.csv
# Specify the location of the Properties customization file
properties = Cheese/config/cheeseProperties.csv
# Specify the location of the Infosheet file
infosheet = Cheese/config/cheeseInfosheet.csv

[Output Files]
# Specify the location where the output RDF will be written to
out_file = Cheese/output/trig/cheese-kg.trig
# Specify the location where the output SPARQL query will be written to
query_file = Cheese/output/sparql/cheeseQ
# Specify the location where the output SWRL model will be written to
swrl_file = Cheese/output/swrl/cheeseSWRL

## Prefixes
The prefixes.csv file is used to specify the namespace URIs for the prefixes used throughout the annotated SDD tables. An example prefix file is shown below.

| prefix | url |
|------------ | -------------|
|np|http://www.nanopub.org/nschema#|
|owl|http://www.w3.org/2002/07/owl#|
|rdf|http://www.w3.org/1999/02/22-rdf-syntax-ns#|
|rdfs|http://www.w3.org/2000/01/rdf-schema#|
|prov|http://www.w3.org/ns/prov#|
|xsd|http://www.w3.org/2001/XMLSchema#|
|uo|http://purl.obolibrary.org/obo/UO_|
|sio|http://semanticscience.org/resource/|
|stato|http://purl.obolibrary.org/obo/STATO_|
|example-kb|http://example.com/kb/example#|

Note that the prefix that you include in the configuration file as the base URI should also be included in the prefixes file.
## Property Customization
### Customization of properties used in generating KG

The Semantic Data Dictionary approach creates a linked representation of the class or collection of datasets it describes.

The default model that sdd2rdf creates is based on the Semanticscience Integrated Ontology ([SIO](https://bioportal.bioontology.org/ontologies/SIO)), which can be used to describe a wide variety of objects using a fixed set of terms.

The default model that we adopt further incorporates annotation properties from [RDFS](https://www.w3.org/TR/rdf-schema/) and [SKOS](https://www.w3.org/TR/2008/WD-skos-reference-20080829/skos.html), and provenance predicates from [PROV-O](https://www.w3.org/TR/prov-o/).

The default set of properties are shown below.

| Column | Property |
|------------ | -------------|
| Attribute    | _rdf:type_ |
| attributeOf | _sio:isAttributeOf_ |
| Comment | _rdfs:comment_ |
| Definition | _skos:definition_ |
| Entity | _rdf:type_ |
| inRelationTo | _sio:inRelationTo_ |
| Label | _rdfs:label_ |
| Role | _sio:hasRole_ |
| Time | _sio:existsAt_ |
| Unit | _sio:hasUnit_ |
| Value | _sio:hasValue_ |
| wasDerivedFrom | _prov:wasDerivedFrom_ |
| wasGeneratedBy | _prov:wasGeneratedBy_ |

By specifying the associated properties with certain columns of the Dictionary Mapping Table, the properties used in generating the knowledge graph can be customized.

This means that it is possible to use an alternate knowledge representation model, and thus makes this approach ontology agnostic.

Nevertheless, we urge the user to practice caution (for example, don't replace an object property with a datatype property) when customizing the properties used to ensure that the resulting graph is semantically consistent.

## Templating
Templating in the Dictionary Mapping (DM) table adopts the scheme used by RML and [R2RML](https://www.w3.org/TR/r2rml/#from-template).

Essentially, in the Template column of the DM, it is possible to specify the format for the generated URI by specifying a template string and encompassing valid column name(s) within curly brackets: string-{col_name}.

The value in the curly brackets resolves to the value for that column in the current row.

repository: tetherless-world/sdd

gha_language: HTML

repo_name: tetherless-world/sdd


text:
# rand-bytes

A simple tool to generate cryptographically secure random bytes using a cryptographic pseudo-random number
generator.

Internally, `rand-bytes` uses [`ring`'s random number generator](https://briansmith.org/rustdoc/ring/rand/index.html).

## Usage

Install this with cargo:

```sh
cargo install rand-bytes
```

Or download one of the [releases](https://github.com/lawliet89/rand-bytes/releases).

If your architecture/OS is not supported, you can simply build it yourself.

## Command line options

```text
Generate some random bytes

USAGE:
    rand-bytes [OPTIONS] <SIZE>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -o, --output <FILE>    Specify a file to output the bytes to, rather than stdout

ARGS:
    <SIZE>    Sets the number of bytes to generate random values for

```

repository: RUSTools/rand-bytes

repo_name: RUSTools/rand-bytes


text:
---
layout: post
title: "OsAld-Y"
description: ""
category: genes
tags: [growth, chloroplast, development, sugar, plant growth, chloroplast development]
---

* **Information**
    + Symbol: OsAld-Y
    + MSU: [LOC_Os06g40640](http://rice.uga.edu/cgi-bin/ORF_infopage.cgi?orf=LOC_Os06g40640)
    + RAPdb: [Os06g0608700](https://rapdb.dna.affrc.go.jp/locus/?name=Os06g0608700)

* **Publication**
    + [Identification of a peroxisomal-targeted aldolase involved in chlorophyll biosynthesis and sugar metabolism in rice.](http://www.ncbi.nlm.nih.gov/pubmed?term=Identification of a peroxisomal-targeted aldolase involved in chlorophyll biosynthesis and sugar metabolism in rice.%5BTitle%5D), 2016, Plant Sci.

* **Genbank accession number**

* **Key message**
    + Our results suggest that the OsAld-Y participates in Chl accumulation, chloroplast development and plant growth by influencing the photosynthetic rate of leaves and the sugar metabolism of rice

* **Connection**

[//]: # * **Key figures**


text:
---
#
# By default, content added below the "---" mark will appear in the home page
# between the top bar and the list of recent posts.
# To change the home page layout, edit the _layouts/home.html file.
# See: https://jekyllrb.com/docs/themes/#overriding-theme-defaults
#
layout: home
---

# Hi there I'm Eriol Fox 🦊

## I'm a full-stack, Human Rights Centred Designer (HRCD) and PhD researcher from Bristol in the UK 🇬🇧🇪🇺.

I'm currently working part-time as a product manager for OSS and a designer while I research how Designers contribute to Humanitarian Open Source Software at [Open Lab Newcastle](https://openlab.ncl.ac.uk/people/eriol-fox/). You can check out my [portfolio](https://erioldoesdesign.github.io/portfolio/) and [drop me a<EMAIL_ADDRESS>if you've got a role you'd like to discuss.
[Take a look at my research](https://github.com/Erioldoesdesign/Design_HOSS_PhD).

Previously, I was head of design at Open Food Network, Ushahidi and other app, ecommerce and digital platforms for the last 11 years.

After discovering a love for Free and Libre Open Source Software I started contributing as a Designer to various OSS projects. Most notably at [Open Source Design](http://opensourcedesign.net/).

You can find me online [@erioldoesdesign](https://twitter.com/EriolDoesDesign) on various social media and networking sites.

![Eriol speaking at Design matters 2019 on designing for human rights technology](https://raw.githubusercontent.com/Erioldoesdesign/erioldoesdesign.github.io/master/images/Eriol-design-matters-2019-main.jpg "Eriol speaking at Design matters 2019 on designing for human rights technology")


text:
# Saltybet Desktop Application
This is an application that saves match data from [SaltyBet](http://www.saltybet.com/)
I have planned automatic betting, etc at a later stage. Currently it only stores the match data in a database in your My Documents folder.

The application uses the Chromium Embedded Framework to keep a browser window open in the background and interacts with the JavaScript from C#. This is what I thought was the best solution so I could poll the site every second to check for updates in match statuses.

#Legal
This project is licensed under the [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt) license

repository: faylite/saltybet-desktop

repo_name: faylite/saltybet-desktop


text:
    vazco/Universe Mailchimp v3 API

Package for using the newest Mailchimp API.

## Implemented functions:

* Add a new list member

## List of all functions

http://developer.mailchimp.com/documentation/mailchimp/reference/overview/

## A way to add a new function

You need to create new function within which you invoke:

```
#!javascript

this._apiCall(method = 'GET', {resource = '', queryParams = {}, body = {}} = {})

```

method [String] - http method type - CRUD - POST, GET, PUT, DELETE

resource [String|Array of String|Array of Object] - the order has meaning here - corresponds to "Endpoints" from Mailchimp API documentation.

queryParams [Object] - order has no meaning - corresponds to "Query string parameters" from Mailchimp API documentation.

body [Object] - request body - corresponds to "Request body parameters" from Mailchimp API.

## Usage

```
#!javascript

import mailchimpAPI from 'meteor/universe:mailchimp-v3-api';

...

mailchimpAPI.setApiKey('your API key from Mailchimp');
mailchimpAPI.addANewListMember({
    list_id: 'adfaf',
    body: {
        email_address<EMAIL_ADDRESS>        status: 'pending'
    }
});
```

you can use chain notation as well:

```
#!javascript

mailchimpAPI.setApiKey('your API key from Mailchimp').addANewListMember({
    list_id: 'adfaf',
    body: {
        email_address<EMAIL_ADDRESS>        status: 'pending'
    }
});
```

### License

**Like every package maintained by [Vazco](https://vazco.eu/), Universe Mailchimp v3 API is [MIT licensed](https://github.com/vazco/uniforms/blob/master/LICENSE).**

gha_language: JavaScript


text:
# smarttag [![Netlify Status](https://api.netlify.com/api/v1/badges/745297bf-9d3c-48ab-902c-eda9be6c39f2/deploy-status)](https://app.netlify.com/sites/smarttag/deploys)

smarttag is a simple to use web tool which enables people to search for related hashtags on Instagram and generate a
curated list of hashtags for their next Instagram post considering hashtag relations and uses.

While Instagram limited their public [API back in 2018](https://techcrunch.com/2018/04/02/instagram-api-limit/),
smarttag visits Instagram for you and gets the data using a script that runs completely in your browser. You don't need
to log in our authenticate in any way, in fact we encourage users to keep logged out when using smarttag so that
Instagram is not able to track your search efforts.

## Contributing

Contributing to smarttag is very welcome! Please go ahead and fork, create issues and submit pull requests, we
appreciate every input!

gha_license_id: MIT


text:
# reference genomes

## `mason_genome.contig-length_6500.seed_37.fa`

This file was generated with `mason` in the following version (installed via bioconda):

    VERSION
        Last update: 2018-02-02_13:03:05_+0100
        mason_genome version: 2.0.9 [e165baf]
        SeqAn version: 2.4.0

The command was:

    mason_genome --contig-length 6500 --seed 37 --out-file mason_genome.contig-length_6500.seed_37.fa

## `M13.fa`

This file is simply a copy of the 5th entry in
[the UniVec core fasta file](https://ftp.ncbi.nlm.nih.gov/pub/UniVec/UniVec_Core).

# simulated reads

Reads were simulated separately from each of the above genomes, to keep sources of reads separate.
They were then joined for the workflow to remove the M13 reads again.
Original read data as simulated can be found here.
The files found in `../trimmed/test/` are simply copies of `test.R1.fq` and `test.R2.fq`.
The workflow should remove all M13 reads from them.
The GitHub workflow validates this by comparing the resulting reads against the simulated genome reads.

Reads were simulated with `mason` in the following version (installed via bioconda):

    VERSION
        Last update: 2018-02-02_13:03:05_+0100
        mason_simulator version: 2.0.9 [e165baf]
        SeqAn version: 2.4.0

Commands were:

    mason_simulator -ir mason_genome.contig-length_6500.seed_37.fa -n 1000 -o mason_genome.contig-length_6500.seed_37.R1.fq -or mason_genome.contig-length_6500.seed_37.R2.fq --read-name-prefix mason_genome.contig-length_6500.seed_37_
    mason_simulator -ir M13.fa -n 1000 -o M13.R1.fq -or M13.R2.fq --read-name-prefix M13_
    cat M13.R1.fq mason_genome.contig-length_6500.seed_37.R1.fq >test.R1.fq
    cat M13.R2.fq mason_genome.contig-length_6500.seed_37.R2.fq >test.R2.fq

gha_language: Python


text:
# genodf
C# project for generating
[extended conformant ODF 1.2 files.](https://odfvalidator.org/)
Without the hassel of UNO.

This project outputs a .NET dll.

---

### TODO
* More complete styling
* More document types

---

### References
This project uses [SharpZipLib](http://icsharpcode.github.io/SharpZipLib/)
for cross-platform zipping.

repository: noahmorrison/genodf

repo_name: noahmorrison/genodf


text:
# extract-dom-content

[![NPM version of extract-dom-content](https://img.shields.io/npm/v/extract-dom-content)](https://www.npmjs.com/package/extract-dom-content)

Provide a DOM element and get all of its cleaned and standardized text content in an array or string.

This library was originally developed with webpage spellchecking in mind, but can be used for any purpose you might have for it.

## Installation

```
npm install extract-dom-content
```

## API

### extractDomContent(originalNode, [options]) ⇒ String \| Array
Takes in a DOM element and returns all of its text content.

| Param | Type | Default | Description |
| --- | --- | --- | --- |
| originalNode | Element |  | DOM element to get the content from. |
| [options] | Object | {} | An object of options to apply additionals filters and/or change the return type. |
| [options.returnAsArray] | boolean | false | Whether the content should be returned as a linebreak-separated string or an array of strings. |
| [options.removeDuplicates] | boolean | false | Whether duplicate strings should be removed or kept. |

## Browser & Virtual DOM support

This package supports nodes from:
- regular browser DOMs (tested in Google Chrome) ✅
- [jsdom](https://github.com/jsdom/jsdom) ✅

If you have tried the package with a different virtual DOM package/library, please let us know how it went so we can add the information on this page.

## Contributing

If you would like to add features, fix bugs or optimize this package, feel free to fork this repository and submit a pull request.

repository: koalatiapp/extract-dom-content

repo_name: koalatiapp/extract-dom-content


text:
# svelte-server-client-rendering
Example of the server-side, client-side and static rendering with
[Svelte](https://svelte.dev/). For self-learning.

```javascript
npm install
npm run build
npm start
```

## How it works

When you execute `npm run build` you compile and render **static** files. Here
we use the [Rollup](https://rollupjs.org) bundler. It's controlled by the
`rollup.config.js` file. We have two configurations there: the first compiles
[Client.svelte](Client.svelte) and creates the `public/client.js` file, the second compiles
[Static.svelte](Static.svelte) and outputs the rendering results to the `static.html` file.

With `npm start` command you start a primitive server written in the [index.js](index.js) file.
The **server-side rendering** occurs when the server is preparing a response to a client.
For the root `/` URL the server creates `html` rendered by the [Server.svelte](Server.svelte). During rendering  it uses the `static.html` which was rendered as a static content.
For any other URL our server assumes that static files are requested from the [public](public) directory.

The **client-side rendering** happens when a browser loads and executes the `client.js` file.

In the browser you'll see results of the every rendering. It will help you with
understanding where and when it was done.


text:
| [Home](home.md) | [News](news.md) | [Gallery](gallery.md) | [Examples](examples.md) | [Downloads](downloads.md) | [Documentation](documentation.md) | [Support](support.md) | [Sources](https://github.com/gammasoft71/xtd) | [Project](https://sourceforge.net/projects/xtdpro/) | [Gammasoft](gammasoft.md) | [Website](https://gammasoft71.github.io/xtd) |

# Writing applications

This tutorial describes the basic steps that you must complete to create and run a console, GUI or test application from the command line.

## In this section

* [Writing console application](writing_applicaion_console.md) describes the basic steps that you must complete to create and run a console application from the command line.
* [Writing GUI application](writing_applicaion_gui.md) describes the basic steps that you must complete to create and run a xtd.forms application from the command line.
* [Writing test application](writing_applicaion_test.md) describes the basic steps that you must complete to create and run a xtd.tunit unitests application from the command line.
* [Running test](writing_applicaion_running_test.md) provides running xtd.tunit test documentation.
* [Extending test](writing_applicaion_extending_test.md) provides extending xtd.tunit test documentation.

## See also

* [Documentation](documentation.md)

______________________________________________________________________________________________

© 2023 Gammasoft.


text:
raj-ds

> A design system for raj-ds UI components, built on [@design-systems/cli](https://github.com/intuit/design-systems-cli).

## 👍 Philosophy

This is a design system intended for UI components currently being built or tested in raj-ds.

Included with this repo:

- Scaffolding for shared components and packages.
- Automatic CI/CD pipeline on circleCI.
  - PR canary builds to NPM (using auto).
  - Canary builds of Storybook (guides included in docs).
  - Accessibility audits.
  - Bundle size monitoring.
- An instance of the Storybook documentation site with custom plugins.
- Theme support.
- Advanced development using Typescript.

Components in this repository will ideally not clone functionality from other design systems, unless necessary for a time-boxed experiment.

## 🚀 Usage

To use a component from this repo you will first need to install the component into your project.

For an example we will try to use the `@raj-ds/card` component.

```sh
npm i @raj-ds/card
# or with yarn
yarn add @raj-ds/card
```

Then to use the component in your code just import it!

```js
import Card from '@raj-ds/card';
```

### :nail_care: CSS

To use the components you have to import the `css` files along with the components.

```js
import Card from '@raj-ds/card';
import<EMAIL_ADDRESS>```

Or you can use our babel preset to do this automatically for you.

First install the preset

```sh
npm i --save-dev @raj-ds/babel-preset
# or
yarn add -D @raj-ds/babel-preset
```

In your babel config add the following preset:

```json
{
  "presets": ["@raj-ds/babel-preset"]
}
```

Now whenever you import one of the `@raj-ds` components, `babel` will automatically include the correct CSS file!

## 🤝 Contributing

To create a new component:

```sh
yarn run create
```

Follow the prompts and you will have a new sub-package for your component!

```sh
# First link the package
yarn
# Then start developing
cd components/<Component Name>
yarn run dev
```

Before submitting a pull request ensure that all of the following work:

1. `yarn build`
2. `yarn lint`
3. `yarn test`

### How to use the `scripts`

Inside the package.json there are a bunch of scripts that this repo uses to run the project in development and to build the project.

Below you can read a description of scripts you should use while developing in this project.

- `yarn dev`: Builds everything and starts a storybook with all components
- `yarn test`: Run `jest` over the test files
- `yarn lint`: Lint all files using `eslint`
- `yarn clean`: Remove all dependencies, build files, and generated files from the project
- `yarn create`: Create a new components withing the repo
- `yarn create:package`: Create a new package withing the repo
- `yarn playroom`: Start a `playroom` with all of your components. This is where `.snippet` files are used
- `yarn size`: Determine how your changes effect the size of all sub-packages

#### Package Level `scripts`

Every command works at both the monorepo and package level. The means you can run some script from just the package/component for a faster development experience.

- `yarn dev`: Build any dependency in the monorepo the component depends on, and start a storybook with just the component
- `yarn test`: Test just the component
- `yarn lint`: Lint just the component
- `yarn clean`: Clean the generated files for just the component
- `yarn size`: Determine how your changes effect the size of the component

repository: vasikarla-zz/raj-ds

repo_name: vasikarla-zz/raj-ds


text:
---
subcategory: "Clinical Data Repository (CDR)"
page_title: "HSDP: hsdp_cdr_org"
description: |-
  Manages HSDP CDR Organizations
---

# hsdp_cdr_org

Provides a resource for onboarding HSDP CDR [organizations](https://www.hsdp.io/documentation/clinical-data-repository/stu3/getting-started/ehr).
This resource provides  limited management of the onboarded FHIR organization.

## Example Usage

The following example creates and onboards a CDR FHIR organization

```hcl
data "hsdp_cdr_fhir_store" "sandbox" {
  base_url = "https://cdr-stu3-sandbox.hsdp.io/store/fhir"
  fhir_org_id = var.root_org_id
}

# Onboard the root Organization onto CDR
resource "hsdp_cdr_org" "root_org" {
  fhir_store = data.hsdp_cdr_fhir_store.sandbox.endpoint
  org_id     = var.root_org_id

  version = "r4"

  name = "Root ORG"
}

# Onboard the Hospital as a sub org to the root ORG
resource "hsdp_cdr_org" "hospital" {
  fhir_store = data.hsdp_cdr_fhir_store.sandbox.endpoint
  org_id     = var.sub_org_id

  # Set up this org to use FHIR R4
  version = "r4"

  name    = "Hospital"

  # This is a sub org of the root ORG
  part_of = var.root_org_id

  purge_delete = false
}
```

## Argument Reference

The following arguments are supported:

* `fhir_store` - (Required) The CDR FHIR store to use
* `version` - (Optional) The FHIR version to use. Options [ `stu3` | `r4` ]. Default is `stu3`
* `org_id` - (Required) The Org ID (GUID) under which to onboard. Usually same as IAM Org ID
* `name` - (Required) The name of the FHIR Org
* `part_of` - (Optional) The parent Organization ID (GUID) this Org is part of
* `purge_delete` - (Optional) If set to `true`, when the resource is destroyed the provider will purge all FHIR resources associated with the Organization. The `ORGANIZATION.PURGE` IAM permission is required for this to work. Default: `false`

!> Only use `purge_delete = true` when you are sure recursive deletion of FHIR resources under the Organization is acceptable for the given deployment.

!> Switching FHIR versions causes the resource to be replaced, so be careful with this.

## Attributes Reference

The following attributes are exported:

* `id` - The GUID of the organization

## Import

An existing Organization can be imported using `terraform import fhir_store,org_id,fhir_version`, e.g.

```bash
terraform import hsdp_cdr_org.myorg https://cdr-stu3-sandbox.domain.com/store/fhir/fhir-root-org-guid,fhir-org-guid,r4
```

~> The import string must consist of 3 comma separated values

gha_language: Go


text:
# Fictional total trends.
A project to generate and visualize fictional trends in total counts.

This project will provide tools designed to generate a dataset that can be used to create mock visualizations of weekly counts.

One example of live data visualized in this way would be to show [year by year cumulative counts of FAFSA fileings](https://web.education.wisc.edu/nwhillman/index.php/2017/01/04/high-school-fafsa-filing-trends/).

## Progress indicator

This project is under development. The following features / functions are planned.

- [ ] Write Algorithm base to generate fictional data.
- [ ] Add interactive features to algorithim allowing user to specify options such as "hourly, daily, weekly, or monthly."
- [ ] Generate base visualizations.
- [ ] Add ineractive options to the visualizations.

## Example output

![Demonstration illustration of output from this repo.](basedata2_demp.png "Demonstration Output")

## Other notes

repository: adamrossnelson/ftt

repo_name: adamrossnelson/ftt


text:
BSidesCharm 2017 Microsoft Patch Analysis for Exploitation - Stephen Sims
===================

https://www.youtube.com/watch?v=LHNcBVQF1tM

Structure of Microsoft Patches
--------
As of October 2016 changed to Cumulative Update (CU) model - each month contains the previous month/s patches

PowerShell tool by Greg Lineras (@Laughing_Mantis) that is useful for parsing the Cumulative Update package for only the recently modified updates (i.e. what we care about)

April 2017 - must go to https://portal.msrc.microsoft.com/en-us/security-guidance to download CU's
https://portal.msrc.microsoft.com/en-us/security-guidance/summary for finding the actual vulnerability information (previously found in TechNet)

Binary Diffing Tools
--------
Zynamics/Google BinDiff - free
Core Security turbodiff - free
DarunGrim4 - free, Standalone - still need IDA
patchdiff2 - free, needs licensed copy of IDA or turbodiff 5.0
Diaphora - free written in Python so abit slower

*34:29* Reversing Demo
--------
34:29 Demo reversing MS


text:
# Integration-Test-Docker-Environment 0.4.1, released 2021-07-29

Code name: Fix index out-of-range in FileDirectoryListHasher

## Summary

This release fixes an index-out-of-range bug in the FileDirectoryListHasher which occurs for single character file or directory names.

### Supported Exasol Versions

* **6.2**: up to 6.2.15
* **7.0**: up to 7.0.11

If you need further versions, please open an issue.

### Tested Docker Runtimes

- Docker Default Runtime
- [NVIDIA Container Runtime](https://github.com/NVIDIA/nvidia-container-runtime) for GPU accelerated UDFs

## Bug Fixes:
   - #103: Index out of range exception in FileDirectoryListHasher

## Features / Enhancements:
n/a

## Refactoring:
n/a


text:
# base-parent #

[![Java CI](https://github.com/hazendaz/base-parent/workflows/Java%20CI/badge.svg)](https://github.com/hazendaz/base-parent/actions?query=workflow%3A%22Java+CI%22)
[![Maven central](https://maven-badges.herokuapp.com/maven-central/com.github.hazendaz/base-parent/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.github.hazendaz/base-parent)
[![Apache 2](http://img.shields.io/badge/license-Apache%202-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0)

![hazendaz](src/site/resources/images/hazendaz-banner.jpg)

See site page [here](https://hazendaz.github.io/base-parent/)

## Quick Start ##

If you quickly want to configure maven for most use cases, just download this project and run `mvn clean install`.

Requires
- Maven 3.8.5 or better
- Java 11 or better

After running `mvn clean install` against this project, simply add the parent to your pom.

```
<parent>
    <groupId>com.github.hazendaz</groupId>
    <artifactId>base-parent</artifactId>
    <version>20</version>
</parent>
```

This project contains only testing and configuration dependencies beyond maven plugin configurations.  Simply run
`mvn clean install` on your project and everything should build as expected.

## Introduction ##

Configuring maven for the first time can take a lot of work. This projects intent is to remove that barrier to usage.
This project handles majority of use cases when working with maven.  In the simplest of projects, this may mean
nothing more than including this parent pom and describing your project.

Support is provided for extensive `mvn site` providing user with extensive information regarding application.

Source code is formatted using eclipse source format style to ensure projects stay consistent in regards to spacing.
This is disabled by default.  To enable this functionality, simply build companion `build-tools` from hazendaz.

In order to enable compression or format profiles, copy resources from pom-resources folder to root of project.

## Installation ##

Launching the build requires Maven install - everything will download on build.

Type:

    mvn clean install

And add parent to your pom.

```
<parent>
    <groupId>com.github.hazendaz</groupId>
    <artifactId>base-parent</artifactId>
    <version>29</version>
</parent>
```

Run `mvn clean install` against your own project

## Profiles ##

`checks` - Runs checkstyles, pmd, findbugs, jacoco, and nvd dependency scan.

`compression` - Runs compression against all contained html, css, and javascript.  Requires existence of compression.xml
file to activate.

`eclipse` - Lifecycle mapping exclusions for eclipse.  Activated with existence of property m2e.version.

`endorsed` - Pulls down webservices api overriding version contained with jdk

`format` - Runs eclipse formatting using spaces rather than tabs and 120 rather than 80 character lines.  Requires
existence of format.xml file to activate.

`license` - Runs license java file tagging.  Requires existence of license.txt file to activate.

`release` - Runs gpg against deliverables when releasing not via release plugin such as during deploy.

`sort` - Runs a sort against your pom configuration helping to keep projects aligned.

`wsimport` - Runs wsimport goal.  This is mainly for example as additional configuration is required.

## Version Plugin Consideration ##

Version plugin will fail if any POM is marked as Byte Order Mark is UTF-8 (BOM).
If this occurs, create a new POM and copy the contents over in order to fix.
For reference, this was a problem with [mybatis/mybatis-spring](https://github.com/mybatis/spring/commit/684da1f52c414f4de231e353fc1ef3a8ae4a9f4f).

## Dependency Management ##

Normally dependency management would not exist at this level.  The intent here is to include managed dependencies used during build or test phases.
In order to use any of these, you must define them within your own pom.

Use of JMockit requires Junit to be listed last.

Dependencies are as follows:
- hibernate-validator-annotation-processor
- lombok

## Plugin Management ##

Majority of plugins will perform on their own.  All managed plugins are listed here.

- animal-sniffer-maven-plugin
- build-helper-maven-plugin
- coveralls-maven-plugin
- dependency-check-maven
- formatter-maven-plugin (formally the maven-java-formatter-plugin)
- git-commit-id-plugin
- htmlcompressor-maven-plugin
- jacoco-maven-plugin
- jaxws-maven-plugin
- jdepend-maven-plugin
- license-maven-plugin
- maven-antrun-plugin
- maven-assembly-plugin
- maven-changelog-plugin
- maven-changes-plugin
- maven-checkstyle-plugin
- maven-clean-plugin
- maven-compiler-plugin - useIncrementalCompilation set to false, See https://jira.codehaus.org/browse/MCOMPILER-209
- maven-dependency-plugin
- maven-deploy-plugin
- maven-enforcer-plugin
- maven-gpg-plugin
- maven-install-plugin
- maven-jar-plugin
- maven-javadoc-plugin
- maven-jxr-plugin
- maven-pdf-plugin - currently issue prevents this from building much more than empty pdf
- maven-pmd-plugin
- maven-project-info-reports-plugin
- maven-release-plugin
- maven-resources-plugin
- maven-scm-plugin
- maven-site-plugin
- maven-source-plugin
- maven-surefire-plugin
- maven-surefire-report-plugin
- maven-war-plugin
- site-maven-plugin
- spotbugs-maven-plugin
- sonar-maven-plugin
- taglist-maven-plugin
- tomcat7-maven-plugin
- tidy-maven-plugin
- versions-maven-plugin
- wagon-maven-plugin
- weblogic-maven-plugin
- yuicompressor-maven-plugin

### More to come... ###

repository: hazendaz/base-parent

gha_language: Shell

repo_name: hazendaz/base-parent


text:
---
title: series_fill_linear() - Azure Data Explorer
description: This article describes series_fill_linear() in Azure Data Explorer.
services: data-explorer
author: orspod
ms.author: orspodek
ms.reviewer: rkarlin
ms.service: data-explorer
ms.topic: reference
ms.date: 10/23/2018
---
# series_fill_linear()

Linearly interpolates missing values in a series.

Takes an expression containing dynamic numerical array as input, does linear interpolation for all instances of missing_value_placeholder, and returns the resulting array. If the beginning and end of the array contain missing_value_placeholder, then it will be replaced with the nearest value other than missing_value_placeholder. This feature can be turned off. If the whole array consists of the missing_value_placeholder, the array will be filled with constant_value, or 0 if not specified.

## Syntax

`series_fill_linear(`*x*`[,` *missing_value_placeholder*` [,`*fill_edges*` [,`*constant_value*`]]]))`
* Will return series linear interpolation of *x* using specified parameters.

## Arguments

* *x*: dynamic array scalar expression, which is an array of numeric values.
* *missing_value_placeholder*: optional parameter, which specifies a placeholder for the "missing values" to be replaced. Default value is `double`(*null*).
* *fill_edges*: Boolean value, which indicates whether *missing_value_placeholder* at the start and end of the array should be replaced with nearest value. *True* by default. If set to *false*, then *missing_value_placeholder* at the start and end of the array will be preserved.
* *constant_value*: optional parameter relevant only for arrays entirely consists of *null* values. This parameter specifies a constant value to fill the series with. Default value is *0*. Setting this parameter it to `double`(*null*) will effectively leave *null* values where they are.

## Notes

* To apply any interpolation functions after [make-series](make-seriesoperator.md), specify *null* as the default value:

    <!-- csl: https://help.kusto.windows.net:443/Samples -->
    ```kusto
    make-series num=count() default=long(null) on TimeStamp from ago(1d) to ago(1h) step 1h by Os, Browser
    ```

* The *missing_value_placeholder* can be of any type that will be converted to actual element types. As such, either `double`(*null*), `long`(*null*) or `int`(*null*) have the same meaning.
* If *missing_value_placeholder* is `double`(*null*) (or omitted, which have the same meaning) then a result may contain *null* values. Use other interpolation functions to fill these *null* values. Currently only [series_outliers()](series-outliersfunction.md) support *null* values in input arrays.
* The function preserves original type of array elements. If x contains only int or long elements, then the linear interpolation will return rounded interpolated values rather than exact ones.

## Example

<!-- csl: https://help.kusto.windows.net:443/Samples -->
```kusto
let data = datatable(arr: dynamic)
[
    dynamic([null, 111.0, null, 36.0, 41.0, null, null, 16.0, 61.0, 33.0, null, null]), // Array of double
    dynamic([null, 111,   null, 36,   41,   null, null, 16,   61,   33,   null, null]), // Similar array of int
    dynamic([null, null, null, null])                                                   // Array with missing values only
];
data
| project arr,
          without_args = series_fill_linear(arr),
          with_edges = series_fill_linear(arr, double(null), true),
          wo_edges = series_fill_linear(arr, double(null), false),
          with_const = series_fill_linear(arr, double(null), true, 3.14159)

```

|`arr`|`without_args`|`with_edges`|`wo_edges`|`with_const`|
|---|---|---|---|---|
|[null,111.0,null,36.0,41.0,null,null,16.0,61.0,33.0,null,null]|[111.0,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,33.0,33.0]|[111.0,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,33.0,33.0]|[null,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,null,null]|[111.0,111.0,73.5,36.0,41.0,32.667,24.333,16.0,61.0,33.0,33.0,33.0]|
|[null,111,null,36,41,null,null,16,61,33,null,null]|[111,111,73,36,41,32,24,16,61,33,33,33]|[111,111,73,36,41,32,24,16,61,33,33,33]|[null,111,73,36,41,32,24,16,61,33,null,null]|[111,111,74,38,  41,32,24,16,61,33,33,33]|
|[null,null,null,null]|[0.0,0.0,0.0,0.0]|[0.0,0.0,0.0,0.0]|[0.0,0.0,0.0,0.0]|[3.14159,3.14159,3.14159,3.14159]|


text:
# This project is no longer maintained as Adobe Flash is being [End-of-lifed.](https://www.adobe.com/products/flashplayer/end-of-life.html)

# videojs-flash

[![Build Status](https://travis-ci.org/videojs/videojs-flash.svg?branch=master)](https://travis-ci.org/videojs/videojs-flash)
[![Greenkeeper badge](https://badges.greenkeeper.io/videojs/videojs-flash.svg)](https://greenkeeper.io/)
[![Slack Status](http://slack.videojs.com/badge.svg)](http://slack.videojs.com)

[![NPM](https://nodei.co/npm/videojs-flash.png?downloads=true&downloadRank=true)](https://nodei.co/npm/videojs-flash/)

The official flash tech for the videojs player.

> NOTE: This should only be used with Video.js >= 6.0.0 as the flash tech is build into versions before that!

## Table of Contents

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->

- [Installation](#installation)
- [Adding the Flash Tech to video.js](#adding-the-flash-tech-to-videojs)
  - [`<script>` Tag](#script-tag)
  - [Browserify](#browserify)
  - [RequireJS/AMD](#requirejsamd)
- [Force Flash playback](#force-flash-playback)
- [License](#license)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
## Installation

```sh
npm install --save videojs-flash
```

The npm installation is preferred, but Bower works, too.

```sh
bower install  --save videojs-flash
```

You can also use it via a CDN:
 ```html
<script<EMAIL_ADDRESS> ```

## Adding the Flash Tech to video.js

To include videojs-flash on your website or web application, use any of the following methods.

### `<script>` Tag

This is the simplest case. Get the script in whatever way you prefer and include the tech _after_ you include [video.js][videojs], so that the `videojs` global is available.

```html
<script src="//path/to/video.min.js"></script>
<script src="//path/to/videojs-flash.min.js"></script>
<script>
  var player = videojs('my-video');
</script>
```

### Browserify

When using with Browserify, install videojs-flash via npm and `require` the tech as you would any other module.

```js
var videojs = require('video.js');

// The actual tech function is registered to video.js automatically; so, there
// is no need to assign it to a variable.
require('videojs-flash');
```

### RequireJS/AMD

When using with RequireJS (or another AMD library), get the script in whatever way you prefer and `require` the tech as you normally would:

```js
require(['video.js', 'videojs-flash'], function(videojs) {
  var player = videojs('my-video');
});
```

## Force Flash playback

By default techs are used in the order in which they are registered. This means that the HTML5 tech that is buildin to video.js is going to be registered first and thus prioritized. To change this you will have to change the `techOrder` option on video.js. See examples below

> NOTE: video.js and flash are already included in these example

Prioritize the flash tech over the HTML5 tech, but fallback to the HTML5 tech if the Flash tech does not work.
```js
videojs('some-video-id', {techOrder: ['flash', 'html5']});
```

If you don't want to fallback to the HTML5 and only want to use the Flash tech you can do this:
```js
videojs('some-video-id', {techOrder: ['flash']});
```

[See the video.js docs](https://github.com/videojs/video.js/blob/master/docs/guides/setup.md#options) for additional information and other ways to set options in video.js
[See the video.js docs](https://github.com/videojs/video.js/blob/master/docs/guides/options.md#techorder) for additional information on the `techOrder` option.

## License

Apache-2.0. Copyright (c) Brightcove, Inc.

[videojs]: http://videojs.com/

repository: videojs/videojs-flash

gha_license_id: NOASSERTION

repo_name: videojs/videojs-flash


text:
Readme for QuickServer Examples
-------------------------------

IMPORTANT NOTE: These examples are written to demonstrate how to use some
of the features of QuickServer. These examples were written to be simple
and easy to understand and not as a production versions. So the author/s have
not taken security or performance has his main criteria.

How To build
-------------------
Execute ant from the Examples root folder.

How To Run Examples
-------------------
Execute .sh or .bat file from the bin folder. Make sure you have built the examples using ant.

Eg: $sh EchoServer.sh
Eg: d:\QuickSerer-Example-Folder\bin>EchoServer.bat

EchoServer v1.2
-------------------
Simple Server - Sends back "Echo :"+MSG where MSG is the message sent by
the client socket.
Uses:-
 - QuickAuthenticator, ServerAuthenticator extended classes to add authentication.
 - Txt Logging - Separate log files for application and base quickserver.
 - Xml configuration file used to load configuration.
 - XML Based JDBC Mapping - EchoServerAuthenticatorDBBased
 - Remote Administration port - QSAdminServer
 - QSAdmin Shell
 - Init Server Hooks
 - <access-constraint>
Bonus:
 - Client code: Helps to test EchoServer.

EchoWebServer v1.2
-------------------
A simple HTTP server that generates a Web page showing all the data that it
received from the Web client (browser).
Uses:-
 - Simple txt logging.
 - Xml configuration file used to load configuration.
 - ClientData implementation class to store client data.
 - PoolableObject implemented ClientData
 - QSAdmin Shell
 - Server Hooks

CmdServer v1.2
-------------------
A remote command shell (cmd.exe or command.com or any console program)
Uses:-
 - ClientData implementation class to store client data.
 - StoreObjects feature of QuickServer.
 - Remote Administration - QSAdminServer

FtpServer v 0.2
-------------------
Basic ftp server implementation.
un: anonymous

Uses:-
 - Xml configuration file used to load configuration.
 - ServerAuthenticator extended class to add authentication.
 - ClientData implementation class to store client data.
 - Remote Administration port - QSAdminServer
 - XML Logging - Separate log files for application and base quickserver
   and remote AdminServer - QSAdminServer
 - CommandPlugin implementation class to add custom commands to remote
   AdminServer - QSAdminServer.
 - QSAdmin Shell
 - <application-configuration> to load config.
 - Init Server Hooks
 - PoolableObject implemented ClientData

DateServer v 1.0
-------------------
Demonstrates how to send java object over the socket using QuickServer, it
exchanges java.util.Date object.
Uses:-
 - Simple txt logging.
 - ClientObjectHandler implementation class to handle client objects.

ChatServer v 1.0
-------------------
Demonstrates how to find another client connected and send String to it.
Uses:-
 - ClientIdentifiable and QuickServer.findFirstClientById().
 - QSAdmin Shell
 - Xml configuration file used to load configuration.
 - Init Server Hooks
 - PoolableObject implemented ClientData
Bonus:
 - Client GUI: GUI for chatserver testing
 - Load Client code: Helps to load test ChatServer.

SecureEchoWebServer v1.2
-------------------
A simple HTTPS server that generates a Web page showing all the data that it
received from the Web client (browser).
Uses:-
 - Secure Mode - SSL
 - Simple txt logging.
 - Xml configuration file used to load configuration.
 - ClientData implementation class to store client data.
 - PoolableObject implemented ClientData
 - QSAdmin Shell
 - Server Hooks

XmlAdder v 1.0
-------------------
A simple xml server that adds 2 integers. Demonstrates how to use BYTE mode.
Uses:-
 - Xml configuration file used to load configuration.
 - BYTE data mode.
 - Simple txt logging.
 - XML data used
 - QSAdmin Shell
 - Remote Administration - QSAdminServer

PipeServer v 1.0
-------------------
A simple redirection server. Demonstrates how to use BINARY mode.
Uses:-
 - Xml configuration file used to load configuration.
 - BINARY data mode.
 - Simple txt logging.
 - <application-configuration> to load configuration.
 - ClientData implementation class to store client data.
 - QSAdmin Shell
 - Remote Administration - QSAdminServer

Filesrv v 0.1
-------------------
A simple http file download server. Will listen at 8821, so use your web
browser as a client. URL: http://localhost:8821/
Uses:-
 - Non blocking mode
 - Xml configuration file used to load configuration.
 - STRING, BYTE and BINARY data mode.
 - ClientWriteHandler implementation class to do non-blocking write.
 - Init-server-hooks.
 - AdvancedSettings
 - QSAdmin Shell
 - Remote Administration - QSAdminServer
 - Simple txt logging.

License:
--------
a) All source code from the example that contain the following phrase
   "This file is part of the QuickServer library" may be used as a starting
   point in your development.

b) chatserver.client.InfiniteProgressPanel is subjected to the BSD license.

Copyright (C) 2003-2017 QuickServer.org
http://www.quickserver.org/
https://github.com/QuickServerLab/QuickServer-Examples

repository: QuickServerLab/QuickServer-Examples

repo_name: QuickServerLab/QuickServer-Examples


text:
# node-pool-taint-v2.3.0
- Prepares module for compatibility with future 4.x GCP provider
- Added image_type parameter to control the OS image of the node pool

# node-pool-taint-v2.2.0
- Added `node_metadata` parameter to control node metadata provided to workload, so that [workload identity](https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity) functionality may be used.

# node-pool-taint-v2.1.1
- patch fix to generate a new random id when the additional_oauth_scopes var changes because that forces the node pool to be replaced

# node-pool-taint-v2.0.0
## breaking change
- Updated module to support terraform >= 0.12

# node-pool-taint-v1.1.0
- added ability to add additional_oauth_scopes to node pools
  - NOTE: changing oauth scopes will recreate your node pool

# node-pool-taint-v1.0.0
Initial release of `node-pool-taint` which leverages the `google-beta` provider to apply taints to node pools. This module should be roughly equivalent with the features of `node-pool` in the same repository.

repository: FairwindsOps/terraform-gke

gha_language: HCL

repo_name: FairwindsOps/terraform-gke


text:
baseruby CHANGELOG
==================

This file is used to list changes made in each version of the baseruby cookbook.

1.0.1
-----
- [John Topley] - Added recipe to install Gem in a Box for development environments

1.0.0
-----
- [John Topley] - Updated Ruby version to 2.3.0

0.1.0
-----
- [John Topley] - Initial release of baseruby

- - -
Check the [Markdown Syntax Guide](http://daringfireball.net/projects/markdown/syntax) for help with Markdown.

The [Github Flavored Markdown page](http://github.github.com/github-flavored-markdown/) describes the differences between markdown on github and standard markdown.

repository: ONSdigital/chef-cookbooks

repo_name: ONSdigital/chef-cookbooks


text:
# iTerm2

[iTerm2](http://www.iterm2.com/) is an open source replacement for Apple's Terminal. It's highly customizable and comes with a lot of useful features.

## Installation

Use [Homebrew](http://sourabhbajaj.com/mac-setup/Homebrew/) to download and install:

    brew cask install iterm2

## Customization

### Colors and Font Settings

Here are some suggested settings you can change or set, **they are all optional**.

- Set hot-key to open and close the terminal to `command + option + i`
- Go to profiles -> Default -> Terminal -> Check silence bell to disable the terminal session from making any sound
- Download [one of iTerm2 color schemes](https://github.com/mbadolato/iTerm2-Color-Schemes/tree/master/schemes) and then set these to your default profile colors
- Change the cursor text and cursor color to yellow make it more visible
- Change the font to 14pt Source Code Pro Lite. Source Code Pro can be downloaded using [Homebrew](https://sourabhbajaj.com/mac-setup/Homebrew/) `brew tap homebrew/cask-fonts && brew cask install font-source-code-pro`
- If you're using BASH instead of ZSH you can add `export CLICOLOR=1` line to your `~/.bash_profile` file for nice coloring of listings

[![Screen](https://raw.githubusercontent.com/sb2nov/mac-setup/master/assets/Iterm.png)](https://raw.githubusercontent.com/sb2nov/mac-setup/master/assets/Iterm.png)

### MacOS shortcuts ⌘←, ⌘→ and ⌥←, ⌥→

You might be familiar with shortcuts to skip a word (⌥) or go to start/end of the line (⌘). iTerm is not set up to work with these shortcuts by default but here's how you set them up:

Open up iTerm2 preferences (⌘ + ,) -> Profiles -> Keys -> Click on `+` icon (add new Keyboard shortcut).

| shortcut |         action       | Esc+ |
|:--------:|:--------------------:|:----:|
|    ⌘←    | Send Escape Sequence |  OH  |
|    ⌘→    | Send Escape Sequence |  OF  |
|    ⌥←    | Send Escape Sequence |   b  |
|    ⌥→    | Send Escape Sequence |   f  |

repository: SebastianWesolowski/WorkSpace

repo_name: SebastianWesolowski/WorkSpace


text:
# pulse-carlawine
#### Containerised Carla VST host with Win32/Win64 VST bridging

This container image will enable you to run a simple VST host ([Carla](https://kx.studio/Applications:Carla)), where you can load Win32/Win64 VST plugins,
You can monitor the audio output on your host machine default audio device through Pulseaudio tcp sink.

Audio recording within the container can be achieved with some additional tools installed.

This Pulseaudio-oriented setup was the simplest way to get sound from the container on MacOS for me.

### Acknowledgements
The dockerfile is based on the similar works of [Jess Frazelle](https://github.com/jessfraz/dockerfiles/tree/master/pulseaudio) for PulseAudio
 support and [Scott Hardy](https://github.com/scottyhardy/docker-wine) for X session support.

## Setup:

#### Prerequisites:
* Docker
* XQuartz
* Pulseaudio (available on Homebrew)

Step 1. Build the image
```bash
docker build pulse-carlawine -t deviant-syndrome/pulse-carlawine:latest
```
Step 2. Setup X forwarding

To get the X forwarding from container, which would act as a thin client of sorts. We will be using XQuartz for MacOS. From the XQuartz
 preferences, in the security tab, make sure Allow connections from network clients is enabled. Restart XQuartz. Then:
```bash
xhost +localhost
```

## Usage

Run pulseaudio sink on host machine:
```bash
pulseaudio --load=module-native-protocol-tcp --exit-idle-time=-1 --daemon
```
Run docker container:
```bash
docker run -it -e DISPLAY=host.docker.internal:0 -e PULSE_SERVER=docker.for.mac.localhost -v ~/.config/pulse:/home/pulseaudio/.config/pulse --entrypoint /bin/bash --ipc=host --rm deviant-syndrome/pulse-carlawine:latest
```

Copy your DLLs to container's filesystem. Alternatively you can download a Windows-based VST plugin installed and run it in container under Wine.
Then run Carla from the container.
```bash
carla
```
Go to carla's prefrences and enable experimental features. After that you will be able to drag and drop your VST DLL to Carla's rack.

repository: deviant-syndrome/pulse-carlawine

repo_name: deviant-syndrome/pulse-carlawine


text:
---
templateKey: blog-post
title: "Real women.  It’s always – Save 20% of your income, Never spend over 30% on rent, Keep 5% for retirement… How the heck do you action that? Yeah, not happening.

Full disclosure: We don’t love “budgeting” in the traditional sense. Budgeting implies you have to cut things out. And who wants to do that? Nobody. (us included)

We think of budgeting differently. [Our mini budget method](https://blog.penny-finance.com/blog/2021-03-22-forget-traditional-budgeting-there-is-a-better-way-to-spend-your-money/) helps you think big picture. It’s a learning exercise that promotes mindful spending (and stops letting the small stuff weigh you down).

Basically, budgeting = knowing your numbers.

When you know what you are working with, you can make better decisions that suit your lifestyle – like deciding if you have to fund a negative balance – with your own money rules. Not random percentages with one-size-fits-all solutions.

We promised we’d show you how.

**Here are 3 anonymous women’s budgets, with notes, to give you more perspective on the mini budget method, and how to tweak it to make it all work for you.**

# **Money Maker 1 - Hometown Gal**

This money maker is a home-owner, car-owner, living in the burbs, and working in the healthcare industry (ty for your service!)

> **$52,000 salary** >> wow!
>
> **$11,000 taxes** >> yup, don’t forget about this – [read your pay stub](https://blog.penny-finance.com/blog/2021-03-22-how-to-read-your-pay-stub/) to get where it goes
>
> **$38,000 expenses** >> when you add it up, kinda makes you feel sick huh?

$52,000 - $11,000 - $38,000 = **$3k left to play**

\
Ok what makes up the $38k in expenses?

\
Mortgage*

$1,182

Wahoo, homeowner, you go! – we fully support your new home as long as you can comfortably pay this every month and don’t mind parting with the down payment (which you do with $3k left over at the end of the year!)

\---

Electric*

$ 40

gotta live

\---

Home insurance*

$129

you never know, gotta do it

\---

Property taxes*

$400

remember to factor this in before you buy that house!

\---

Car payment*

$250

some of us need wheels

\---

Car insurance*

$150

gotta have protection ;) – super saver tip, the higher your credit score, the lower your car insurance

\---

Wifi/tv

$ 41

gotta connect – this is actually really low – with cable and all the streaming services, you could pay close to $200 in here

\---

Spotify

$ 6

music fuels the soul – I see a lot of women want to cut things like Spotify out, but in the grand scheme of things, this doesn’t break the bank (but your mortgage might, which is why you gotta think twice before you buy!)

\---

Groceries*

$ 320

gotta eat

\---

Going out for food + fun

$ 350

great! – pick a number and stick to it.

\---

Clothing

$ 120

again, pick a number and stick to it – it really helps to set a goal, but make sure it is realistic. Some of our Penny gals would be fine, I would surpass $120 every month for sure lol

\---

Eyebrows

$ 50

whatever makes you feel good, seriously, as long as you are mindful!

\---

Personal care

$ 45

this is very low – think haircuts, manicures, etc. – who can get a haircut for less than $100 these days?

\---

Misc.

$ 75

yup. life. random things come up.

OK what does this all add up to?

> **$3,158** per month total
>
> (aka $38K annually)
>
> **$2,471** per month are \*must-pay\* items -- we put a * next to those
>
> (that means we want your emergency savings to be about **$14k** before makin' any other money moves)

P.S. We've built these calcs into our app, if you [wanna get your personal numbers](https://www.penny-finance.com/quiz)

We are SO proud of this gal! She’s making bank AND being extra-mindful of expenses.

Surprised we didn’t tell her to cut out Spotify, shopping, or personal care?

This is what we mean by mindful spending vs traditional budgeting.

Your Spotify subscription, in the grand scheme of things, won’t break the bank. That’s one of the biggest counter-intuitive money secrets no one tells you.

But to anyone who thinks buying a home is the end-all, be-all of life: DON’T.

**\
Sometimes, the more financially savvy thing to do is rent an awesome place, and continue to save for your future home at your own pace – and have more money in your pocket so you can keep your Spotify account (Netflix, Hulu, you get it).**

# **Money Maker 2 - City Gal**

This money maker lives in the heart of a big city (New York City to be exact), doesn’t own a car or a house yet, and works in a salaried job in the biz world

> **$57,000 salary** >> wahoo!
>
> **$15,000 taxes** >> ugh, gotta love taxes
>
> **$45,000 expenses** >> ooooh ya, spending money honey

$57,000 - $15,000 - $45,000 = **negative $3k, uh-o**

\
Ok lets look at her expenses and see what magic can be done.

\
Rent*

$2,000

this is a lot – start looking for a roommate OR rent out your apt on Airbnb for a month to help cover expenses OR find a cheaper place in a different neighboorhood OR ask your landlord for a concession when you sign next year's lease (they won't have to paint, repair, find another renter, etc)

\---

Student loans

$300

triple check this is the **minimum payment**, and that it covers interest – if it’s more, drop it down to the min payment, for now (ONLY because you are negative, normally we'd want you paying ABOVE the minimum payment all-damn-day)

\---

Health Insurance*

$300

gotta have insurance

\---

Subway*

$100

gotta get to work (but if this was uber/taxi, would opt for public transport if possible)

\---

Cell phone*

$120

gotta have a phone – keep an eye out for a promo!

\---

Food*

$500

gotta eat – but if this includes eating out, think about how often you go out, how much you spend, and if there are alternatives you can fit into your lifestyle instead

\---

Self-care

$100

you can try to cut out or do every other month, but how else are you going to survive in the big city, mental health is #1 priority

\---

Shopping

$150

you can try to lower this a tad but even if you do Rent the Runway or build a capsule wardrobe, it’ll cost you at at least this #.... so focus on feeling confident when you walk into work with the most classic pieces that you can mix&match

\---

Misc expenses

$180

this you want to be mindful of – think, laundry detergent, tampons, random household stuff – those are the essentials. BUT sometimes, before you know it, you just bought 2 books, a picture frame, and scrunchies on Amazon – sh!t adds up fast!

\
*super-saver tip* – put misc stuff on a separate credit card so you can really see where $ goes to waste.  Instead, pay closer attention to what you’re spending on and stick to a number that’s actually realistic.

\---

Travel

$0

ya, bummer, sry girl. can you use your credit card points to book a trip?!

OK what does this all add up to?

> **$3,750** per month total
>
> (aka $45K annually)
>
> **$3,020** per month are \*must-pay\* items -- we put a * next to those
>
> (that means we want your emergency savings to be about **$18k** before makin' any other money moves. but now that is going to be truly impossible with more expenses than income... soooo.... now what?)

THESE ARE REAL NUMBERS. No shame in any of it.

Sometimes you are in the red. And it’s ok.

Now, if most of these expenses are justified, how do you deal with the negative balance?

**Option 1: Extra income of $250 a month**  \[see ideas below]

**Option 2: Cut something out that gives you back $250 a month** \[from above, eating out or student loan pmt seem to be good spots to look]

**Option 3: 0% credit cards** \[if you are going to find a new apt and reduce rent, and just need a temporary solution]

Our biggest tip for this city gal is NOT to create a super strict budget that you are not going to stick with. That only makes your guilt-trip worse when you fall off the wagon. Life happens. We don’t want you to feel restricted with your money, even in the red.

If you know that you should get a pay raise, or will find a roommate the next year, it is OK to bridge the gap for the short-term with a 0% credit card. But if this is your monthly total, every month, pause.

Time for a video break? Ya, we think so. Sh!t is getting real... [Watch this for a break](https://www.loom.com/share/7c15376795864215b12a64558b84584e).

Yup. Scary. Not ideal. Credit card fees are a slippery slope that will snowball your negative balance at a ridiculously fast rate. At the end of the day, you may find yourself in a scary situation where you can’t fund your life.

See what you can part with or change – and which habits you can add to help fund this $2k apartment. [We made a list to get you started. ](https://blog.penny-finance.com/blog/2021-03-30-hate-budgets-try-these-3-things-instead/)

# **Money Maker 3 - Metropolitan Gal**

This money maker lives in the outskirts of a major city, is a car-owner, freelancer and her own boss working for herself (amen to that)

> **$40,000 income** >> when income is not guaranteed or ebbs and flows, its \*really\* important to know your numbers inside and out
>
> **$5,000 taxes** >> remember, when you are an entrepreneur or freelancer, no one is setting aside tax money for you, pllssss don't forget that or tax day will really suck. also, you can deduct some biz expenses to save on taxes, save those receipts!!!
>
> **$27,500 expenses** >> a thrifty babe, look at you.

$40,000 - $5,000 - $38,000 = **$7.5k left to play**

OK lets look at her expenses, because, we really wanna know how she is saving!

\
Rent*

$1,000

sweet!

\---

Food*

$400

gotta eat

\---

Gas*

$100

gotta get to work

\---

Spotify

$11

again, we love music – super saver tip, check out Spotify’s duo plan that is 2 for 1 to cut this in half – obviously doesn’t break the bank, but save where ya can

\---

Cellphone*

$60

damn girl – who is your carrier??

\---

Car insurance*

$50

gotta protect yourself

\---

Car registration*

$9

yup – the little things – you don’t have to track all the one-off things like this, but if you do, we are here for it

\---

Apartment insurance*

$11

yes – super affordable and worth it

\---

Electric*

$25

gotta live

\---

Internet*

$49

yup.

\---

Therapy

$75

yes yes yes

\---

Travel

$300

see what happens when you have low-ish rent! amazing

\---

Health insurance*

$200

of course, gotta have this

OK what does this all add up to?

> **$2,290** per month total
>
> (aka $27.5K annually)
>
> **$1,900** per month are \*must-pay\* items -- we put a * next to those
>
> (that means we want your emergency savings to be about **$11k** before makin' any other money moves, and guess what, you'll hit that number in a year from what you have left over, impressive!)

\
We are so proud of this metropolitan gal!

This is a perfect example of how it doesn’t matter what you make – this money maker has the lowest salary, but also the lowest expenses. She chose to live outside the heart of the city and saved big time on rent. Now she has a car, so that helps tons.

This is an ideal situation – with looots left over to stock away, invest, and save for bigger projects and whatever-you-want spending money.

It’s not always easy, especially when you are just starting out. One-off expenses come up all the time. Think – moving to your next apt, the friend that is getting married, or those shoes you really, really want.

# It’s all about your priorities and knowing your numbers.

\
Overwhelmed? Start small. Write down your numbers. Open your credit card statement and start logging where your money goes. Don’t rush into any decisions about cutting stuff out until you know what you are spending on.

Here is what we did -- so you can do it too!

1. Write it all down – what comes in, what goes out, including future big expenses you might have to save for (like your bff’s bday gift or family wedding)
2.
3. Think about where you’re spending, and what you’re spending on – are these items all “must haves” or are some a “good to have”?

P.S. At this point, unless you loveeee numbers, you will want some support and love. And that is why we built Penny. We'll show you how, get you trackin, and figure out a plan. We've got you (and your wallet).

### [Take our money maker quiz! ](https://www.penny-finance.com/quiz)

Budgeting doesn’t have to be this painful exercise that makes you want to crawl under the covers. This post shows you [how to make it easy, step-by-step](https://blog.penny-finance.com/blog/2021-03-22-forget-traditional-budgeting-there-is-a-better-way-to-spend-your-money/).

Finally, we like to say, don’t cut the budget, increase the income. Find ways to fund your [lifestyle with these tips](https://blog.penny-finance.com/blog/2021-03-30-hate-budgets-try-these-3-things-instead/).

repository: slmhastings/Penny-Blog

repo_name: slmhastings/Penny-Blog


text:
Contributing to Sector Five II
==============================

Contributions to this project are released to the public under the
[project's open source license](LICENSE).

This project adheres to a [Code of Conduct][code-of-conduct]. By
participating, you are expected to uphold this code.

[code-of-conduct]: ./CODE_OF_CONDUCT.md

You will need:

1. Ruby 2.3+
2. The gosu gem

There are more detailed instructions for macOS and Windows in the
[README] file.

[README]: ./README.md

## What makes a good feature

We may welcome an entirely new level from scratch, but please make sure
have you checked the project's list of issues in case we already have
something in mind.

Also, please make sure the level you are developing fits in the story.

## Bug fixes

Bug fixes are always welcome

## Improve code

Refactoring code is welcome. We don't have tests currently, which makes
it a bit more difficult to test big changes. Small changes may have
better chances to get accepted.

repository: petros/sector-five-ii

gha_language: Ruby

repo_name: petros/sector-five-ii


text:
---
id: useOnline
title: useOnline
sidebar_label: useOnline
---

## About

Online status hook for React.

### Installation

    npm install --save rooks

### Importing the hook

```javascript
import {useOnline} from "rooks";
```

### Usage

```jsx
function Demo() {
  const isOnline = useOnline();
  return <p>Online status - {isOnline.toString()}</p>;
}

render(<Demo />);
```

### Return value

Offline status (boolean) is returned.

## Join Bhargav's discord server
You can click on the floating discord icon at the bottom right of the screen and talk to us in our server.


text:
# ExistingProcessManagers

[![Stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://bcbi.github.io/ExistingProcessManagers.jl/stable)
[![Dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://bcbi.github.io/ExistingProcessManagers.jl/dev)
[![Build Status](https://github.com/bcbi/ExistingProcessManagers.jl/workflows/CI/badge.svg)](https://github.com/bcbi/ExistingProcessManagers.jl/actions)
[![Coverage](https://codecov.io/gh/bcbi/ExistingProcessManagers.jl/branch/master/graph/badge.svg)](https://codecov.io/gh/bcbi/ExistingProcessManagers.jl)

ExistingProcessManagers
provides the `ExistingProcessManager` type, which is a `ClusterManager` for
telling `Distributed` about Julia worker processes that you have already
started.

Please see the [documentation](https://bcbi.github.io/ExistingProcessManagers.jl/stable).

gha_language: Julia


text:
SPAWN Word Generator
====================

Spawn is a word generator. I often find myself trying to think up names for
projects or products and have found the best names to be made up words.

This is a work in progress. Spawn is still a fairly rudimentary system; however
it does generate a fair amount of usable words. Some come out fairly perfect
(though not many); and some simply trigger the imagination, at which point
you can tweak the word as you see fit.

It turns out, a good random word generator that produces a large quantity of
well balanced usable words, is quite a bit trickier than I originally thought.

As it currently sits, I still get 1 or 2 fairly decent words out of about
50 - which really isn't all that bad.

::Sample::
----------
Here is a list of words Spawn generated in it's current state. It's not amazing yet, the rules are still
quite rudamentary, but there are some useful fun words here:

bleocwii
yjhodwoi
poox
uitionuw
zhuwngiiklow
eaoughey
aafleo
khuyzhullieppae
hiafhu
uucuesthiakkao
iniishchuwnwiu
lhauglewfoa
gheumrei
owniedwuechoe
iasmia
kwowrhiyg
vhowshaoshuu
uukhou
shchoosnuehwey
eesloyrei
dhaw
eac
awtchasky
so
waeqwayssiuphthiu
uustui
oqeyquaffuo
uuvloaciarrua
hweu
phthiytchi
spuemrii
iiscau
ieskowcwea
shchoyskovlao
swoumraappae
hiisni
uohruoflou
uhiysnuu
paidrziwkleot
nhuuchdoijhae
aiphousqiissao
iommowplaej
vhuacho
pwuingguoskiw
nnoypwuoughoubrue
uuchoynguu
dzhaekhuitchia
uoscauxeechdeo
froygwiosloysmay
awfeufruu
eikwuedrzea
whiikhiowui
ziu
iunoaclew
iuka
aarruikkii
vriyffeysvuw
swiwchdanreibweo
uineiswiu
vytoofwivvei
iyfwoy
qiijuetchei
zhuejiwblee
ayqreyngea
chthib
whiupaajhawclow
flowshiw
flewstio
ssiemriukhaw
awshowpuickoy
sqaeshealiy
nruknaa
tanggaenezhau
bhaajheikwuu
viunio
ootreahrewxxio
baigwawpwaw
eehoiqwuephiw
klairhawtreoqraw
achdoy
ivvoonggaotchuo
eysnuyggiwtchaa
iacrew
cwoakricwuy
vliewrowfweu
auzhieploa
ewvviobluickoo
ataockowzheo
op
xoynruuggiy
schoxe
uggaiwrir
owlleanhe
knoilheinwua
uaspi
orhewqwiu
eschiu
iwphaa
uotwuav
vroasmoa
uavhuy
mheibleu

::To-do List::
--------------

1. SQLite many-many database
  * vowel table with digraphs, trigraphs, and multigraphs
  * consonant table with digraphs, trigraphs, and multigraphs
  * rule-set table with rules such as:
    * prefix_only
    * prefix_only_except()
    * infix_only
    * infix_only_except()
    * suffix_only
    * suffix_only_except()
    * exception_vowel_infront(digraph|trigraph|multigraph,infront_rule_id)
    * exception_vowel_after(digraph|trigraph|multigraph,after_rule_id)
    * exception_consonant_infront(digraph|trigraph|multigraph,infront_rule_id)
    * exception_consonant_after(digraph|trigraph|multigraph,after_rule_id)
    * infront(vow)
    * infront(vow_vow)
    * infront(vow_con)
    * infront(vow_vow_con)
    * infront(con_con)
    * after(vow)
    * after(vow_vow)
    * after(vow_con)
    * after(vow_vow_con)
    * after(con_con)
    * not_allowed()
    * if_last()
    * if_first()
2. Flesh out SpellingRules.phc class for analyzing "letter(s)" and their rules
3. Flesh out RuledRandomizer.phc class which uses SpellingRules against the letter(s) as they are being randomly pulled from the database.

After the current to-do list has been completed, we can decide whether further refinement is needed.

repository: CreationTribe/Spawn

repo_name: CreationTribe/Spawn


text:
# Thunder Commander

Control your USB [Thunder Missile Launcher](http://www.dreamcheeky.com/thunder-missile-launcher) with a web application based on [node](http://nodejs.org/), [express](http://expressjs.com) and [AngularJS](http://angularjs.org) in a web browser of your choice.

You can see a live demo of the frontend (without a connected device) here: [Thunder Commander client demo](http://codepen.io/TimPietrusky/full/tuBvG).

![Thunder Commander - connected device](assets/images/thunder_commander_screenshot_connected.png)

## Features

* Works in every browser & system
* Responsive
* Control with mouse / touch / keyboard

## Keyboard controls

* Left arrow: Turn left
* Right arrow: Turn right
* Up arrow: Turn up
* Down arrow: Turn down
* Space: Fire missile

## Install

### node

[Install node](http://nodejs.org/download/) if you don't have it.

### libusb
You need [libusb](http://www.libusb.org/) in order to install the dependencies.

#### Linux
```
sudo apt-get install build-essential pkg-config libusb-1.0-0-dev
```

#### Windows & Mac
Please contact me or create an issue if you need assistance.

### Clone the repository

```
git clone git@github.com:TimPietrusky/ThunderCommander.git
```

### Switch into the folder
```
cd ThunderCommander
```

### Get dependencies
#### Linux
```
sudo npm install
```
#### Windows & Mac
Please contact me or create an issue if you need assistance.

## Start the application
```
sudo node app
```

The application is now available under [http://localhost:1337](http://localhost:1337). If you want to change the port you have to edit the ```app.js``` file:

```javasript
// Listen on port for connection
app.listen(1337);
```

## Thunder Connector
In order to connect this web application with the real USB device I created the node module [thunder-connector](https://npmjs.org/package/thunder-connector).

## The journey

At first I tried to create a Chrome App, but the [chrome.usb](http://developer.chrome.com/apps/usb.html) API is not allowed to call [USB-HID](http://en.wikipedia.org/wiki/USB_human_interface_device_class) devices, because the OS kernel grabs and interprets them before the user space code has a chance to do so.

After that I tried to create a node application with the help of the [usb](https://npmjs.org/package/usb) package, but it has not access to USB-HID devices too D:

That's why I started the third time from scratch with the [node-hid](https://github.com/node-hid/node-hid) package. But this time it worked :D

## Thanks

* Nathan Milford for creating [stormLauncher](https://github.com/nmilford/stormLauncher), because I copied the USB commando codes from his project
* Charley Drake from [Dream Cheeky](http://dreamcheeky.com), because he gave me the original Developer Manual for the [Thunder Missile Launcher](http://dreamcheeky.com/thunder-missile-launcher)

## Author

2013 by [Tim Pietrusky](http://twitter.com/TimPietrusky)

repository: TimPietrusky/ThunderCommander

repo_name: TimPietrusky/ThunderCommander