(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
i386 : iPhone Simulator | |
x86_64 : iPhone Simulator | |
arm64 : iPhone Simulator | |
iPhone1,1 : iPhone | |
iPhone1,2 : iPhone 3G | |
iPhone2,1 : iPhone 3GS | |
iPhone3,1 : iPhone 4 | |
iPhone3,2 : iPhone 4 GSM Rev A | |
iPhone3,3 : iPhone 4 CDMA | |
iPhone4,1 : iPhone 4S |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
// Usage: | |
// Copy and paste all of this into a debug console window of the "Who is Hiring?" comment thread | |
// then use as follows: | |
// | |
// query(term | [term, term, ...], term | [term, term, ...], ...) | |
// | |
// When arguments are in an array then that means an "or" and when they are seperate that means "and" | |
// | |
// Term is of the format: | |
// ((-)text/RegExp) ( '-' means negation ) |
<!DOCTYPE html> | |
<html> | |
<head> | |
<title>Sine Wave</title> | |
<script type="text/javascript"> | |
function showAxes(ctx,axes) { | |
var width = ctx.canvas.width; | |
var height = ctx.canvas.height; | |
var xMin = 0; |
# you can even provide different app identifiers, Apple IDs and team names per lane: | |
# More information: https://github.com/fastlane/fastlane/blob/master/docs/Appfile.md | |
app_identifier ENV["APP_IDENTIFIER"] # The bundle identifier of your app | |
# You will have to set APP_IDENTIFIER into your .env files | |
apple_id ENV["APPLE_ID"] # Your Apple email address | |
team_id ENV["TEAM_ID"] # Developer Portal Team ID |
brew doctor
(Allen checks if he installed brew correctly)sudo chgrp -R brew /usr/local
(Change the group of homebrew installation directory)sudo chmod -R g+w /usr/local
(Allow group members to write inside this directory)sudo chgrp -R brew /Library/Caches/Homebrew
(Change the group of homebrew cache directory)sudo chmod -R g+w /Library/Caches/Homebrew
(Allow group members to write inside this directory)sudo chgrp -R brew /opt
(Change the group of the cask installation directory)sudo chmod -R g+w /opt
(Allow group members to write inside this directory)brew doctor
(Stan checks if he can use homebrew)Not all random values are created equal - for security-related code, you need a specific kind of random value.
A summary of this article, if you don't want to read the entire thing:
Math.random()
. There are extremely few cases where Math.random()
is the right answer. Don't use it, unless you've read this entire article, and determined that it's necessary for your case.crypto.getRandomBytes
directly. While it's a CSPRNG, it's easy to bias the result when 'transforming' it, such that the output becomes more predictable.uuid
, specifically the uuid.v4()
method. Avoid node-uuid
- it's not the same package, and doesn't produce reliably secure random values.random-number-csprng
.You should seriously consider reading the entire article, though - it's
#!/bin/sh | |
# | |
# Configuration | |
# | |
# sass source | |
SASS_SOURCE_PATH="scss" | |
# sass options |
import sys | |
from PIL import Image | |
def calculate_brightness(image): | |
greyscale_image = image.convert('L') | |
histogram = greyscale_image.histogram() | |
pixels = sum(histogram) | |
brightness = scale = len(histogram) |
import hoistStatics from 'hoist-non-react-statics'; | |
import React from 'react'; | |
/** | |
* Allows two animation frames to complete to allow other components to update | |
* and re-render before mounting and rendering an expensive `WrappedComponent`. | |
*/ | |
export default function deferComponentRender(WrappedComponent) { | |
class DeferredRenderWrapper extends React.Component { | |
constructor(props, context) { |