Download Egghead.io videos using Lynx Browser and youtube-dl. This method will only work for videos that do not require a pro account.
You need a Unix/Linux box with Lynx console browser and Youtube-dl installed.
// Retry 5 times with waiting for 2 seconds | |
function* updateApi(data) { | |
for(let i = 0; i < 5; i++) { | |
try { | |
const apiResponse = yield call(apiRequest, { data }); | |
return apiResponse; | |
} catch(err) { | |
if(i < 4) { | |
yield call(delay, 2000); | |
} |
root# apt-get update | |
root# apt-get upgrade | |
// dependencies for Ruby | |
root# apt-get install -y git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev \ | |
libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev \ | |
libpcre3-dev unzip | |
// Node.js v7 | |
root# curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash - |
import React from 'react' | |
import { connect } from 'react-redux' | |
import { redirect as redirectAction } from 'src/redux/auth/action'; | |
class Index extends React.Component { | |
static propTypes = { | |
redirect: React.PropTypes.func.isRequired, | |
}; |
#!/usr/bin/env bash | |
# https://developers.supportbee.com/blog/setting-up-cucumber-to-run-with-Chrome-on-Linux/ | |
# https://gist.github.com/curtismcmullan/7be1a8c1c841a9d8db2c | |
# https://stackoverflow.com/questions/10792403/how-do-i-get-chrome-working-with-selenium-using-php-webdriver | |
# https://stackoverflow.com/questions/26133486/how-to-specify-binary-path-for-remote-chromedriver-in-codeception | |
# https://stackoverflow.com/questions/40262682/how-to-run-selenium-3-x-with-chrome-driver-through-terminal | |
# https://askubuntu.com/questions/760085/how-do-you-install-google-chrome-on-ubuntu-16-04 | |
# Versions | |
CHROME_DRIVER_VERSION=`curl -sS https://chromedriver.storage.googleapis.com/LATEST_RELEASE` |
// 1. Define a state variable for showing/hiding the action-button | |
state = { | |
isActionButtonVisible: true | |
} | |
// 2. Define a variable that will keep track of the current scroll position | |
_listViewOffset = 0 | |
// 3. Add an onScroll listener to your listview/scrollview | |
<ListView |
#ruby 2.3.1 recomended | |
class Graph | |
attr_reader :graph, :nodes, :previous, :distance #getter methods | |
INFINITY = 1 << 64 | |
def initialize | |
@graph = {} # the graph // {node => { edge1 => weight, edge2 => weight}, node2 => ... | |
@nodes = Array.new | |
end |
<<APP>> change this variables |