###Sketch trial non stop
Open hosts files:
$ open /private/etc/hosts
Edit the file adding:
127.0.0.1 backend.bohemiancoding.com
127.0.0.1 bohemiancoding.sketch.analytics.s3-website-us-east-1.amazonaws.com
| /* | |
| * Copyright (C) 2011 Micah Hainline | |
| * Copyright (C) 2012 Triposo | |
| * Copyright (C) 2013 Paul Imhoff | |
| * Copyright (C) 2014 Shahin Yousefi | |
| * Copyright (C) 2015 Stepan Goncharov | |
| * | |
| * 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 |
| // We need to use reflection... | |
| // yes, I know, it sucks! | |
| @Override | |
| public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { | |
| super.onCreateOptionsMenu(menu, inflater); | |
| inflater.inflate(R.menu.menu_with_search, menu); | |
| SearchView searchView = (SearchView) menu.findItem(R.id.action_search).getActionView(); | |
| final EditText editTextView = (EditText) searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text); |
#How I built an audio book reader for my nearly blind grandfather
Last year, when visiting my family back home in Holland, I also stopped by my grand-parents. My grand-father, now 93 years old, had always been a very active man. However, during the presceding couple of months, he'd gone almost completely blind and now spent his days sitting in a chair. Trying to think of something for him to do, I suggested he try out audio books. After finally convincing him -- he said audio books were for sad old people -- that listening to a well performed recording is actually a wonderful experience, I realized the problem of this idea.
####The problem with audio devices and the newly blind. After my first impulse to jump up and go buy him an
(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.
| package main | |
| import "strconv" | |
| import "fmt" | |
| type Color string | |
| type Make string | |
| type Model string | |
| const ( |
| + (NSValueTransformer *)publictionDateJSONTransformer { | |
| return [MTLValueTransformer transformerUsingForwardBlock:^(NSNumber *timestamp, BOOL *success, NSError **error){ | |
| return [NSDate dateWithTimeIntervalSince1970:[timestamp doubleValue]]; | |
| } reverseBlock:^(NSDate *date, BOOL *success, NSError **error) { | |
| return [NSNumber numberWithDouble:[date timeIntervalSince1970]]; | |
| }]; | |
| } |
This article has been given a more permanent home on my blog. Also, since it was first written, the development of the Promises/A+ specification has made the original emphasis on Promises/A seem somewhat outdated.
Promises are a software abstraction that makes working with asynchronous operations much more pleasant. In the most basic definition, your code will move from continuation-passing style:
getTweetsFor("domenic", function (err, results) {
// the rest of your code goes here.| //app.js Socket IO Test | |
| var app = require('express').createServer(), | |
| redis = require('socket.io/node_modules/redis'), | |
| io = require('socket.io').listen(app); | |
| var pub = redis.createClient(port, "url"); | |
| var sub = redis.createClient(port, "url"); | |
| var store = redis.createClient(port, "url"); | |
| pub.auth('pass', function(){console.log("adentro! pub")}); | |
| sub.auth('pass', function(){console.log("adentro! sub")}); |