FridayHug.com http://fridayhug.com
The Smallest Rails App http://thesmallestrailsapp.com
%w(action_controller/railtie coderay).each &method(:require)| # This is the code from my 'There is No Such Thing as Metaprogramming' talk, | |
| # which premiered at the Arlington, VA Ruby Users Group on Feb 22nd. | |
| # Without the deliver and walk-through to the solution below this example | |
| # will be missing quite an important bit of content (mainly the tracking of | |
| # 'self' while developing the solution, but it still a useful read. | |
| # Here is the Toddler with no metajuju. Note that the developer, as well as | |
| # the code, is completely unuaware of the interpreter. A developer with a | |
| # background in compiled languages would be comfortable looking at this. |
| Latency Comparison Numbers (~2012) | |
| ---------------------------------- | |
| L1 cache reference 0.5 ns | |
| Branch mispredict 5 ns | |
| L2 cache reference 7 ns 14x L1 cache | |
| Mutex lock/unlock 25 ns | |
| Main memory reference 100 ns 20x L2 cache, 200x L1 cache | |
| Compress 1K bytes with Zippy 3,000 ns 3 us | |
| Send 1K bytes over 1 Gbps network 10,000 ns 10 us | |
| Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD |
| /** | |
| * Setup Module with `highlight` filter | |
| */ | |
| var JekyllApp = angular.module('JekyllApp', [], function ($routeProvider, $locationProvider) { | |
| $locationProvider.html5Mode(false); | |
| }); | |
| JekyllApp.filter('highlight', function () { | |
| return function (text, filter) { |
FridayHug.com http://fridayhug.com
The Smallest Rails App http://thesmallestrailsapp.com
%w(action_controller/railtie coderay).each &method(:require)| angular.module('bDatepicker', []). | |
| directive('bDatepicker', function(){ | |
| return { | |
| require: '?ngModel', | |
| restrict: 'A', | |
| link: function($scope, element, attrs, controller) { | |
| var updateModel; | |
| updateModel = function(ev) { | |
| element.datepicker('hide'); | |
| element.blur(); |
| # Terminal Progress Indicators. Four examples are included: percentage, | |
| # spinner, progress bar, and combined. This script has been tested on | |
| # Mac OS X 10.8 with Ruby 1.8.7, 1.9.1, 1.9.2, and 1.9.3 | |
| class Spinner | |
| include Enumerable | |
| def each | |
| loop do | |
| yield '|' | |
| yield '/' |
| // Source: https://groups.google.com/forum/#!topic/angular/hVrkvaHGOfc | |
| // jsFiddle: http://jsfiddle.net/pkozlowski_opensource/PxdSP/14/ | |
| // author: Pawel Kozlowski | |
| var myApp = angular.module('myApp', []); | |
| //service style, probably the simplest one | |
| myApp.service('helloWorldFromService', function() { | |
| this.sayHello = function() { | |
| return "Hello, World!" |
| class AccountsController < ApplicationController | |
| def update | |
| @account = Account.find(params[:id]) | |
| respond_to do |format| | |
| if @account.update_attributes(account_params) | |
| format.html { redirect_to @account, notice: 'Account was successfully updated.' } | |
| else | |
| format.html { render action: "edit" } | |
| end |
| #define MAX_STEPS 100000 | |
| #define NO_SOLUTION -1 | |
| int arrayJump(int *A, int size) { | |
| int *p = A, steps = 0; | |
| while (++steps < MAX_STEPS && A <= (p+=*p) && p < A+size); | |
| return steps >= MAX_STEPS ? NO_SOLUTION : steps; | |
| } |
| require 'rspec' | |
| describe "Behaviour" do | |
| it "should pass" do | |
| true.should eq true | |
| end | |
| it "should fail" do | |
| true.should eq false | |
| end |