This unusual clock in polar coordinates is based on a Flash screensaver by pixelbreaker. See also the earlier Protovis version.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ssfsdfd |
For a while now, I've been silently bothered by the popularity of controllerAs syntax, how often I hear it recommended, and the reasons it's recommended. It's taken me the better part of two years to take the time to think about and write out why it goes against my gut so strongly, but I think I've figured it out.
It's not the "as" pattern itself. I love having templates that name their dependencies inline. It lowers the cognitive overhead required when reasoning about what your template is doing and displaying, and you don't have to hunt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
app.directive('defaultValue', function() { | |
/** | |
* @ngdoc directive | |
* @name App.directive:defaultValue | |
* @param {Expression} defaultValue An angular expression for the default | |
* value of the model | |
* @requires ngModel | |
* @description the `default-value` directive allows you to set some | |
* dynamic default value for anything with an `ngModel`. The model value |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
angular.module('app') | |
.directive('withService', function($injector) { | |
/** | |
* @ngdoc directive | |
* @name app.directive:withService | |
* @param {String} The name of the service to inject. May be | |
* an expression "X as Y" in which case the X service will be exposed by | |
* the name Y. | |
* @description Injects a service into a new scope the DOM element. | |
* @scope |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I0815 11:32:41.546165 26073 genericapiserver.go:598] Will report 192.168.16.12 as public IP address. | |
I0815 11:32:41.547146 26073 reflector.go:200] Starting reflector *api.LimitRange (0) from k8s.io/kubernetes/plugin/pkg/admission/limitranger/admission.go:154 | |
I0815 11:32:41.547197 26073 reflector.go:211] Starting reflector *api.ServiceAccount (0) from k8s.io/kubernetes/plugin/pkg/admission/serviceaccount/admission.go:103 | |
I0815 11:32:41.547204 26073 reflector.go:211] Starting reflector *api.Secret (0) from k8s.io/kubernetes/plugin/pkg/admission/serviceaccount/admission.go:119 | |
I0815 11:32:41.547261 26073 server.go:287] Initalizing cache sizes based on 0MB limit | |
I0815 11:32:41.547377 26073 reflector.go:249] Listing and watching *api.ServiceAccount from k8s.io/kubernetes/plugin/pkg/admission/serviceaccount/admission.go:103 | |
I0815 11:32:41.547439 26073 reflector.go:249] Listing and watching *api.LimitRange from k8s.io/kubernetes/plugin/pkg/admission/limitranger/admission.go:154 | |
I0815 11:32:41.547445 |
TL;DR: Implement the error interface with as much contextual and relevant information as you can in a struct. Then use type switching, not equality or string parsing, to inspect the error.
if err != nil {
if !strings.Contains(err.Error(), "reader returned negative count from Read") {
//Do something
}
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I0926 20:16:31.820147 7 genericapiserver.go:630] Will report 192.168.16.12 as public IP address. | |
I0926 20:16:31.820858 7 reflector.go:200] Starting reflector *api.LimitRange (0) from k8s.io/kubernetes/plugin/pkg/admission/limitranger/admission.go:154 | |
I0926 20:16:31.820998 7 server.go:297] Initalizing cache sizes based on 0MB limit | |
I0926 20:16:31.821012 7 genericapiserver.go:301] Setting GenericAPIServer service IP to "10.254.0.1" (read-write). | |
I0926 20:16:31.821059 7 reflector.go:249] Listing and watching *api.LimitRange from k8s.io/kubernetes/plugin/pkg/admission/limitranger/admission.go:154 | |
I0926 20:16:31.821086 7 reflector.go:211] Starting reflector *api.ResourceQuota (0) from k8s.io/kubernetes/plugin/pkg/admission/resourcequota/resource_access.go:83 | |
I0926 20:16:31.821124 7 reflector.go:249] Listing and watching *api.ResourceQuota from k8s.io/kubernetes/plugin/pkg/admission/resourcequota/resource_access.go:83 | |
E0926 20:16:31.821513 7 reflector.go:203] k8s.io/k |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
image: docker.mydomain.com/build/kube-go-make | |
variables: | |
DOCKER_TAG: docker.mydomain.com/myapp/home:$CI_COMMIT_REF_SLUG | |
DOCKER_HOST: tcp://localhost:2375 | |
DOCKER_DRIVER: overlay | |
PROD_RSYNC_HOST: myprodserver.com | |
DOMAIN: mydomain.com | |
CHART_DIR: chart |
OlderNewer