This setup will allow you to precompile assets locally and keep them separated depending on the environment. To precompile assets locally run RAILS_ENV=production COMPILE_ASSETS=1 rake assets:precompile. Using an ENV var like this removes the need for having therubyracer or some other javascript engine on your server instances since they aren't actually running the precompilation task.
The attack detailed below has stopped (for the time being) and almost all network access for almost all customers have been restored. We're keeping this post and the timeline intact for posterity. Unless the attack resumes, we'll post a complete postmortem within 48 hours (so before Wednesday, March 26 at 11:00am central time).
Criminals have laid siege to our networks using what's called a distributed denial-of-service attack (DDoS) starting at 8:46 central time, March 24 2014. The goal is to make Basecamp, and the rest of our services, unavailable by flooding the network with bogus requests, so nothing legitimate can come through. This attack was launched together with a blackmail attempt that sought to have us pay to avoid this assault.
Note that this attack targets the network link between our servers and the internet. All the data is safe and sound, but nobody is able to get to it as long as the attack is being successfully executed. This is like a bunch of people
| require 'sidekiq' | |
| class LazyWorker | |
| include Sidekiq::Worker | |
| def perform | |
| # nothing | |
| end | |
| end | |
| Sidekiq.configure_client do |config| |
| # config/routes.rb | |
| resources :documents do | |
| scope module: 'documents' do | |
| resources :versions do | |
| post :restore, on: :member | |
| end | |
| resource :lock | |
| end | |
| end |
| # Install Git needed for Git based gems | |
| packages: | |
| yum: | |
| git: [] | |
| /* | |
| Swift Programming Language Guide | |
| "A Swift Tour" Solutions | |
| https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/GuidedTour.html#//apple_ref/doc/uid/TP40014097-CH2-XID_1 | |
| These are the solutions to all the "experiments" in the pre-release Swift Programming Guide | |
| (released on the same day Apple announced Swift). A couple of things worth noting: | |
| 1. Swift syntax, e.g. array declarations, has changed since I releasd these. So this code will | |
| probably cause some errors when you paste it into a playground. Should be easy enough to fix |
| import CoreLocation | |
| extension CLLocationCoordinate2D: Equatable {} | |
| public func ==(lhs: CLLocationCoordinate2D, rhs: CLLocationCoordinate2D) -> Bool { | |
| return lhs.latitude == rhs.latitude && lhs.longitude == rhs.longitude | |
| } |
| apt-get -y install build-essential m4 libncurses5-dev libssh-dev unixodbc-dev libgmp3-dev libwxgtk2.8-dev libglu1-mesa-dev fop xsltproc default-jdk | |
| apt-get -y install make | |
| apt-get -y install libncurses5-dev | |
| mkdir -p /src/erlang | |
| cd /src/erlang | |
| wget http://www.erlang.org/download/otp_src_17.0.tar.gz | |
| tar -xvzf otp_src_17.0.tar.gz | |
| chmod -R 777 otp_src_17.0 | |
| cd otp_src_17.0 | |
| ./configure |
June 1, 2014 – September 15, 2014
Percentage of total visits for sessions among the top 100 pages on ASCIIwwdc.
- Vast majority of views for 2014 sessions, as might be expected
- Top 6 most-watched session all involve view controllers & Interface Builder (accounting for 1/4 of total traffic)
- "What's New in X" sessions are extremely popular
| public struct RandomNumberGenerator: SequenceType { | |
| let range: Range<Int> | |
| let count: Int | |
| public init(range: Range<Int>, count: Int) { | |
| self.range = range | |
| self.count = count | |
| } | |
| public func generate() -> GeneratorOf<Int> { |