text:
---
layout: post
title: PFAS Map
image: /img/ForeverPolutionProject_squared.png
tags:
  - R
  - Shiny
  - map
  - visual analytics
  - visualization
  - viz
  - PFAS
  - journalism
  - interactive
  - exploration
published: true
date: '2023-03-19'
---
I came across this topic in a recent LinkedIn [post](https://www.linkedin.com/posts/danieldrepper_wir-haben-monatelang-an-einem-projekt-gearbeitet-activity-7034453375794470912-CrkV?utm_source=share&utm_medium=member_desktop) by investigative journalist [Daniel Drepper](https://www.linkedin.com/in/danieldrepper/). An international research network investigated the spread of [PFAS](https://en.wikipedia.org/wiki/Per-_and_polyfluoroalkyl_substances) (per- and polyfluoroalkyl substances) to unveil the scale of pollution. This group of chemicals are linked to various deseases such as cancer and infertility. As a result, PFAS are estimated to account for 52 and 84 billion euros in costs for European health systems – each year. Making this thread tarnsparent to the public is the aim of the [Forever Pollution Project](https://foreverpollution.eu/).

I built a Shiny app that allows to
- quickly get an **overview** about the *entire* dataset; that is, all 33 countries instead of just Germany, for example,
- **filter** for specific characteristics (only groundwater sites in Hamburg, Germany),
- access all information for a **specific site**, and
- come across **biases and flaws** in the data.

You can read more about this little project [here](https://thomassie.me/ForeverPolutionProject/) or jump directly to the **[app](https://thomassie.shinyapps.io/Forever_Polution_Project/)**.


text:
[![npm](https://img.shields.io/npm/v/cpplot-viewer.svg)](https://www.npmjs.com/package/cpplot-viewer)
[![license](https://img.shields.io/badge/license-MIT-brightgreen.svg)](LICENSE)
[![Build Status](https://travis-ci.com/thclark/cpplot-viewer.svg?branch=master)](https://travis-ci.com/thclark/cpplot-viewer)

Browser based figure viewer. Save plotly figures (in `json` format) to *.json files from any language, and use this tool to view them in your browser.

## Quick start

You don't need to clone this repo, or run your own server, or ANYTHING.

1. Download some or all of the example figure files to a folder on your local pc:
  - Download mandelbrot.json (15.4Mb)
  - [example_bar.json]()

2. Open your browser (preferably chrome) and navigate to [https://cpplot.herokuapp.com/](https://cpplot.herokuapp.com/).

3. Select the local folder in the webapp, and bask in the glory of your interactive figures.

4. **Note: Your figures and associated data are always kept locally, never uploaded to a server.**

Of course, if you want to adapt, re-use, collaborate, improve this tool - knock yourself out. I'm open to (high quality) pull requests.

## Background

This was built as a partner tool for the [cpplot](https://github.com/thclark/cpplot) library. But it works with *.json figures that can be written from any language (e.g. those like Python and MATLAB which already have plotly clients)

I wanted C++ to be as easy to use as MATLAB or Python for prototyping algorithms, plotting data and rendering charts/figures of all sorts.

In fact, I wanted it to be *better*. And I think `plotly.js`:
 - Produces much nicer looking figures than MATLAB, matplotlib, tecplot, gnu offerings, etc
 - Gives much better figure export offerings (like SVG) for creating publication quality graphics easily
 - Is way more cross-language and cross-system compatible than any of the other plotting tools, because the json schema is open and universally accessible.

### Why not plotly online?

Although plotly.js at its core is a totally brilliant library, the online services can be a bit of a quagmire to use - the APIs and client SDKs are documented, but honestly it's difficult to navigate and there are very few good examples out there. It requires quite a lot of expertise these days to just create a single figure over the API.

It gets worse if you need to keep data locally - you end up needing to install the enterprise solution etc etc.

So what we have here is a really lightweight alternative, allows you to quickly chop together figures showing your data, then interactively plot and export for publication etc.

You can share your figures with your colleagues as files, generate those files from any language that will write valid JSON, version control them if you need, and always keep data locally.

Of course, for groups collaborating using plotly, or using hte excellent dashboarding tools, there's nothing to stop you from taking the exact same data and POSTing it to Plotly Online! :)

## Develop, build and deploy

So you want to fork and change this, then deploy so you and your colleagues can usee the updated version?

Simple. Make your changes to your own fork, navigate to this README on github, and click the `deploy` button below. It's free. Simples.

[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy)

## With great thanks to...

The original `plotly.js` library authors and maintainers. You talented people have produced what I think is the best charting library on the planet bar none.

@transitive-bullshit for this [`create-react-library`](https://github.com/transitive-bullshit/create-react-library), a great tool for quickly boilerplating npm modules.

license: MIT

repository: thclark/cpplot-viewer

branch_name: refs/heads/master

extension: md

gha_language: JavaScript

gha_license_id: MIT

license_type: permissive

repo_name: thclark/cpplot-viewer


text:
# Exercise 1 - CF Push a simple Spring Boot application onto Cloud Foundry

## Goal

* Build A Spring Boot 2 micro service that exposes a REST API on the root and return a
Fortune Cookie message (String) and deploy it to Cloud Foundry.
* Learn about the functionality of the CF CLI.
* Learn about the functionality of the Apps Manager.

## Steps

* Go to [https://start.spring.io](https://start.spring.io) to create a project with Spring Initializr (Start with Spring Boot 2.2.6)
* Create a (Maven) Spring Boot 2 project with starters `Web` and `Actuator`
* Use 'workshop-fortune-service' for the artifact id
* Use the latest and greatest GA release of Spring Boot
* Download the project and open it in your favourite IDE
* Introduce a ‘Fortune Cookie’ controller (`@RestController`, `@GetMapping`) that returns a simple String message
* Build the project using Maven and run it locally first
* Call the REST endpoint from the browser or curl/http to show the static Fortune text
* If the application is working fine push the application to Cloud Foundry using the CF CLI. You can add all parameters from the command line, but it's easier to create a [manifest.yml](../01-cfpush/manifest.yml) so you don't need to type them every time. The provided one should be enough, just be sure to change the `name` and `path` accordingly to your own application.
* After pushing the application, there's a lot of console output, can you figure out what it's doing?
* Call the REST endpoint of the deployed application from the browser or curl/http to show the static Fortune text
* Take a look at the [manifest.yml](../01-cfpush/manifest.yml), can you spot differences with other popular deployment platforms (e.g. k8s or WebSphere or other?)
* Using the CLI, show your applications most recent log lines
* Using the CLI, stop and start your application
* Using the CLI, can you scale the application's instances up to 3 instances? And how about back to 1?
* Now do the same via the Apps Manager
* The Apps Manager has more nice functions, most of which are available in the CLI as well, but a lot of them are available because of Spring Boot Actuator integration. Check out the Logs, Trace, Threads and Settings tabs of your application and play around with the features in there.
* Can you figure out how to use the Autoscaler? Don't go above 3 instances please, for obvious reasons. ;)

## Tips

* Many IDEs have out-of-the-box integration with Spring Initializr (e.g. IntelliJ IDEA or VS Code), so no need to visit the website
* The CF CLI has a --help parameter that will list all the available commands and parameters
* [HTTPie](https://httpie.org/) is a great replacement for curl with great support for both GET and POST/PUT
* Check the [solution](exercise-1-solution.md) for valuable information and whether you missed anything


text:
# Module core

The core set of date, time, duration, and interval types, supporting the ISO calendar system.

# Package io.islandtime

Date-time primitives and core concepts, including classes such as `Date`, `Time`, `Instant`, and `ZonedDateTime`.

# Package io.islandtime.base

*(Experimental)* Framework-level interfaces, allowing aspects of date, time, and duration to be abstracted. This area is unstable and likely to see significant change.

# Package io.islandtime.calendar

Platform-independent calendar properties.

# Package io.islandtime.clock

The default clock implementation, providing access to the current system time at up to nanosecond precision when available.

# Package io.islandtime.darwin

Various extensions specific to the Apple platform.

# Package io.islandtime.format

Formatting of dates, times, durations, and intervals into textual representations.

# Package io.islandtime.jvm

Various extensions specific to the Java platform.

# Package io.islandtime.locale

Platform-independent locale.

# Package io.islandtime.measures

Classes related to the measurement of time, including `Duration`, `Period`, and more specific units, such as `Hours` or `Years`.

# Package io.islandtime.parser

Parsing of dates, times, durations, and intervals from textual representations.

# Package io.islandtime.ranges

Date ranges, time intervals, and the ability to iterate over them and perform various operations.

# Package io.islandtime.serialization

Serializers for use with Kotlin Serialization.

# Package io.islandtime.zone

Provides time zone database access.

gha_language: Kotlin


text:
# This is a sample design-oriented project

I tried to make this as similar as possible from **Figma** to **HTML**, and it turned out better.(Not as same as the design, but overall look just turn out well)

Still it have some nasty issues, I might reiterate the dev process to acheive the design planned.

### Issues:
1. Not at all responsive😢 (Works as expected in only desktop).
2. some placement issues. Need to study more on layering things.

### Design planned:

![design](https://user-images.githubusercontent.com/64256342/129486033-060533b0-93c8-4cf1-89d5-b2f4151f449b.png)
### Actual result:

![actual](https://user-images.githubusercontent.com/64256342/129486043-0786c4cc-d33b-44c6-9452-b07d4fe5d4fd.png)

branch_name: refs/heads/main


text:
# Date-A-Dog.com

Date-A-Dog.com is an example dog dating website build using:

  - Angular 9
  - DotNet Core 3.1
  - SQLite Db (Development)

# Demo
Coming Soon!

# Local Installation
Coming Soon!

# New Features!

  - [26/03/2020] - User Messages - Added Private Messaging system
  - [24/03/2020] - User Likes - Added Like Functionality
  - [23/03/2020] - Member Organisation - Added Paging, filtering and sorting to member lists
  - [18/03/2020] - Users Last Active - Dates converted to user friendly dates & user activiy logged
  - [18/03/2020] - Registration - Added validation & reactive forms to registration
  - [17/03/2020] - Member Details - Users can now add, edit and delete photos for the gallery
  - [14/03/2020] - Member Details - Users can now edit their own profile
  - [03/03/2020] - Member Details - Photo gallery added to member details

  You can also:
  - Register, Log into your own secure account
  - See other members and their details
  - Edit your own details
  - Upload and edit photos
  - Filter & sort your matches
  - 'Like' other users and see users who have liked you
  - Send, Recieve and Delete private messages to other users

License
----

MIT

repository: WebDevelopWolf/Date-A-Dog

gha_language: C#

repo_name: WebDevelopWolf/Date-A-Dog


text:
# About

`char`s are generally easy to use. They can be extracted from strings, added back
(by means of a string builder), defined and initialised using literals with single quotes, as in `char ch = 'A';`
, assigned and compared.

The Character class encapsulates the char value.

repository: exercism/java

gha_language: Java

repo_name: exercism/java


text:
# Pathfinding

C++ artificial intelligence pathfinding algorithm's implementation following the book "Artificial Intelligence for Games" by Ian Millington and John Funge.

The following keys open the following scenes:

- ## Key 0: Main Menu
![](mainmenu.PNG)

- ## Key 1: Breadth First Search
![](https://github.com/JoanStinson/Pathfinding/blob/master/Pathfinding%20GIFs/bfs.gif)

- ## Key 2: Dijkstra's Algorithm
![](https://github.com/JoanStinson/Pathfinding/blob/master/Pathfinding%20GIFs/dijkstra.gif)

- ## Key 3: Greedy Breadth First Search
![](https://github.com/JoanStinson/Pathfinding/blob/master/Pathfinding%20GIFs/gbfs.gif)

- ## Key 4: A* Algorithm
![](https://github.com/JoanStinson/Pathfinding/blob/master/Pathfinding%20GIFs/astar.gif)

- ## Key 5: A* Algorithm with N Locations
![](https://github.com/JoanStinson/Pathfinding/blob/master/Pathfinding%20GIFs/astarNlocations.gif)

- ## Key 6: A* Algorithm with N Enemies
![](https://github.com/JoanStinson/Pathfinding/blob/master/Pathfinding%20GIFs/astarNenemies.gif)

repository: JoanStinson/Pathfinding

repo_name: JoanStinson/Pathfinding


text:
# Change Log

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

**Note:** Version bump only for package undefined

## [2.1.1](https://github.com/valor-software/ng2-dragula/compare/v2.1.0...v2.1.1) (2018-11-01)

### Bug Fixes

* [@types](https://github.com/types)/dragula > MockDrake breakage. close [#912](https://github.com/valor-software/ng2-dragula/issues/912) close [#913](https://github.com/valor-software/ng2-dragula/issues/913) ([4897356](https://github.com/valor-software/ng2-dragula/commit/4897356))

# [2.1.0](https://github.com/valor-software/ng2-dragula/compare/v2.0.4...v2.1.0) (2018-09-06)

### Features

* include sourceIndex and targetIndex in model events ([ea5fb03](https://github.com/valor-software/ng2-dragula/commit/ea5fb03))

## [2.0.4](https://github.com/valor-software/ng2-dragula/compare/v2.0.3...v2.0.4) (2018-08-31)

### Bug Fixes

* **package:** make NPMJS.com readme link to GH ([c0e7b1b](https://github.com/valor-software/ng2-dragula/commit/c0e7b1b))

## [2.0.3](https://github.com/valor-software/ng2-dragula/compare/v2.0.2...v2.0.3) (2018-08-31)

### Bug Fixes

* shouldn't include jasmine/testdouble typings in published module ([ceccf3a](https://github.com/valor-software/ng2-dragula/commit/ceccf3a)), closes [#896](https://github.com/valor-software/ng2-dragula/issues/896)

## [2.0.2](https://github.com/valor-software/ng2-dragula/compare/v2.0.1...v2.0.2) (2018-07-25)

### Bug Fixes

* directive should only emit, not save on removeModel ([59783f0](https://github.com/valor-software/ng2-dragula/commit/59783f0))
* was doubling up on writes to drake.models, causing sometimes wrong model order ([f1b26cd](https://github.com/valor-software/ng2-dragula/commit/f1b26cd)), closes [#878](https://github.com/valor-software/ng2-dragula/issues/878)

## [2.0.1](https://github.com/valor-software/ng2-dragula/compare/v2.0.0...v2.0.1) (2018-07-20)

### Bug Fixes

* **types:** '[@types](https://github.com/types)/dragula' was a devDependency, not present in published version, closes [#876](https://github.com/valor-software/ng2-dragula/issues/876) ([eaef778](https://github.com/valor-software/ng2-dragula/commit/eaef778))

gha_language: TypeScript


text:
# Stackexchange-Parsing

## Original Job Description

> ### Context:
> Download/parse the pages from Stackexchange (http://www.stackexchange.com)
> Scrape only the title, date of post, and link (no ads, no sidebar, or other superfluous info) from various Stackexchange communities. A list of communities will be provided by a spreadsheet (format to be given when contract is accepted.
>
> ### Deliverables:
> Code. A downloader/parser, written in Python, that can parse the website and pull website content into well-formed JSON files. Code should be well-written, DRY, and follow Google’s Python-styling guide (https://google.github.io/styleguide/pyguide.html).  If you do another job for me, you should be able to reuse portions of this code.
> Files. One well-formed JSON for each Question and Answer.
> Tests. Do test - driven development and include reasonable tests to show that the code works.
> Logs. Write successful files out to a folder (in the same directory as the program is executed) called “stackexchange_jsons”, and failures out to “stackexchange_issues”.
> On failure, log the failure and the issue in a dated log file; allow program to continue to run.  So every failure has a line in the log corresponding to the file in the failures folder.  Each log line should have the url to the article, and the reason for the failure.
>
> ### Milestones:
> 1.   Provide 10 or more well-formed JSONs*  from one community
> 2.   Provide 10 or more well-formed JSONs* from multiple communities.
> 3.  Write to your S3 bucket. Use the default config in logged-in-user’s .aws credentials and .config files.
> 4.   Multi-threaded program: the program should be able to accept, as a command-line argument, the number of processes to use.  Ensure that the operator of the code can exit out of the program (i.e. if ctrl+c continually ends the running process, provide another key command to exit the program)
>
> * Format to be given. (10 JSONs is a representation of the program’s ability to completely parse the pages and produce all the JSONs correlated with the Stackexchange Q&A posts; these JSONs will be examined for quality.)


text:
---
layout: post
title: Two Models of Growth Marketing (a summary)
description: You need to master all of the above fits to have a successful company that grows.
summary: You need to master all of the above fits to have a successful company that grows.
comments: true
tags: [growth]
---

# Value/Cost

**Source: Matt Horiuchi, Director User Acquisition at Calm**

The key equation is:

LTV/CAC (Lifetime Value/Customer Acquisition Costs) = A percentage that represents value over cost.

*** NOTE:  Without an LTV/CAC model we have no idea how much we can pay for a customer, and having the attribution in place tells us how much we're paying per customer. ***

**Lifetime Value** of a customer is how much value(money) we can expect from a customer throughout his/her lifetime with us. (A caveat: this information is ***not*** available on day one. As we engage in customer discovery/development, we determine the value of our customers).

**Customer Acquisition Costs** is how much it costs us to acquire a customer, which means that we have in place attributions to track that customer. (Same caveat as above: we fine tune our attribution as we engage in customer discovery/development).

# Link attribution

Most of the attribution we'll be doing will be link attribution. Any platform that sells digital ad space uses a link attribution system. How? By using a url which serves as a link to the landing page while also including customizable campaign specific attributes (utm source, etc).

At a minimum when we start to market online (facebook/instagram), we should create different landing pages/lead forms per media source.

# Market-Product-Channel-Model fit

**Source: Rachel Hepworth, Head of Growth Marketing at Slack**

You need to master all of the above fits to have a successful company that grows. Getting one of the fits wrong will create a domino affect that affects all the other fits.

**Market**: who are you selling to? The size of the market determines how big your company can grow. Who are the people? What are the challenges? Do they know they have those challenges? Do they care about those challenges?

**Product**: What you're selling.

**Channel**: Where are you selling the product? In other words, how are you getting it to the market?

You can't change the channel, you can only optimize your product to better fit the channel. - Brian Balfour

**Model**: How much are you selling it for? Low cost/high volume model? Or high volume/low cost model? This will affect the channel you chose.

# If you have fit, then how do you grow?

Growth is a funnel, not a stage. Traditionally, marketing stops at acquisition, whereas growth goes through the entire funnel.

Funnel: Acquisition >> Activation >> Retention >> Revenue >> Referral

Acquisition: all about product-channel fit. Low cost/High volume: search ads; High cost/low volume: high touch sales.

Activation: Shrinking time to value, or how to get people to the "aha" moment faster.

Retention: Keep users coming back. If they're not in the product, find ways outside of the product to bring them back in.

Revenue: $

Referral: Do the customers tell others about your product?

## Every step of the funnel is important, not just the top of the funnel.

Important to prioritize projects by ROI. So if you're at a startup with limited resources, you need to prioritize learning over everything.

ROI = Impact * Cost * Risk

Impact isn't just moving the numbers, it's also how much you're going to learn. The earlier stage you're in, the more important the learning is. What's important here is how quickly can we re-orient ourselves from the mis-assumptions we've made onto the right path? What's your hypothesis? How will you confirm or invalidate it?

# North Star Metric

A north star metric is a metric that is indicative of the health and growth of your company that can't be gamified and can't be influenced by spammy growth tactics.

The north star metric has to be found, measured, monitored and used to align the entire company around it.

Question from a person in the audience with a SaaS project management tool for homeowners and contractors: How can I define my NSM with a product that has difficult to track retention because of the lag between using the product and paying for it?

Are there a set of "kick the tire" activities that are highly correlated with becoming a paying customer of your product, before they're actually paying for your product? This is found by doing a bunch of number crunching and regression analysis.

References:

[E806: Rachel Hepworth, Slack Head of Growth Marketing: how startups can best "Go to Market and Grow" - This Week in Startups][gm-hepworth]

[E958: Matt Horiuchi, Director of User Acquisition at Calm, breaks down “Growth, Paid Marketing & Attribution” - This Week in Startups][gm-horiuchi]

[gm-hepworth]: https://www.youtube.com/watch?v=gmO4jomGuXI
[gm-horiuchi]: https://podcasts.apple.com/au/podcast/e958-matt-horiuchi-director-user-acquisition-at-calm/id315114957?i=1000445156448

repository: RoskiDeluge/rld-site

repo_name: RoskiDeluge/rld-site


text:
# Web Applications

+ Online calendar
  - Personal calendar where user can create/remove/update events
  - Skills: javascript, php, mySQL

+ Multi-room Chat
  - Group chatting room
  - Private message and private room
  - Administration of chatting rooms
  - Skills: Node.js, Socket.io

+ Online Shopping Platform
  - Basic platform for online shopping
  - Skills: MEAN.io(MongoDB, Express, AngularJS, Node.js)

+ Android Phone Catalog
  - extension of AngularJS tutorial

+ File Sharing Site
  - user registration and login
  - allow user to upload files and share files to other users
  - skills: php, html, css, Amazon AWS

+ NewsBoard
  - user registration and login
  - post stories, save favorite collections, comment posts, etc
  - skills: php, MySQL, html, Bootstrap, Amazon AWS

+ Employee Management System
  - web application to manage employees in various departments
  - skills: Java, Spring, Hibernate, Oracle, html, jsp, jQuery

repository: startupjing/Web-Applications

repo_name: startupjing/Web-Applications


text:
# Reach Docs

This directory contains documentation for different aspects of Reach

Much of the documentation is in the form of markdown with embedded latex.
For rendered preview, vs code provides a nice view, as does stackedit.io.

* [overview](overview.md) contains an overview of
the Reachability problem and Reach tool. Latex embedded [1].

* [slides](slides/present.pdf) contains a presentation on Reach focusing on proofs.
To build, run 'pdflatex present.tex' on a system with teTex or
similar.

* [uni](uni.md) contains some ideas about unified queueing to
alleviate the problems based on the 2-phase nature of the algorithms
on which iic is based.  Latex embedded [1].

[1] For latex embedded markdown, vs code provides a nice preview, as
does stackedit.io.

repository: go-formal/reach

repo_name: go-formal/reach


text:
# Using the python examples

First of all, create a virtual environment

`python3 -m venv stellar`

Activate the environment

`source stellar/bin/activate`

Install dependencies

`pip3 install -r requirements.txt`

## Basic account examples
There is a more advanced example of [issuing a custom asset on testnet](issuetoken/readme.md)

### 1 Creating a keypair

This creates an `account`.

```sh
python3 account/create-key-pair.py
```

### 2 Funding an address

Funding an address of a generated keypair through the Stellar Friendbot.

```sh
python3 account/fund-account.py --address <address>
```

### 3 Checking balance of an address

Checks the balance of an address.

```sh
python3 account/check-account.py --address <address>
```

### 4 Activating (Funding) another account

Folowing funds another account, this account must exist in order to work.

Sourcekey is the secret key from which account another account will be funded.

```sh
python3 account/activate-account.py --sourcekey <address> --destinationaddress <destinationAddress>
```

### 5 Transfering assets to another account

Folowing transfers funds to another account, this account must exist in order to work.

Sourcekey is the secret key from which account funds will be transfered.

Amount must be a positive number, with a maximum of 7 digits after the decimal point.

Is the asset flag is provided in format: `code:issuer` then this asset will be transfered, if not provided the native XLM asset is used.

```sh
python3 account/transfer.py --sourceKey <address> --destinationAddress <destinationAddress> --amount <amount> --asset <code:issuer>
```

repository: iCodeIN/rivine

repo_name: iCodeIN/rivine


text:
## Yii2 - Template with some light touch

This template has the next configuration:
- Materialize.css enabled
- Smarty template engine
- i18n enabled

As features are added, the previous list will be updated.

## Installing

Clone this repo, then execute:
```bash
$ ./init
$ composer update
```


text:
Convert your Android device into USB keyboard/mouse, control your PC from your Android device remotely, including BIOS/bootloader. Use it as Rubber Ducky.

While compiling Kernel for this device,use this command

```
patch -p1 < SM-G531F_HID_Support_Kernel.patch
```


text:
# Lecture 0 Computational Thinking, scratch

[Lecture 0 video](https://www.youtube-nocookie.com/embed/jjqgP9dpD1k?modestbranding=1&rel=0)

## Inputs

### Binary

`128 64 32 16 8 4 2 1`

- the number 50 would be represented by `32 16 2`

### ASCII

> The American for information interchange

Covers letters and punctuation

`hi! = 72 73 33`

### Unicode

- Set of charecters that are used in emojis

`128514 = tears of joy emoji=<PHONE_NUMBER>0000010`

### RGB

> red green blue

`emoji yellow = (72 73 33)`

## Outputs

> input  ---> algorithm --> output

> Algorithm - step by step instructions for solving a problem

### Psudocode

 - Functions
 - Conditions
 - Boolean Expressions
 - Loops
 - Variables
 - Threads
 - Events
 - ...

## Scratch

[stratch](https://www.scratch.mit.edu)

filename: lec0-computational thinking.md


text:
# Lexical Environment

The lexical environment is simply where something is written.

Think of it as a little universe that gets created with each exectution context

Each time we write a function, we create a new lexical environment.

In js our lexical scope (available data + variables where the function was defined) determines our available variables. Not where the function is called (dynamic scope). So a function defined in the global scope but called in the lexical environment of another function will still have access to the global scope, because that's where it was defined.

repository: FreedomWriter/javascript-deepdive

repo_name: FreedomWriter/javascript-deepdive


text:
# Utf8Json.FSharpExtensions

[![NuGet Status](http://img.shields.io/nuget/v/Utf8Json.FSharpExtensions.svg?style=flat)](https://www.nuget.org/packages/Utf8Json.FSharpExtensions/)
[![Build status](https://ci.appveyor.com/api/projects/status/ng1hco02vd52362u/branch/master?svg=true)](https://ci.appveyor.com/project/pocketberserker/utf8json-fsharpextensions/branch/master)
[![Build Status](https://travis-ci.org/pocketberserker/Utf8Json.FSharpExtensions.svg?branch=enable-ci)](https://travis-ci.org/pocketberserker/Utf8Json.FSharpExtensions)

Utf8Json.FSharpExtensions is a [Utf8Json](https://github.com/neuecc/Utf8Json) extension library for F#.

## Usage

```fsharp
open Utf8Json
open Utf8Json.Resolvers
open Utf8Json.FSharp

CompositeResolver.RegisterAndSetAsDefault(
  FSharpResolver.Instance,
  StandardResolver.Default
)

type Person = {
  Age: int
  FirstName: string
  LastName: string
  MiddleName: string option
}

let p = {
  Age = 99
  FirstName = "foo"
  LastName = "buz"
  MiddleName = Some "bar"
}

let result = JsonSerializer.Serialize(p)
let p2 = JsonSerializer.Deserialize<Person>(result)
```


text:
# Pro Episerver Commerce development
This is a book about Episerver Commerce development. Episerver Commerce (Formerly known as EPiServer Commerce) is an e-Commerce platform built on .NET, which provide powerful and conprehensive features for building e-Commerce solution. But it's still a long way to make it works: How to harness the power, how to workaround the weaknesses, how to adapt to real-world requirements. This book attempts to be a definitive guide for developers who want to master Episerver Commerce to build world-class e-Commerce solution.

This is a work-in-progress. I'll try to update it as frequent as I can, but writing a book, especially a book about a big, complicated framework is no easy task. Your contributions are warmly welcome.

## Who is this book for
I will not try to make this a cook book (although I'll cover some detail implementations when I think they are needed). If you want to be up to speed, I would recommend taking one of Episerver Commerce courses (http://www.episerver.com/Training/) - there are some of very good trainers there. This book aims to be an view from inside Commerce, how things work, how can it be more efficient,etc. Some experience with C#/SQL Server are needed. Experience with Episerver CMS or Commerce is a big plus, but not required.  If you like in-depth books, this is for you.

## Thanks.
I would like to thank:
My team at Episerver, for the help and support, and good laughs.

My boss Magnus Stråle, for the inspiration and encouragement.

My wife Huong, for taking care of everything else.

## Index of contents
### 1. Chapter 1: An overview
### 2. Chapter 2: The catalog system
#### 2.1 Catalog system structure
#### 2.2 Metadata system
#### 2.3 The content way
### 3. Chapter 3: The order system
#### 3.1 Working with cart
#### 3.2 Extending the order

### 4. Chapter 4: The legacy lives on
#### 4.1 Extending Commerce Manager

## About the author
One of the dedicated Episerver Commerce developers from day 1, I am both CMS Certified Developer and Commerce Certified Developer. I am also an Oracle on Episerver World forums, and known for helping people solving their Commerce problems.
You can reach my page at http://world.episerver.com/System/Users-and-profiles/Community-Profile-Card/?userid=9b7dad33-b57b-e011-a4b8-0018717a8c82 or my personal email at<EMAIL_ADDRESS>
###Disclaimer
This is my personal project. While my bosses support me in this project, it has no official relations with Episerver. Episerver neither requests nor pays me for writing this. The opinions mentioned in this book are mine only, it does not represent the view of my employer of Episerver products in general and Episerver Commerce in particular.

###Donations
Writing a book is not an easy task. I'll will try best doing this for free, but you're welcome to buy me a coffee :)

From Sweden? Swish me a coffee at<PHONE_NUMBER>


text:
+++
draft = false
author = "theobutler"
description = "We have new releases of Ponyc and Corral."
categories = [
    "Last Week in Pony",
]
title = "Last Week in Pony - March 7, 2021"
date = "2021-03-07T18:49:04-05:00"
+++

We have new releases of Ponyc and Corral.
<!--more-->

## Items of note

- Audio from the [February 23, 2021](https://sync-recordings.ponylang.io/r/2021_02_23.m4a) Pony development sync call is available.
- Audio from the [March 02, 2021](https://sync-recordings.ponylang.io/r/2021_03_02.m4a) Pony development sync call is available.

## Releases

- Version 0.39.0 of ponylang/ponyc has been released.

See the [release notes](https://github.com/ponylang/ponyc/releases/tag/0.39.0) for more details.

- Version 0.5.0 of ponylang/corral has been released.

See the [release notes](https://github.com/ponylang/corral/releases/tag/0.5.0) for more details.

---

_Last Week In Pony_ is a weekly blog post to catch you up on the latest news for the Pony programming language. To learn more about Pony check out [our website](https://ponylang.io), our Twitter account [@ponylang](https://twitter.com/ponylang), or our [Zulip community](https://ponylang.zulipchat.com).

Got something you think should be featured? There's a GitHub issue for that! Add a comment to the [open "Last Week in Pony" issue](https://github.com/ponylang/ponylang.github.io/issues?q=is%3Aissue+is%3Aopen+label%3Alast-week-in-pony).

Interested in making a change, or keeping up with changes to Pony? Check out the [RFC repo](https://github.com/ponylang/rfcs). Contributors welcome!

repository: kapilash/ponylang-website

repo_name: kapilash/ponylang-website


text:
---
title: What's New
---

# GIA Report Results API Changelog

## 2020-02-04

New features (volume pricing, diamond letters) added, reports' fields updated issues fixed.

#### Added
- A new pricing option called "Volume Pricing" has been delivered, in addition to our existing "Pay As You Go" offering.  Volume pricing allows clients to lookup reports up to a maximum limit for a set monthly price.  We have developed additional bulk pricing plans, listed at gia.edu/report-results-api, along with more information regarding this new payment option.
- Support for diamond letters: four new links are now available to download PDFs for reports with diamond letter service.

#### Changed
- `color_distribution` added to all synthetic/lab-grown reports
- `proportions` added to all synthetic/lab-grown reports
- `luster`, `matching`, `drilling` and `quantity` added to pearl reports

#### Fixed
- Melee reports now return all fields
- `clarity_characteristics` now appear on grading reports only

## 2020-01-24

#### Changed
- All historical report assets are now available via the API.

## 2019-11-04
GIA is excited to announce the general availability of the GIA Report Results API!

#### Added
- `getReport` query field
- `getQuota` query field

_Note regarding availability of assets_: At launch, a limited number of historical reports may not contain assets such as the pdf, plotting and/or proportions diagrams while data migration operations continue. Recently issued reports will contain all expected assets. A note will be posted here once the migration of historical assets is completed.


text:
# Domabesh_Console
Open source "Domabesh"-alphabet font for screens.

[Download (.OTF)](https://github.com/AurekFonts/Domabesh_Console/raw/master/Domabesh_Console_beta-2.otf)

### Examples
![Domabesh_Console example image](https://github.com/AurekFonts/Domabesh_Console/blob/master/IAmOne.png?raw=true "Example: Journal of the Whills")
![Domabesh_Console example image](https://github.com/AurekFonts/Domabesh_Console/blob/master/JournalOfTheWhills.png?raw=true "Example: 'I am one with the Force; the Force is with me.'")
### Characters
![Domabesh_Console character set](https://github.com/AurekFonts/Domabesh_Console/blob/master/Domabesh_Console-CharacterSet-x.png?raw=true "Domabesh_Console character set")


text:
---
layout: post
title: "Say Hello to the New Sing! on Android"
description: ""
category:
tags: [smule, android]
---

Greetings *Sing! Karaoke* Android people! This is Mark, Engineer-Progenitor of Smule’s *Sing!* Android app. Since we first released our debut version of Sing! Android in December 2012, over 4 million of you have played with our app. Today, we’re proud to announce that we haven’t, in fact, been sitting on our thumbs for the past few months. The entire team here at Smule HQ has been hard at work making *Sing!* for Android even better. To find out how we’ve improved *Sing!*, read on.

The new Sing! Karaoke!

*Note:* This post is featured on the Smule blog. Visit [blog.smule.com][1] to learn more about what's going on at Smule.

Here at Smule, we believe change is good. That’s why we’ve given Sing! for Android a major facelift — designed to make it easier for you to get around, explore and discover new ways to Sing! For example, the previous version of the app used a tab bar on the bottom of the screen for navigation. Now, there is a navigation drawer, which also has other things for you to explore, like hot Open Mic performances and recent performances by your friends. Browsing performances has also become a lot more streamlined. Now, when you select a performance, a little bar slides up from the bottom and starts playing it, allowing you to continue browsing other performances.

A more streamlined performance-browsing experience.

The core singing experience has also gotten a makeover to make it more streamlined. Long gone are the days when you needed to wait for your performance to render whenever you adjusted voice volume, changed effects, or updated delay calibration. Now, everything will automatically re-render at the current playback location and resume playback. And just like NASA, Smule has also abandoned our space shuttle -- the little one that indicates your pitch level -- and replaced it with a simpler triangle because the astronauts in our space shuttle missed their family.

The core singing experience gets a design update and lots of optimizations.

Major re-designs are always challenging. Engineers need to find new ways to introduce bugs. Testers try to break things. And project managers wring their hands over deadlines. It’s a crazy time for everyone, but we think you’ll like what we came up with: a new and beautiful *Sing! Karaoke* for Android. We hope you enjoy it. Sing on!

[Download Sing! Karaoke now][2]!

[1]: http://blog.smule.com
[2]: https://play.google.com/store/apps/details?id=com.smule.singandroid

gha_language: CSS

gha_license_id: NOASSERTION


text:
## removeAdjacentToValue(
      {
           value: anyExceptObject,
           offset: integer,
           howMany: integer_greater_than_zero
      },
      array
): void

Removes `howMany` adjacent items from `array`, starting with, or
close to, `value`.  Exactly where removal begins is decided by `offset`,
which is the position, relative to `value`, where to begin removing.
For example, if `offset` is 0, then removal begins at `value`.  If -1,
it begins one place to the left of `value`.  If 1, it begins one place to the
right.

Note: the function only works with the first found instance of `value`.

### Examples
```
let array = [1,3,5,7,9,11,13,15,17];
removeAdjacentToValue(
    {value: 11, offset: 0, howMany: 3},
    array
);
// items that get removed are [11,13,15] .
// array is now [1,3,5,7,9,17].

let array = [1,3,5,7,9,11,13,15,17];
removeAdjacentToValue(
    {value: 11, offset: -2, howMany: 4},
    array
);
// items that get removed are [7,9,11,13] .
// array is now [1,3,5,15,17] .

let array = [1,3,5,7,9,11,13,15,17];
removeAdjacentToValue(
    {value: 11, offset: 2, howMany: 2},
    array
);
// items that get removed are [15,17] .
// array is now [1,3,5,7,9,11,13] .
```

### Installation
`npm i  @writetome51/array-remove-adjacent-to-value`

### Loading
```
// if using TypeScript:
import {removeAdjacentToValue} from '@writetome51/array-remove-adjacent-to-value';
// if using ES5 JavaScript:
var removeAdjacentToValue =
    require('@writetome51/array-remove-adjacent-to-value').removeAdjacentToValue;
```


text:
**Sanity checklist**
- [ ] Is the feature rebased on top the tip of the branch with which you wish to merge?
- [ ] Does `mrbsetenv; mrb t -j4` come back clean?
- [ ] Does `ubcc1pi` come back clean? (you may need to run `ubcc1pi_standalone/setup_standalone.sh` first)
- [ ] Have you sourced `cleanWhitespace.sh`?
- [ ] Does `cd docs; ./makedox` come back clean?

# Details of changes

Details your changes here.


text:
# Tips and hacks

I'm collecting some tips from around the site here. This is not comprehensive. If you think having something else here would help, please open an issue or suggest an edit!

## Using the website and zoom

```{dropdown} 5 easy tricks to use this site better, improve it, boost your grade, and help your classmates

1. The ← and → keys will tab between pages on this website.
1. The search bar is useful, but sometimes it doesn't "see" text inside of code blocks, so don't think "no results" is definitive.
1. If you have any questions about something on the website: Click on the GH icon in the upper right, and then "open issue".
    - Depending on the nature of the question, you can tag me (@donbowen) and/or your classmates (@classmates) to get their attention.
    - I recommend tagging classmates in most cases - you'll get more answers, improve the discourse in the class, and often, answering your question will probably help other students.
    - [How to ask for help to get the best answers](resources.html#how-to-ask-for-help-in-a-way-that-gets-the-best-answers)
1. If you spot errors, typos, have a suggestion to clarify a lesson: Click on the GH icon in the upper right, and then "suggest edit". Edit the pages as you would, describe the changes, and commit! I'll probably incorporate it, and you'll get participation credit!
1. If you have a new idea for a webpage, tutorial, example... just go ahead and make it and send it to me. You'll notice parts of the textbook draw heavily on past students. :)
```

```{dropdown}  How to improve your zoom life, our class, and your grades

1. **Please use headphones!**
2. **Buy a second monitor**
3. Update your Zoom software.
```

## Any work you do

Fetch early, commit frequently, push often! ⭐ ⭐ ⭐

For more on this process, see [the github workflow](../assignments/howto_do.html#working-on-assignments-projects-taking-notes). ⭐ ⭐ ⭐

<!-- This follows the spirit of the [workflow recipe from lecture 1](https://ledatascifi.github.io/lectures-spr2020/01/01_Motivation_and_Getting_Started.html#***-THE-WORKFLOW-RECIPE--***):
-->

## Better homework grades

I wrote a section of tips in the [homework guidelines](../assignments/howto_do.html#tips-for-better-grades-workproduct-repos). Many of these tips apply to any coding project you work on (Github or not).

## Look at your data and objects frequently! (Print them)

As discussed [here](../01/07_debugging.html#seriously-print-your-data-and-objects-often).

But I really like [pandas-profiling](https://github.com/pandas-profiling/pandas-profiling) for initial examination of variables and [dabl](https://dabl.github.io/0.2.0/user_guide.html) is good at "providing a quick overview via visualizations, as well as convenient preprocessing and model search for machine learning."

Neither of those packages substitute for LOOKING at data, but they get you going!

## Community Codebook

You'll build your own codebook, a list of recipes you use repeatedly, as the semester goes on.

The [community codebook](https://github.com/LeDataSciFi/ledatascifi-2021/tree/main/community_codebook) will be updated as the semester progresses.


text:
# TwitchChatReader
Read twitch chats

This application is a a ingester for twitch chat of a channel.

This application use websocket to watch a channel on the twitch server and use docker-compose with gelf driver to send stout to graylog.

Requirements.
1. Python 3
2. Docker
3. Docker-compose

How to:
1. copy settings.ini.example to settings.ini.
2. Set username to your twitch username.
3. Set OATH token for your username, can be generated here: https://twitchapps.com/tmi/.
4. Set name of the list to use, it will loop the file to generate a compose file.
5. Set graylog as the the url where to deliver stout
6. run bash build.sh
   1. this will build chatlogger to a docker image
   2. creates a compose file
   3. and run composefile

repository: maestroi/TwitchChatReader

repo_name: maestroi/TwitchChatReader


text:
# RSocket RPC - Kotlin
[![Build Status](https://travis-ci.org/rsocket/rsocket-rpc-kotlin.svg?branch=master)](https://travis-ci.org/rsocket/rsocket-rpc-kotlin)

The standard [RSocket](http://rsocket.io) RPC implementation based on [RSocket-kotlin](https://github.com/rsocket/rsocket-kotlin) and [RxJava2](https://github.com/ReactiveX/RxJava).
RSocket is binary application protocol with pluggable transports which models all communication as [Reactive Streams](https://github.com/reactive-streams/reactive-streams-jvm/blob/master/README.md) of messages multiplexed over a single network connection, and never synchronously blocks while waiting for a response.
## Build and binaries

Snapshots are available on Bintray

```groovy
    repositories {
        maven { url 'https://oss.jfrog.org/libs-snapshot' }
    }
```

```groovy
    dependencies {
        compile 'io.rsocket.rpc.kotlin:rsocket-rpc-core:<TBD>'
    }
```

## Getting started
TBD

## Development

1. Building RSocket-RPC-kotlin requires installation of the [Protobuf](https://github.com/google/protobuf) compiler. RSocket RPC requires Protobuf 3.6.x or higher.

    For Mac users you can easily install the Protobuf compiler using Homebrew:

        $ brew install protobuf

    For other operating systems you can install the Protobuf compiler using the pre-built packages hosted on the [Protobuf Releases](https://github.com/google/protobuf/releases) page.

2. Run the following Gradle command to build the project:

        $ ./gradlew clean build

## Release Notes

Release notes are available at [https://github.com/rsocket/rsocket-rpc-kotlin/releases](https://github.com/rsocket/rsocket-rpc-kotlin/releases).

## Bugs and Feedback

For bugs, questions, and discussions please use the [Github Issues](https://github.com/rsocket/rsocket-rpc-kotlin/issues).

## License
Copyright 2018 [Netifi Inc.](https://www.netifi.com)

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

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

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

repository: mostroverkhov/rsocket-rpc-kotlin

repo_name: mostroverkhov/rsocket-rpc-kotlin


text:
Hypodermic <img align="center" src="../master/resources/syringe_by_Andy_Selimov_from_thenounproject.png?raw=true" width="56">
==========

[![MIT license](http://img.shields.io/badge/license-MIT-brightgreen.svg)](http://opensource.org/licenses/MIT)
[![Build status](https://img.shields.io/appveyor/ci/ybainier/Hypodermic/master.svg?label=windows)](https://ci.appveyor.com/project/ybainier/hypodermic)
[![Build Status](https://img.shields.io/travis/ybainier/Hypodermic/master.svg?label=linux/osx)](https://travis-ci.org/ybainier/Hypodermic)

Hypodermic is a non-intrusive header only [IoC container](http://martinfowler.com/articles/injection.html) for C++. It provides dependency injection to your existing design by _managing the creation of your components and their dependencies_ in the right order, sparing you the trouble of writing and maintaining boiler plate code.

Used in production environments since 2012.

## First steps

Configure the container by registering your components
```cpp
ContainerBuilder builder;

builder.registerType< MessageDispatcher >();

auto container = builder.build();
```

... then ask the container to give you an instance of that type
```cpp
auto dispatcher = container->resolve< MessageDispatcher >();
```

Want to discover what happened here? Learn to use more features through the [beginner's guide](https://github.com/ybainier/Hypodermic/wiki/Getting-started) on the wiki.

## Benchmarks

Some comparative benchmarks are available on the wiki, [check them out](https://github.com/ybainier/Hypodermic/wiki/Benchmarks).

## Acknowledgment

Hypodermic was started with the will to mimic the famous .NET Autofac http://autofac.org/. Although its design evolved, both its behavior and its expressiveness tend to remain the same.

Constructor deduction has been made possible thanks to the work of [Krzysztof Jusiak](http://krzysztof.jusiak.net/) in http://boost-experimental.github.io/di/.

repository: ybainier/Hypodermic

repo_name: ybainier/Hypodermic


text:
# clojure-lsp-adapter package

Clojure language support for [Atom-IDE](https://ide.atom.io/), powered by the [Clojure language server](https://github.com/snoe/clojure-lsp).

## Requirements

[`clojure-lsp-adapter`](https://atom.io/packages/clojure-lsp-adapter) requires
[Atom `1.38+`](https://atom.io/),
[Clojure language server `0.1+`](https://github.com/snoe/clojure-lsp) and the
[`atom-ide-ui`](https://atom.io/packages/atom-ide-ui) package to expose the functionality within Atom.

## Installation

### Language Server

Install the language server [clojure-lsp](https://github.com/snoe/clojure-lsp#installation)

### Atom Package

Install `clojure-lsp-adapter` and [`atom-ide-ui`](https://atom.io/packages/atom-ide-ui) from _Install_ in Atom's settings or run:

```bash
apm install atom-ide-ui
apm install clojure-lsp-adapter
```

## Configuration

Configuration is loaded from zero or more configuration sources.

- `clojure-lsp`: full path to clojure-lsp executable if not in PATH

## Contributing

- [Filing bugs and feature requests](https://github.com/artarf/clojure-lsp-adapter/issues/new)
- [Work with existing issues](https://github.com/artarf/clojure-lsp-adapter/issues)

See Atom's guide to [contributing to packages](https://flight-manual.atom.io/hacking-atom/sections/contributing-to-official-atom-packages/).

## License

[MIT License](LICENSE.md).

repository: artarf/clojure-lsp-adapter

repo_name: artarf/clojure-lsp-adapter


text:
# Contributing to QuantumLeap

Thanks for checking out the QuantumLeap Project. We're excited to hear
and learn from you. We've put together the following guidelines to help
you figure out where you can best be helpful.

  We all come from different backgrounds and projects, which means we
  likely have different perspectives on "how open source is done."
  Try to listen to others rather than convince them that your way is
  correct.
- This project is released with a [Contributor Code of Conduct][conduct].
  By participating in this project, you agree to abide by its terms.
- If you open a pull request, you must sign the
  [Individual Contributor License Agreement][cla] by stating
  in a comment _"I have read the CLA Document and I hereby sign the CLA"_
- Please ensure that your contribution passes all tests. If there are
  test failures, you will need to address them before we can merge your
  contribution.
- When adding content, please consider if it is widely valuable. Please
  don't add references or links to things you or your employer have
  created as others will do so if they appreciate it.

## How to contribute

If you'd like to contribute, start by searching through the [issues][gi]
and [pull requests][pr] to see whether someone else has raised a similar
idea or question.

If you don't see your idea listed, and you think it fits into the goals
of this guide, do one of the following:

- **If your contribution is minor,** such as a typo fix, open a pull
  request.
- **If your contribution is major,** such as a new guide, start by
  opening an issue first. That way, other people can weigh in on the
  discussion before you do any work.

## Community

Discussions about the Open Source Guides take place on this repository's
[Issues][gi] and [Pull Requests][pr] sections. Anybody is welcome to join
these conversations.

Wherever possible, do not take these conversations to private channels,
including contacting the maintainers directly.
Keeping communication public means everybody can benefit and learn from
the conversation.

[cla]: https://raw.githubusercontent.com/orchestracities/ngsi-timeseries-api/master/individual_cla.pdf
    "Martel Open Source Software Individual Contributor License Agreement"
[conduct]: ./CODE_OF_CONDUCT.md
    "Contributor Covenant Code of Conduct"
[gi]: https://github.com/orchestracities/ngsi-timeseries-api/issues
    "GitHub Issues"
[pr]: https://github.com/orchestracities/ngsi-timeseries-api/pulls
    "GitHub Pull Requests"

repository: FIWARE-GEs/quantum-leap

gha_language: Python

repo_name: FIWARE-GEs/quantum-leap


text:
bootstrap-loopback-fullstack
============================

Project bootstrap for loopback backend project

Installation
============
	- Download and extract

	- npm install

	- bower install

Config
======

	- Set PROJECT-NAME in ./package.json and ./bower.js

	- Set PROJECT-NAME and LICENSE-KEY in ./newrelic.js

	- Set MONGODB-SERVER in ./server/datasources.json

	- Set API_URL in ./Gruntfile.js

	- Set api keys in ./server/providers.json

Extras
======

You can use ./nginx.conf as a starting point for nginx configuration.
Edit all APP_ROOT_FOLDER, SEO4AJAX_API_KEY (some might be repeated, make sure you edit all of them)
Copy ./nginx.conf to /etc/nginx/sites-available/

Alternatively, if you want ssl configuration do the above steps with nging_ssl.conf and place your certificate files in:

	- /opt/nginx/ssl_certs/server.pem
	- /opt/nginx/ssl_certs/server.key
 	- /opt/nginx/ssl_certs/dhparam.pem
 	- /opt/nginx/ssl_certs/godaddy_ssl_trusted_certificate.pem

(this configuration will grant you A+ grade security)


text:
---
layout: post
title: Dynamic energy cascade in gKdV
---

Recently in collaboration with [Elena Tobisch](http://www.dynamics-approx.jku.at/lena/) (Kartashova) we submitted already our third common work on the observation of the dynamic energy cascades in nonlinear dipersive PDEs. This time our study was devoted to the generalized KdV-type equations (up to *quintic* nonlinearities).

It is known that the classical (quadratic) KdV equation is modulationally stable, while the mKdV (with the cubic nonlinearity) is unstable if the nonlinear term sign coincides with the sign of the dispersive term. Quartic gKdV does not seem to have the Modulational Instability (MI), while the quintic gKdV shows MI for sufficiently large initial data. Our study is devoted to the interplay between MI effect on the dynamic energy cascade formation.

The preprint can be downloaded from the [HAL](http://hal.archives-ouvertes.fr/) server:

* **D. Dutykh**, E. Tobisch. [Formation of the dynamic energy cascades in quartic and quintic generalized KdV equations](http://hal.archives-ouvertes.fr/hal-01070799), Submitted, 2014

For the sake of illustration here is a picture of the direct cascade in MI-unstable mKdV equation:
![Direct cascade](/public/pics/gKdV_T_160_10Modes.jpg)

---


text:
# Contributing to the Platform Labeler plugin

Plugin source code is hosted on [GitHub](https://github.com/jenkinsci/platformlabeler-plugin).
New feature proposals and bug fix proposals should be submitted as
[GitHub pull requests](https://help.github.com/articles/creating-a-pull-request).
Your pull request will be evaluated by the [Jenkins job](https://ci.jenkins.io/job/Plugins/job/platformlabeler-plugin/).

Before submitting your change, please assure that you've added tests that verify the change.

## Code formatting

Source code and pom file formatting is maintained by the `spotless` maven plugin.
Before submitting a pull request, confirm the formatting is correct with:

* `mvn spotless:apply`

## Spotbugs checks

Please don't introduce new spotbugs output.

* `mvn spotbugs:check` analyzes the project using [Spotbugs](https://spotbugs.github.io)
* `mvn spotbugs:gui` displays the spotbugs report using GUI

## Code coverage

Code coverage reporting is available as a maven target.
Please try to improve code coverage with tests when you submit pull requests.

* `mvn -P enable-jacoco clean install jacoco:report` reports code coverage

### Reviewing code coverage

The code coverage report is a set of HTML files that show methods and lines executed.
The following commands will open the `index.html` file in the browser.

* Windows - `start target\site\jacoco\index.html`
* Linux - `xdg-open target/site/jacoco/index.html`
* Gitpod - `cd target/site/jacoco && python -m http.server 8000`

The file will have a list of package names.
Click on them to find a list of class names.

The lines of the code will be covered in three different colors, red, green, and orange.
Red lines are not covered in the tests.
Green lines are covered with tests.

## OpenClover code coverage

[OpenClover code coverage](https://openclover.org/) reporting is available as a maven target and can be displayed by the [Jenkins clover plugin](https://plugins.jenkins.io/clover/).
* `mvn clover:setup clover:instrument test clover:clover` to report code coverage with OpenClover.

## Mutation Testing

PIT mutation testing is available as a maven target.

* `mvn clean -DskipTests verify && mvn org.pitest:pitest-maven:mutationCoverage -DargLine="-Xms1G -Xmx2G -XX:+HeapDumpOnOutOfMemoryError -XX:+TieredCompilation -XX:TieredStopAtLevel=1"` to perform mutation testing and generate a report

## Maintaining automated tests

Automated tests are run as part of the `verify` phase.
Automated tests in the `continuous-integration` profile are run with multiple Java virtual machines, depending on the number of available processor cores.
Run automated tests with multiple Java virtual machines in a development with the command:

* `mvn clean -DforkCount=1C verify`

Test data for automated tests is extracted from Docker images defined in subdirectories of `src/test/resources/org/jvnet/hudson/plugins/platformlabeler`.
The subdirectory name is used as an index into a map that defines the expected value of the operating system name.

The contents of `/etc/os-release` and the output of `lsb_release -a` are stored in the same subdirectory as the defining `Dockerfile`.
The data files are generated by the shell scripts in the `src/test/resources/org/jvnet/hudson/plugins/platformlabeler` directory.
A maintainer runs those shell scripts periodically and decides which data files should be updated with the latest information.

The Dockerfile base tags are tracked by dependabot in hopes that Docker image updates will result in automated pull requests for the Docker image tags.

## Reporting Issues

Report issues in the [Jenkins issue tracker](https://www.jenkins.io/participate/report-issue/redirect/#15650).
Please use the link:https://www.jenkins.io/participate/report-issue/["How to Report an Issue"] guidelines when reporting issues.

repository: jenkinsci/platformlabeler-plugin

repo_name: jenkinsci/platformlabeler-plugin


text:
---
name: Achim Brucker
pronoun:
title: Professor in Cybersecurity / Software Security Expert
company: University of Exeter
talk-title: Hacking (Not So) Smart Things 101
headshot: /assets/images/headshots/head-achim-brucker.jpg
track: "2"
timeslot: "10.00"
type: Talk, 45 minutes
level: 1
twitter:
 - adbrucker
# linkedin:
takeaways:
 - understand the amount of systems that power a small smart device
 - understand basic hacking techniques for smart devices
 - understand several security flaws that occur in IoT devices
---

More and more devices of our daily life are "smart" ranging from
 smart light bulbs to smart TVs to smart fridges -- everything can,
 and most likely will be, in the future connected to the
 Internet. More and more people are already used to remotely
 controlling their heating at home using their smart phone.

In this talk, we will, using smart home automation as an example,
 explain simple techniques for hacking (not so) smart devices.

(If the demo gods are friendly, the session will include some live hacking)

{% include speakers-takeaways.html %}

Bio

Achim D. Brucker (www.brucker.uk) is a Professor (Chair in Cybersecurity) at the University of Exeter, UK. Prior to that, he was a  Senior Lecturer at the Computer Science Department of The University of Sheffield, UK.

He leads the research in software assurance and security
  (logicalhacking.com).  Until December 2015, he was the global Security
  Testing Strategist at SAP SE, were, among others, he defined and implemented
  the security testing strategy for over 27000 developers world-wide. SAP's
  risk-based security testing strategy of SAP that combines static, dynamic,
  and interactive security testing methods and integrates them deeply into
  SAP's Secure Software Development Life Cycle. He also was involved in the
  security checks for SAP's outbound and inbound Open Source process.


text:
---
name: Bug report
about: Create a bug report
title: ''
labels: bug
assignees: ''
---

## Description
<!--- Provide a more detailed introduction to the issue itself, and why you consider it to be a bug -->

## Expected Behavior
<!--- Tell us what should happen -->

## Actual Behavior
<!--- Tell us what happens instead -->

## Steps to Reproduce
<!--- Provide a repeatable set of steps to reproduce this bug -->
1.
2.
3.
4.

## Context
<!--- How has this bug affected you? What were you trying to accomplish? -->

## Possible Fix
<!--- Not obligatory, but suggest a fix or reason for the bug -->

## Logs
<!--- Error logs in any form are really helpful -->

## Your Environment
<!--- Include as many relevant details about the environment you experienced the bug in -->
* OpenCAS version (commit hash or tag):
* Operating System:
* Kernel version:
* Cache device type (NAND/Optane/other):
* Core device type (HDD/SSD/other):
* Cache configuration:
* * Cache mode: (default: wt)
* * Cache line size: (default: 4)
* * Promotion policy: (default: always)
* * Cleaning policy: (default: alru)
* * Sequential cutoff policy: (default: full)
* Other (e.g. _lsblk_, _casadm -P_, _casadm -L_)

repository: Open-CAS/open-cas-linux

repo_name: Open-CAS/open-cas-linux


text:
# Gelopellis thaxteri (Zeller & C.W. Dodge) Zeller, 1939 SPECIES

#### Status
ACCEPTED

#### According to
The Catalogue of Life, 3rd January 2011

#### Published in
Mycologia 31: 22 (1939)

#### Original name
Hysterangium thaxteri Zeller & C.W. Dodge, 1929

### Remarks
null

repository: mdoering/backbone

repo_name: mdoering/backbone


text:
# Node-Windows Tests

node-windows uses several command line scripts to execute processes and bypass the need
for native modules. Additionally, node-windows attempts to handle account permissions, but
tests will still fail if they are not run with the appropriate account credentials. Therefore,
it is hard to decipher whether an issue stems from a user account, credentials, elevated permmissions,
or the code itself.

In a _best effort_ fashion, the examples are rudimentary. They have been tested and are known
to work. If you experience problems with the module, it is best to try running the examples first to
verify basic functionality.

## Testing Services

node-windows ships with a service/daemon management tool. It is important to note that installing
and uninstalling processes, which use `winsw.exe`, can take some time to complete. In particular,
there is a problem if you attempt to uninstall a process before it has completed installation.
Windows locks a log file while installing the process, which cannot be removed until the installation
is complete.


text:
## Currency Converter

[![Python 3.8](https://img.shields.io/badge/python-3.8-brightgreen.svg)](https://www.python.org/downloads/release/python-380/) [![Build Status](https://travis-ci.com/Belfler/currency-converter.svg?branch=master)](https://travis-ci.com/Belfler/currency-converter) [![codecov](https://codecov.io/gh/Belfler/currency-converter/branch/master/graph/badge.svg)](https://codecov.io/gh/Belfler/currency-converter)

HTTP server currency converter. Data is retrieved from https://exchangeratesapi.io/

### How to install
Just clone: `git clone https://github.com/Belfler/currency-converter.git`

### How to use
0) Start tests (optionally): `python -m converter.tests`

1) Start server: `python -m converter [--host HOST] [--port PORT]`

or with Docker: `docker build -t converter . && docker run -d -p 8000:8000 converter`

2) Send HTTP GET request to the home page with query string args:

`base` -- base currency that converter converts from

`target` -- target currency that converter converts to

`amount` -- amount of base currency's money that you want to convert

#### Example

Request:

    GET /?base=USD&target=RUB&amount=100 HTTP/1.1
    Host: localhost:8000

Response:

    HTTP/1.1 200 OK
    Content-Type: application/json

    {"base_currency": "USD", "target_currency": "RUB", "rate": 63.5412037037, "amount_in_base_currency": 100.0, "amount_in_target_currency": 6354.12037037}

license: Unlicense

repository: Belfler/currency-converter

repo_name: Belfler/currency-converter


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

### Description

An issue was discovered on WatchGuard AP100, AP102, and AP200 devices with firmware before <IP_ADDRESS>. Improper authentication handling by the native Access Point web UI allows authentication using a local system account (instead of the dedicated web-only user).

### POC

#### Reference
- https://watchguardsupport.secure.force.com/publicKB?type=KBSecurityIssues&SFDCID=kA62A0000000LIy
- https://www.exploit-db.com/exploits/45409/

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

repository: trickest/cve

gha_language: HTML

repo_name: trickest/cve


text:
Status: Internal-Only
Author: Simon Ioffe
CreateDate: 2016-01-11
ModifyDate: 2016-01-11

#CVCHA (Columbia Valley CHC)

**Client(s)**: [CCCN](../CCCN.md)
**Density Area**: Northwest

*This is the second CCCN connector to CVCH. The first connector used Nextgen before it was depreciated and CVCH converted to Athena. The Nextgen source is listed as* **CVCH**, *this page is about the new Athena,* **CHVCHA**.

## Sections:
* [Overview](#overview-and-architecture)
* [Custom Configurations](#custom-configurations)
* [Operations](#operations)
* [Data Source](#data-source)
* [Known Issues](#known-issues)
* [External Documentation Links](#external-documents)

##Overview and Architecture

| Overview ||
|-----|-----|
| Data Source Name| **Columbia Valley CHC** |
| Data Source Acronym| **CVCHA** |
| Type | **Clinical** |
| Site ID | **7** |
| Architecture Model | [**Client DB Extract (CDC)**](../../Tech_Delivery/Standard-Implementations/Client-DB-Extract-CDC.md)|
| Database hosting | **External** |

![](../../img/Connector-Client-DB-Extract-CDC.png)

###Database Connection Information

|Database Connectivity||
|-----|-----|
|Type|MSSQL|
|Host|CVCHDW01|
|Port|1433|
|Name|ATHENA|
|User Name|arcadia|

###Location Hierarchy Configuration

*Not documented at this time. Contact the Solution Architect for details.*

##Custom Configurations

##Data Source

The data for this connector is pulled from [Athena 0](../../Tech_Delivery/EHR-Documentation/Athena.md).

##Operations
|Restriction | |
|-----|-----|
|Time of day extract/access restrictions| **After 5PM PST (preferable between 6-8 PST)** |
|Is the database production?| *Unknown. Follow up with the Solution Architect*  |
|Frequency of Extracts| *Unknown. Follow up with the Solution Architect*  |

##Known Issues

Issues with linking Problems and diagnosis. Currently no problems have valid diagnosis codes (ICD9/10).

* Known Issues and Unvalidated Data Spreadsheet [Click Here](https://arcadia.app.box.com/files/0/f/1888547619/4._Client_Specific_Material)

##External Documents
- [JIRA Open Issues](https://jira.arcadiasolutions.com/issues/?jql=(labels%20%3D%20CVCHA%20or%20%22Data%20Source%20Acronym%22%20~%20CVCHA)%20and%20status%20!%3D%20Closed)
- [Connector Deployment History](https://github.com/arcadia/qdw/wiki/connector-version)
- Build Request (*Unknown. Follow up with the Solution Architect*)
- SOW (*Unknown. Follow up with the Solution Architect*)

repository: omarnema/mkdocs-material

repo_name: omarnema/mkdocs-material


text:
Change Default Python on Windows
================================

Lately, I've found I need to work with Python code spread across
multiple interpretors.  My computer at work has four interpretors installed:

 - 2.6 (for one or two legacy scripts)
 - 2.7: 32 bit (to be able to use a lot of addons that don't support
   64-bit Python)
 - 2.7: 64 bit (everyday use)
 - 3.2: 64 bit (updating code, working with newer APIs)

In a Windows environment there are three ways to invoke a Python script,
and they can all be distinct from each other:

 - Invoke the interpretor explicitly:
   `C:\Python27\python.exe script.py`
 - Invoke the interpretor implicitly (depends on PATH):
   `python.exe script.py`
 - Invoke the script directly (depends on file associations):
   `script.py`

In normal environments, the script can control which interpretor is used
when invoked directly via "shebang" shell conventions.  The stock command
interpretor (shell) in Windows, however, uses the file association
database to determine the path to the application that should be used
to execuate a script.  Unfortunately, modifying this database is not
always easy.  The GUI is tedious, and not designed for repeatedly changing
an existing entry (it's good at adding new entries).  The built-in
commands in cmd.exe (assoc and ftype) work decently, but I rather not have
to remember (and type) a lot of paths and command syntaxes.

That's where I decided to write this script.  It got a bit more complicated
than I expected, but it works well to make changing things around (and
putting things back when you're done), and it's fast and easy to remember.

If you decide to give this a try, type `chpy.py help` before
you do anything else:

Usage Examples
--------------

  chpy.py help                      - Display this information.
  chpy.py current                   - Display the current association.
  chpy.py restore                   - Restore the original assocation.
  chpy.py 27                        - Associate a 2.7 installation.
  chpy.py Python27                  - Associate a 2.7 installation.
  chpy.py C:\Python27\python.exe    - Specify a complete path to use.
  C:\Python27\python.exe chpy.py    - Use the invoking interpretor.

*Note:* This script is not compatible with Python 3.x.
You can still change the file association to and from 3.x, but you will
need to explicitly invoke a 2.6+ interpretor rather than attempting to
execute the script directly when 3.x is the current association.

The following example changes the file association to use a 3.2
installation (assuming the currently associated interpretor is 2.6+).
It then changes to a 2.7 installation (passing no arguments to the
script means it will use whatever interpretor is running the script).

  C:\scripts>chpy.py 32
  C:\scripts>C:\Python27\python.exe chpy.py

repository: zhester/hzpy

repo_name: zhester/hzpy


text:
  SimpleFusion

A library that fuses accelerometer and gyroscope readings quickly and easily with a complementary filter.

## Overview
This library combines accelerometer (in meters / second ²) and gyroscope (in radians / second) data to output the IMU's rotation (Euler angles). It is accurate
up to ± 90 degrees.

Note the the lxibrary defines pitch to be a rotation about the y-axis and roll to be a rotation about the x-axis.

## Benefits
Here's a comparison of different high-speed methods for estimating pitch and roll.

The complementary filter returns smooth readings despite non-zero acceleration.

## License

MIT

repository: seanboe/SimpleFusion

repo_name: seanboe/SimpleFusion


text:
# This Week in Enhancements - 2023-05-26

*Updates since 2023-05-19*

## Enhancements

### Merged Changes

*<PR ID>: (activity this week / total activity) summary*

There was 1 Merged pull request:

- [1388](https://github.com/openshift/enhancements/pull/1388): (38/228) microshift: Use OVN-Kubernetes external gateway bridge without a host interface for Microshift (pliurh) ([NP-654](https://issues.redhat.com/browse/NP-654))

  > This enhancement proposes a new external gateway configuration of OVN-Kubernetes
  > for MicroShift. With the new configuration, the `br-ex` will be created without
  > binding any host physical interface.

### New Changes

*<PR ID>: (activity this week / total activity) summary*

There were 2 New pull requests:

- [1406](https://github.com/openshift/enhancements/pull/1406): (10/10) microshift: USHIFT 1104 - MicroShift CSI Snapshotting Integration (copejon)

  > MicroShift is a small form-factor, single-node OpenShift targeting IoT and Edge Computing use cases characterized by tight resource constraints, unpredictable network connectivity, and single-tenant workloads. See [kubernetes-for-devices-edge.md](./kubernetes-for-device-edge.md) for more detail.
  >
  > This document proposes the integration of the CSI Snapshot Controller to support backup and restore scenarios for cluster workloads.  The snapshot controller, along with the CSI external snapshot sidecar, will provide an API driven pattern for managing stateful workload data.

- [1407](https://github.com/openshift/enhancements/pull/1407): (3/3) network: Networking: egress IP multi-NIC proposal (martinkennelly)

  > For OpenShift release version 4.13 or less, users may configure egress IP to allow source NAT when packets leave the primary network.
  > This enhancement will add egress IP support for networks that exists on NICs that aren't managed by OVN and hence forth
  > these networks are called secondary networks.

### Active Changes

*<PR ID>: (activity this week / total activity) summary*

There were 19 Active pull requests:

- [1217](https://github.com/openshift/enhancements/pull/1217): (25/108) api-review: CFE-544 : Apply user defined labels & tags to all GCP resources created by OpenShift (bharath-b-rh) ([OCPPLAN-8155](https://issues.redhat.com/browse/OCPPLAN-8155)) ([CORS-2455](https://issues.redhat.com/browse/CORS-2455))
- [1404](https://github.com/openshift/enhancements/pull/1404): (19/30) metadata: [CFE-840] Proposes metadata controller for user tag management on cloud resources (TrilokGeer)
- [1396](https://github.com/openshift/enhancements/pull/1396): (19/33) node-tuning: mixed-cpu-node-plugin (Tal-or) ([CNF-7603](https://issues.redhat.com/browse/CNF-7603))
- [1403](https://github.com/openshift/enhancements/pull/1403): (9/31) security: OCPBUGS-13905: Consistent handling of SecurityContextConstraint RunAsAny strategy. (alanconway) ([OCPBUGS-13375](https://issues.redhat.com/browse/OCPBUGS-13375))
- [1397](https://github.com/openshift/enhancements/pull/1397): (9/58) installer: Installer: AWS Shared VPC (patrickdillon) ([CORS-2613](https://issues.redhat.com/browse/CORS-2613)) ([OCPBU-558](https://issues.redhat.com/browse/OCPBU-558))
- [1365](https://github.com/openshift/enhancements/pull/1365): (8/120) network: [OCPBU-199] enhancement proposal for dual-stack support with openstack (MaysaMacedo) ([OCPBU-199](https://issues.redhat.com/browse/OCPBU-199)) ([OSASINFRA-1938](https://issues.redhat.com/browse/OSASINFRA-1938))
- [1387](https://github.com/openshift/enhancements/pull/1387): (7/557) microshift: USHIFT-734 MicroShift upgrades on ostree-based systems (pmtk) ([USHIFT-518](https://issues.redhat.com/browse/USHIFT-518))
- [1339](https://github.com/openshift/enhancements/pull/1339): (6/316) cloud-integration: STS enablement (bentito) ([OCPBU-4](https://issues.redhat.com/browse/OCPBU-4)) ([PORTENABLE-471](https://issues.redhat.com/browse/PORTENABLE-471)) ([CCO-286](https://issues.redhat.com/browse/CCO-286))
- [1402](https://github.com/openshift/enhancements/pull/1402): (4/40) api-review: [OCPNODE-1639] Add ImagePolicy to support signature verification (QiWang19) ([OCPNODE-1628](https://issues.redhat.com/browse/OCPNODE-1628))
- [1296](https://github.com/openshift/enhancements/pull/1296): (3/778) ingress: Enhancement Proposal for Adding HTTP header to HAProxy Without Customizing haproxy.config Template (miheer) ([NE-982](https://issues.redhat.com/browse/NE-982)) ([RFE-464](https://issues.redhat.com/browse/RFE-464))
- [1395](https://github.com/openshift/enhancements/pull/1395): (2/5) security: Support BMC CA Certificate (zhouhao3) ([RFE-3505](https://issues.redhat.com/browse/RFE-3505))
- [1400](https://github.com/openshift/enhancements/pull/1400): (2/6) installer: CORS-2062: Allow Customers to BYO DNS (sadasu) ([CORS-1874](https://issues.redhat.com/browse/CORS-1874))
- [1363](https://github.com/openshift/enhancements/pull/1363): (2/117) builds: BUILD-564: initial multi-arch builds design (nalind) ([BUILD-564](https://issues.redhat.com/browse/BUILD-564))
- [1346](https://github.com/openshift/enhancements/pull/1346): (2/29) kube-apiserver: Introduce detection of stale clusteroperator conditions (deads2k)
- [1307](https://github.com/openshift/enhancements/pull/1307): (2/219) ingress: CFE-815: Route secret injection for external certificate management (thejasn) ([CM-815](https://issues.redhat.com/browse/CM-815))
- [1232](https://github.com/openshift/enhancements/pull/1232): (1/263) installer: installer-aws: create edge compute pool for AWS Local Zones (mtulio) ([RFE-2782](https://issues.redhat.com/browse/RFE-2782))

#### Active Pull Requests Modifying Existing Documents

- [1382](https://github.com/openshift/enhancements/pull/1382): (27/60) network: EgressService: Separate Network and SNAT (oribon) ([SDN-2682](https://issues.redhat.com/browse/SDN-2682))
- [1377](https://github.com/openshift/enhancements/pull/1377): (4/11) network: Network: make namespaceSelector a mandatory field for dynamicHops (jordigilh) ([SDN-2481](https://issues.redhat.com/browse/SDN-2481))
- [1394](https://github.com/openshift/enhancements/pull/1394): (2/9) ingress: NE-1261: Add test plan to enhancement proposal (candita) ([NE-1105](https://issues.redhat.com/browse/NE-1105)) ([NE-1107](https://issues.redhat.com/browse/NE-1107)) ([NE-1108](https://issues.redhat.com/browse/NE-1108))

### Revived (closed more than 7 days ago, but with new comments) Changes

*<PR ID>: (activity this week / total activity) summary*

There was 1 Revived (closed more than 7 days ago, but with new comments) pull request:

- [1376](https://github.com/openshift/enhancements/pull/1376): (6/147) network: OVS Dynamic CPU Pinning (zeeke) ([CNF-5977](https://issues.redhat.com/browse/CNF-5977))

### Idle (no comments for at least 7 days) Changes

*<PR ID>: (activity this week / total activity) summary*

There were 13 Idle (no comments for at least 7 days) pull requests:

- [1106](https://github.com/openshift/enhancements/pull/1106): (0/72) storage: OpenStack Cinder CSI Driver Operator Configurability (stephenfin) ([OSASINFRA-2857](https://issues.redhat.com/browse/OSASINFRA-2857))
- [1267](https://github.com/openshift/enhancements/pull/1267): (0/193) network: vSphere IPI Support for Static IPs (rvanderp3) ([OCPPLAN-9654](https://issues.redhat.com/browse/OCPPLAN-9654))
- [1335](https://github.com/openshift/enhancements/pull/1335): (0/312) dns:  CFE-748: Improve CoreDNS Integration with EgressFirewall (arkadeepsen) ([CFE-748](https://issues.redhat.com/browse/CFE-748))
- [1357](https://github.com/openshift/enhancements/pull/1357): (0/90) general: BPF Support for OCP with bpfd (anfredette)
- [1368](https://github.com/openshift/enhancements/pull/1368): (0/40) machine-config: OCPNODE-1525: Support Evented PLEG in Openshift (sairameshv) ([OCPNODE-1525](https://issues.redhat.com/browse/OCPNODE-1525))
- [1370](https://github.com/openshift/enhancements/pull/1370): (0/101) etcd: ETCD-295: Automated Backups of Etcd (hasbro17) ([ETCD-81](https://issues.redhat.com/browse/ETCD-81))
- [1373](https://github.com/openshift/enhancements/pull/1373): (0/70) dev-guide: new approach to featuregates for coordination in the cluster (deads2k)
- [1389](https://github.com/openshift/enhancements/pull/1389): (0/9) baremetal: Enable CBO on Azure and GCP platforms (elfosardo) ([METAL-421](https://issues.redhat.com/browse/METAL-421)) ([METAL-435](https://issues.redhat.com/browse/METAL-435))
- [1391](https://github.com/openshift/enhancements/pull/1391): (0/55) authentication: AUTH-372: enhancements/authentication: Custom SCC preemption prevention (s-urbaniak) ([AUTH-132](https://issues.redhat.com/browse/AUTH-132))
- [1401](https://github.com/openshift/enhancements/pull/1401): (0/11) etcd: ETCD-425: adding etcd tuning profiles enhancement (dusk125)

#### Idle (no comments for at least 7 days) Pull Requests Modifying Existing Documents

- [1378](https://github.com/openshift/enhancements/pull/1378): (0/19) cloud-integration: OCPCLOUD-2011: Update implementation history of External platform type EP (adriengentil) ([OCPPLAN-9429](https://issues.redhat.com/browse/OCPPLAN-9429)) ([OCPPLAN-8156](https://issues.redhat.com/browse/OCPPLAN-8156))
- [1398](https://github.com/openshift/enhancements/pull/1398): (0/4) cluster-logging: Update flow control API enhancement to match final implementation (alanconway)
- [1399](https://github.com/openshift/enhancements/pull/1399): (0/14) dev-guide: OpenShift API Conventions: no annotations convention (ingvagabund)

### With lifecycle/stale or lifecycle/rotten Changes

*<PR ID>: (activity this week / total activity) summary*

There were 3 With lifecycle/stale or lifecycle/rotten pull requests:

- [1257](https://github.com/openshift/enhancements/pull/1257): (0/54) general: Priority Classes enhancement preliminary doc (a-dsouza)
- [1298](https://github.com/openshift/enhancements/pull/1298): (1/78) monitoring: Scrape Profiles (JoaoBraveCoding)
- [1384](https://github.com/openshift/enhancements/pull/1384): (1/11) general: feat(hypershift): Priority class dynamic adjustment (a-dsouza) ([1041](https://github.com/openshift/hypershift/issues/1041))

repository: openshift/enhancements

gha_language: Go

repo_name: openshift/enhancements


text:
---
title: Week 5 Announcements
week: 5
date: 2021-3-7
---

1. The fourth week's labs and lectures have been released! You can view them in the schedule below. Lab 4 will be due on **Saturday, 3/13.**
1. **(For registered students)** If you feel that you'll need more time to complete labs, or have more than 2 late labs, [fill out this form](https://docs.google.com/forms/d/e/1FAIpQLSdyiHHotB8fQT2FoucwYqAGq3DkZ6rK4-0zUBMtBKGostob2w/viewform).
1. **Lab 3 solutions have been released!** You can access them in the schedule below. At this time they are only available to registered students and auditors, though we may release them to a wider audience at a future date.
1. As usual, live lab will take place at [ocf.io/decalzoom](https://ocf.io/decalzoom)-- Tuesday 8pm for beginner, Thursday 8pm for advanced.
1. If you'd like support of any kind, or would like to chat with other students, [#decal-general](https://ocf.io/slack) is always open!


text:
---
layout: elevenses

title: "Elevenses #12"
date: 2017-11-15 08:00:00
tags: [elevenses]
comments: false
cover_image: elevenses.jpg

excerpt: "Random links from the internet ..."

author:
  name: fJ
  twitter: toepoke_co_uk
  gplus: toepokeCoUk
  bio: Founder, Developer, tea maker
  image: fj.png
---

Feel free to [suggest an article yourself](https://github.com/toepoke/toepoke.github.io/issues).  Naturally we'll include your github handle as credit.

## Opinion
* [Stop using ngrx/effects for that](https://medium.com/@m3po22/stop-using-ngrx-effects-for-that-a6ccfe186399)

## Development
* [Infer where your users have been - cheeky :-)](https://github.com/KrauseFx/detect.location/blob/master/README.md)
* [Codelabs by Google - how to do little bits and bobs ..](https://codelabs.developers.google.com/)
* [Sessions from the Chrome WebSummit on 23rd/24th October - lots on PWA](https://www.youtube.com/playlist?list=PLNYkxOF6rcICUD5nBfRdAR6Fveosnqa5m&app=desktop)
* [.NET ... in a browser!?!?](https://github.com/SteveSanderson/Blazor)
* [Stylable - CSS framework for components](https://stylable.io/)

## DDD North
I went to DDD North this year in Bradford - here are the slides I've managed to gather together:
* [Async - the good, the bad and the ugly](https://speakerdeck.com/slang25/async-in-c-number-the-good-the-bad-and-the-ugly)
* [Story mapping for beginners](https://colinmackay.scot/2017/10/15/ddd-north-2017-storymapping-slide-deck)
* [.NET JavaScript Services Demo](https://github.com/initialspark/prog-net-javascriptservices)
* [CosmoDb lightning talk](https://www.youtube.com/watch?v=IQ1yKZ6Kmb0)
* [Spot the difference: automating visual regression testing (slides)](https://www.slideshare.net/vivrichards/spot-the-difference-automating-visual-regression-testing/1) [(code)](https://github.com/vivrichards600/AutomatedVisualTesting)
* [CQRS session (slides)](https://onedrive.live.com/?authkey=%21AOXJKDFJedE0HyY&cid=76F6435FF82E813B&id=76F6435FF82E813B%21378678&parId=76F6435FF82E813B%21378665&o=OneUp )
* [The Power of Mentoring (slides)](https://www.slideshare.net/secret/9MbOc51EzSTP8N)
* [What is the point of Microsoft (slides)](https://github.com/westleyl/DDDNorth2017)

## DotNet Core
* [110 samples for aspnetcore fundamentals (updated daily)](https://github.com/dodyg/practical-aspnetcore/blob/master/README.md)
* [.NET Core 2.0 and ASP.NET 2.0 Core are Here](https://weblog.west-wind.com/posts/2017/Oct/22/NET-Core-20-and-ASPNET-20-Core-are-finally-here)
* [Sharing Configuration in ASP.NET Core SPA Scenarios](https://blogs.msdn.microsoft.com/webdev/2017/10/27/sharing-configuration-in-asp-net-core-spa-scenarios/) - *(aka How do I configure my Angular app from the server for development, testing and production)*
* *Love this* [ASP.NET Core Authorization Lab](https://github.com/blowdart/AspNetAuthorizationWorkshop/tree/master) [and a WIP version for ASP.NET Core 2.0](https://github.com/blowdart/AspNetAuthorizationWorkshop/tree/core2)
* [Keeping development secrets, secret](https://www.red-gate.com/simple-talk/dotnet/asp-net/secrets-asp-net-core-user-secrets/)
* [Top 13 ASP.NET Core Features You Need to Know](https://stackify.com/asp-net-core-features/)
* [Shared Localisation in ASP.NET Core MVC](https://damienbod.com/2017/11/01/shared-localization-in-asp-net-core-mvc/)

## SQL
* [Securing SQL Databases on Azure](https://docs.microsoft.com/en-us/azure/sql-database/sql-database-security-tutorial)
* [SQL Server UPSERT Patterns and Antipatterns](http://michaeljswart.com/2017/07/sql-server-upsert-patterns-and-antipatterns/)
* [Generate an HTML view from a SQL execution plan](https://github.com/JustinPealing/html-query-plan/blob/master/README.md)
* [DBA Tools - Powershell and SQL holding hands ...](https://dbatools.io/)

## Accessibility
* [Alt-texts: The Ultimate Guide](https://axesslab.com/alt-texts)

## JavaScript / Angular2+ / Ionic2
* [Angular 5 (yes, 5!) released](https://blog.angular.io/version-5-0-0-of-angular-now-available-37e414935ced)
* [Nrwl Nx — An open source toolkit for enterprise Angular applications](https://blog.nrwl.io/nrwl-nx-an-open-source-toolkit-for-enterprise-angular-applications-38698e94d65)
* [6 Great Uses of the Spread Operator](https://davidwalsh.name/spread-operator)
* [Smoothie Charts - chart library for streaming real-time data](http://smoothiecharts.org/)

## TypeScript
* [TypeScript: Partial keyword](https://netbasal.com/getting-to-know-the-partial-type-in-typescript-ecfcfbc87cb6) *file under "didn't know that"!* - Note there's a whole series of TypeScript articles at the bottom which are work checking out.

## Libraries / Plugins / Components
* [Web Share API is here ...](https://codeburst.io/the-web-share-api-is-here-cb651d84eccd)
* [GeoIP - get more country code info from an IP address](https://betalist.com/startups/user-country-api)

## UI & UX
* [Material Palette](https://www.materialpalette.com/) - *(Pick main two colours, and download the theme)*
* [Little design tips](https://twitter.com/i/moments/880688233641848832), by [@steveschoger](https://twitter.com/steveschoger)
* [36 useful resources for UI and UX designers](https://dev.to/iriskatastic/36-useful-resources-for-ui-and-ux-designers-61h)
* [Brand Colours](https://brandcolors.net/)
* [Good UI](http://www.goodui.org/) - *(UI tips and tricks)*
* [Mobile Patterns](https://pttrns.com/) - *(ironically the mobile view is somewhat lacking!)*
* [A couple of free icon sets](https://twitter.com/Real_CSS_Tricks/status/929000703384625152)
* [Bootstap 12 column grid in 5 lines of CSS #grid](https://twitter.com/wesbos/status/928731575684091904)

## Tools
* [Bootstrap cheatsheet](https://hackerthemes.com/bootstrap-cheatsheet/#alert-success) *nice!*
* [Using VS Code as an HTTP REST Client](http://josephwoodward.co.uk/2017/10/rest-%20client-for-vs-Code-an-elegant-alternative-postman)
* [Prettier - code reformatter](https://github.com/prettier/prettier)
* [Google’s "Poly" is a cross-platform 3D library for VR/AR — and it’s free](https://thenextweb.com/google/2017/11/01/googles-poly-is-a-cross-platform-3d-library-for-vrar-and-its-free/)
* [Blisk - the browser for web developers](https://blisk.io) - *Some good stuff here, but be warned, it's a paid for product after the 30 day trial*

## Security
* [Trusted Platform Module ... can't be trusted ...](https://nakedsecurity.sophos.com/2017/10/18/encryption-chip-flaw-afflicts-huge-number-of-computers/)
* [Insight into using Azure Key Vaults](https://aspnetmonsters.com/2017/10/monsters-weekly/ep107/)
* [The 6 Step Happy Path To https](https://www.troyhunt.com/the-6-step-happy-path-to-https/)
* [Google's "Advanced Protection" locks down accounts like never before](https://www.wired.com/story/google-advanced-protection-locks-down-accounts/)
* [Sonar - Lint the web](https://blogs.windows.com/msedgedev/2017/10/25/introducing-sonar-site-scanner/#cZuVCb6sYhwEEt9p.97/) *(early days)*
* [Find and fix vulnerabilities in open source libraries you use](https://snyk.io/), see also [Sonar](https://sonarwhal.com/)
* [10 Things You Should Know about Tokens](https://auth0.com/blog/ten-things-you-should-know-about-tokens-and-cookies/)
* [Common Weakness Enumeration](https://cwe.mitre.org) - Vulnerability database

## Misc
* [Hacker News readers as Progressive Web Apps](https://hnpwa.com/)
* [Bye, bye Chrome Apps ...](https://blog.chromium.org/2016/08/from-chrome-apps-to-web.html)

## Social / Fun / Cool
* [Google Maps ... IN SPACE!](https://www.google.com/maps/space/)
* [How to Build a Kubernetes Cluster with ARM Raspberry Pi then run .NET Core on OpenFaas](https://www.hanselman.com/blog/HowToBuildAKubernetesClusterWithARMRaspberryPiThenRunNETCoreOnOpenFaas.aspx)
* [Convert JavaScript into an SVG flowchart](https://github.com/Bogdan-Lyashenko/js-code-to-svg-flowchart) *- dunno why, it's just cool :)*
* [Cloudflare uses LavaLamps for randomness!](https://youtu.be/1cUUfMeOijg)
* [Your own Jarvis, at home](https://duo.computer/index.html)

## Codepens
* [Funky animation](https://codepen.io/airnan/pen/qVEdxb)
* [Monopoly board](https://codepen.io/johnnycopes/pen/yzQyMp)
* [Teaching transform-origin](https://codepen.io/sdras/full/dVwaZG)
* [Playing with MS Emotion API](https://codepen.io/sdras/full/dZOdpv)
* [Dynamically Generated Alt Text](https://s.codepen.io/sdras/debug/4437473c764a1d553691005a0f40a145) *(sadly the quota has been maxed out at the moment)*


text:
## Restaurant Finder in MTL Downtown

Work in progress ...

Screenshot

![screenshot](scr.png)

### Tech stack

* [GoogleMap](https://developers.google.com/maps/documentation/javascript/tutorial)
* [Yelp API v2](https://www.yelp.ca/developers/documentation/v2/overview)
* [OAuth 1.0a signature generator for node and the browser](https://github.com/bettiolo/oauth-signature-js)

repository: yhagio/mtl-resto

repo_name: yhagio/mtl-resto