Trouble reproducing a bug? Run this checklist to make sure you're reproducing user's environment as closely as possible:
Device
- iOS version?
- iPad/iPhone?
- CPU architecture?
- Screen size? Orientation? Slide-over/Split View?
iOS settings
FROM ubuntu | |
MAINTAINER Maz Jaleel <mazjaleel@gmail.com> | |
# Install necessary tools to build Poco | |
RUN apt-get update && apt-get install -yq \ | |
unzip wget build-essential cmake \ | |
openssl libssl-dev \ | |
unixODBC unixODBC-dev odbc-postgresql |
Trouble reproducing a bug? Run this checklist to make sure you're reproducing user's environment as closely as possible:
Device
iOS settings
config :my_app, :twitter_api, | |
client: Twitter.SandboxClient |
#!/usr/bin/env bash | |
ENV_PATH="$(dirname "$(dirname "$(which pip)")")" | |
SYSTEM_VIRTUALENV="$(which -a virtualenv|tail -1)" | |
BAD_ENV_PATHS="/usr/local" | |
echo "Ensure the root of the broken virtualenv:" | |
echo " $ENV_PATH" |
1Password 5.3 for OSX, 5.2 for iOS, and 4.1.0.538 for Windows support OTP. I've been using Authy for a while now, but the fact is, I haven't really been using 2FA for some time. As mentioned by 1Password in a recent blog post, having the OTP generator and password on the same device is very much not 2FA. It's just an expiring OTP, which can help, but let's not kid ourselves too much.
With that out of the way. One of the things that was interesting to me was moving my OTP out of Authy and into 1Password. I like the control I get with 1Password, but I didn't want to have to reset all my OTP right away, that would suck. So, I got to dissecting the Authy Chrome App to see what I could do.
Run the Authy Chrome app and make sure it's unlocked.
Now, enable Developer mode in Chrome. We'll need this to inspect the background application that stores al
#include <Poco/Net/HTTPRequest.h> | |
#include <Poco/Net/HTTPResponse.h> | |
#include <Poco/Net/HTTPClientSession.h> | |
#include <Poco/StreamCopier.h> | |
#include <Poco/Net/HTTPCredentials.h> | |
#include <sstream> | |
#include <iostream> | |
using namespace Poco::Net; |
import Foundation | |
struct Stream { | |
let string: NSString | |
var position: Int | |
var matchingRange: NSRange { | |
return NSRange(location: position, length: string.length - position) | |
} | |
} |
// | |
// AppDelegate.swift | |
// Namespaced | |
// | |
// Created by Mika Jauhonen on 2014-09-18. | |
// Copyright (c) 2014 Mika Jauhonen. All rights reserved. | |
// | |
import UIKit |
<img src="http://img.shields.io/badge/Operator_overload-guilty-red.svg" height="20" alt="Uses operator overloads"/> |
(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.