APIs should be consistent, but it is difficult to do this when returning a JSON response along side the HTML interface. Here I show how to add a versioned, RESTful API. The version can be determined from either the URL or HTTP headers.
Ruby
-
Most Topular Stories
-
#350 REST API Versioning
RailsCasts16 May 2012 | 2:00 am -
BOSH: What, How, When
Dr Nic16 May 2012 | 12:38 amI’m still very bullish on BOSH. I’ve been experimenting with it internally at work, looking to see how it could duplicate or improve upon our current infrastructure, automation and release management. I’ve also watched the commits that have come out in the last month and I’m excited by the project velocity and direction. A few weeks ago I was fortunate to be invited to LinkedIn to the SV Forum group to give an introduction to BOSH. What it is, why it was created, how to use it and when you might use it. This talk also includes cutaways to Vadim Spivak from the Cloud… -
The Rails Dilemma
Obie Fernandez14 May 2012 | 7:31 pmThis is a guest post by Rusty Zarse CTO of Search Discovery, spurred by a series of email conversations that we had regarding the difficulty of finding experienced Rails talent. Rusty leads the Atlanta iOS Developers meetup and is one of the better known technologists in our city. Where'd Every RoR Go? “Rails is hot,” ain’t no headline today. Five years ago, Ruby on Rails was an underdog, the somebody to watch, the next big thing. It's not news that the Rails community continues evolving and growing while its members do a good job protecting the integrity and quality of the platform. -
Andrei Apologized
Obie Fernandez20 Mar 2012 | 12:38 amSince I got a sincere-sounding apology from Andrei, I have un-published my last blog post and hope this will be the end of the matter. Thanks to everyone that had my back about the way I handled it, and also those that gave me advice and support about it. -
SheetMapper: Ruby Object Mapper for Google Spreadsheets
RubyFlow16 May 2012 | 5:19 amJust released version 0.0.1 of SheetMapper which supports mapping google spreadsheet rows into ruby objects. The use case is for easily parsing and traversing spreadsheet data in which rows can be represented as objects.
-
RubyFlow
-
SheetMapper: Ruby Object Mapper for Google Spreadsheets
16 May 2012 | 5:19 amJust released version 0.0.1 of SheetMapper which supports mapping google spreadsheet rows into ruby objects. The use case is for easily parsing and traversing spreadsheet data in which rows can be represented as objects. -
MaxMind support for Geocoder gem
16 May 2012 | 4:56 amWe've added Maxmind support to geocoder! You can see the pull-request and more details here : http://www.tech-angels.com/post/23158313900/maxmind-support-for-geocoder-gem -
Logbook - log your memories onto virtual logbooks made of Gists
15 May 2012 | 7:59 amJust pushed logbook. A personal CLI app that helps you log your memories onto virtual logbooks made of Gists. -
All Presentation Software is Broken
14 May 2012 | 2:21 pmA look at the numbers behind RailsConf presentation on "Making the Web Faster", and the web as a (future) presentation delivery platform. -
FigLeaf gem now available
14 May 2012 | 1:10 pmThe FigLeaf library from my book "Objects on Rails" is now available as a RubyGem. FigLeaf helps you control the interface surface area of classes derived from e.g. ActiveRecord, by selectively hiding inherited methods from other objects.
-
Ruby Inside
-
The Mega April 2012 Ruby and Rails News Roundup
27 Apr 2012 | 9:45 amWelcome to April 2012's bumper pick'n'mix of Ruby and Rails news and releases, fresh from the pages of Ruby Weekly. Highlights include: Matz's new Ruby implementation, MobiRuby (Ruby for iOS), Passenger 3.0.12, Ruby 1.9.3-p194, TorqueBox 2.0, Adhearsion 2.0, and Dr Nic's App Scrolls. Headlines Ruby 1.9.3-p194 Released A small version bump for Ruby 1.9.3 which includes a security fix for RubyGems (and therefore an updated version) along with oodles of minor tweaks and fixes. MRuby: A Lightweight Ruby Implementation by Matz It's been in the making for a while (remember RiteVM?) but this week… -
The Mega March 2012 Ruby and Rails News and Release Roundup
11 Apr 2012 | 7:17 pmAnd again, a mixture of travel, illness, and exhaustion have prevented me from my weekly updates on here (although Ruby Weekly is still going out on a weekly basis!) so here's a bumper update for all of the top Ruby and Rails news from March 2012. Highlights include: Matz wins a prize, Ruby is approved by the ISO, some awesome jobs, Bundler 1.1, Vagrant 1.0, Rails 3.2.3, Avdi Grimm's Object on Rails book, the Pragmatic Programmers release some more awesome books and, of course, a lot more. Headlines Matz Wins FSF's 2011 Award for the Advancement of Free Software Free Software Foundation… -
The Mega Ruby News and Release Roundup for February 2012
2 Mar 2012 | 9:34 amOops! I forgot to post the weekly Ruby news updates from Ruby Weekly to Ruby Inside in February so.. here's a mega roundup of all that was new in the Ruby and Rails worlds in February 2012. I'll try to keep posting every week from here on - sorry. Highlights include: a new Ruby 1.9.3 release, REE's end of life, Spree 1.0, some Rails 4 news, Devise 2.0, a new private gem hosting service.. and that's just scratching the surface :-) Enjoy! (And don't forget to subscribe to Ruby Weekly if you want to receive something like this every week via e-mail or The Ruby Show if you want it in… -
This Week in Ruby: Rails 3.2, Rails Tutorial, and Why You Should Learn Smalltalk
27 Jan 2012 | 7:35 pmIt's the latest Web-based syndication of Ruby Weekly, the weekly Ruby and Rails e-mail newsletter (which just tipped 11K subscribers). Ruby Weekly now has a 'tips' page where you can submit links for potential inclusion so if you're releasing something or have written a cool post, fill out the form and you may be in Ruby Weekly next week :-) Headlines Rails 3.2 Released DHH has unveiled Rails 3.2! Not quite as big a deal as 3.1 but has a faster development mode, faster route recognition, a tagged logger, and more. With Rails master now aiming at 4.0.0, it seems 3.2 may be the last version of… -
This Week in Ruby: Nominate Your Ruby Heroes, Include/Extend, Ruby on Netbeans, Jekyll-Bootstrap, and more
20 Jan 2012 | 10:32 amWelcome to this week's Web-based syndication of Ruby Weekly, my Ruby e-mail newsletter. Headlines Vote for your 'Ruby Hero' in the Ruby Hero Awards The Ruby Heroes awards run each year and present 6 community nominated 'heroes' with an award at RailsConf. Nominations are now open so go and drop your nomination for the Rubyist whose code has brightened up your life the most in the past year. Heroku Receives InfoWorld's Technology of the Year Award Sorry it's just a press release but it's great to see a company that came up from the Ruby world continue to do well. Congrats to the Heroku team.
-
RailsCasts
-
#350 REST API Versioning
16 May 2012 | 2:00 amAPIs should be consistent, but it is difficult to do this when returning a JSON response along side the HTML interface. Here I show how to add a versioned, RESTful API. The version can be determined from either the URL or HTTP headers. -
#348 The Rails API Gem
9 May 2012 | 2:00 amIt is often asked: Is Rails a good fit if I only need to serve an API? In this episode I show how to use the Rails API gem to create a slimmer Rails application designed to respond with JSON. -
#346 Wizard Forms with Wicked
3 May 2012 | 2:00 amCreating a wizard form can be tricky in Rails. Learn how Wicked can help by turning a controller into a series of multiple steps. -
#344 Queue Classic
24 Apr 2012 | 2:00 amPostgreSQL can act as a worker queue which can replace the need for a separate process to manage the background jobs. Here you will learn how to do this with the queue_classic gem. -
#342 Migrating to PostgreSQL
17 Apr 2012 | 2:00 amPostgres is a feature-packed relational database that every Rails developer should consider using. Here you will learn how to install it, add it to a new application, and transition from an existing SQLite app using the "taps" gem.
-
Dyn
-
Cooking With Kevin: Stories From Dyn’s Corporate Chef
16 May 2012 | 11:02 amHello to all Dyn’ers! I wanted to take this opportunity to introduce myself to all of you. I am Kevin Donahue your new corporate chef. I would first like to say how excited I am to be a part of Dyn and to be able to bring a new aspect to our culture with my food and culinary background. You may be asking: what is that background? I was trained within all aspects of food. I worked in every type of restaurant and with all types of cuisines, including four star resorts, country clubs and trendy cuisines. Recently I was the Executive Chef for XO on Elm in Manchester, which I helped design and… -
Peas, Carrots & Tomatoes: Understanding The Enterprise DNS & Email Spectrum
15 May 2012 | 9:54 amBefore I arrived in New Orleans for the 2012 Midsize Enterprise Summit East, I didn’t know what to expect as we had never been there before. I wondered if my colleagues and I (Director of Strategic Partners Brian Brady, Chief Product Officer Cory von Wallenstein and our Event Coordinator Lindsey Smart) would be able to justify the late nights in the French Quarter. But as the second day of the summit rolled around, I found myself sitting in my room between meetings catching up on email. I was no longer thinking about the summit’s worth. Something else was on my mind. I realized that at… -
How To Access The API Within DynECT 5.0
14 May 2012 | 12:38 pmBob Dylan once sang, “The times…they are a’changin‘”. This is true of many things and Dyn is no exception. If you’ve been a DynECT Managed DNS client the past few years, you may have noticed that your advanced services have changed in the way they are packaged and listed. This is done so that all of the functionality available within our portal is condensed in a more logical and easy to digest format. For example, what used to be called Round Robin Load Balancing is simply Global Server Load Balancing (GSLB) with every IP address in the global pool as it… -
Examining Volunteerism & A Most Precious Public Treasure
11 May 2012 | 2:24 pmRecently, I was asked to volunteer my efforts on behalf of Dyn. The job? Become a phone receptionist for a live auction broadcast for New Hampshire Public Television (NHPTV), taking place at the University of New Hampshire. NHPTV has been the Granite State’s only statewide locally owned and operated TV network for over 50 years, offering award-winning, locally focused programs and the best of PBS for television and online viewing. NHPTV has always been focused on community, education and enriching the lives of all people. Mikel and Kelly model during the auction. The spring auction was… -
The Untold Tales Of Dyn’s Jeremy Hitchcock & Tom Daly
9 May 2012 | 10:55 amHow and when did your career trajectory really take shape? Think long and hard about that question in the context of your career path, current role and overall success. What were you doing when you were a 19-year-old college student? How about 16 and without a driver’s license? My good friends, bosses and business partners CEO Jeremy Hitchcock and CTO Tom Daly were recently awarded the prestigious New Hampshire High Tech Council Entrepreneur of the Year award, recognizing leadership in the NH entrepreneurial ecosystem. Both got to where they are by the tender age of ’round 30…
-
Dr Nic
-
BOSH: What, How, When
16 May 2012 | 12:38 amI’m still very bullish on BOSH. I’ve been experimenting with it internally at work, looking to see how it could duplicate or improve upon our current infrastructure, automation and release management. I’ve also watched the commits that have come out in the last month and I’m excited by the project velocity and direction. A few weeks ago I was fortunate to be invited to LinkedIn to the SV Forum group to give an introduction to BOSH. What it is, why it was created, how to use it and when you might use it. This talk also includes cutaways to Vadim Spivak from the Cloud… -
Creating a BOSH from scratch on AWS
16 Apr 2012 | 6:24 pmA lot of devops projects revolve around managing instances/VMs once they already exist. For example, Chef and Puppet do configuration management of instances once the instances have been created. The “monitoring sucks” work is concerned with monitoring the contents/jobs/processes of instances and the instances themselves. Libraries such as fog and jclouds dedicate themselves to provisioning instances and other cloud resources. BOSH attempts to do something that I haven’t seen in OSS yet. It wants to allow a devops team to describe the entire software stack – from the… -
Instant new Rails applications with the App Scrolls
10 Apr 2012 | 5:01 pmWhen I start a new project I want to start how I plan to finish. If I intend to write integration tests then I want to start them immediately. If I intend to set up continuous integration then I want CI setup immediately. If I intend to deploy the app somewhere then I want to deploy it immediately. If I intend to use some background workers, I want to know that they are setup immediately. I want it all setup as easily as I can generate a new Rails app. They shouldn’t be extra work later. I’ll be busy then. Assuming you want the same simplicity and speed, then let me share with you… -
How to stop killing people with your public speeches
11 Nov 2011 | 6:11 pmLet’s do the math. If you give a speech to 200 people for 30 minutes you are consuming 100 hours of human life. Giving an hour-long talk to a thousand people? That’s six weeks of human life devoted to your talk. *gulp*! Let’s assume 6 weeks of human life is at stake. It is not a loan and you cannot give it back. One hour after you finish speaking, you’ve used up 6 weeks of human life. If you’re bad enough for long enough you kill a whole person. Mathematically, if 1000 people witness your speech and 0 of them change any aspect of their life then you should not… -
Never fear $ in READMEs again
10 Jun 2011 | 10:37 amEver see example shell commands like this and wish you could paste them in? Fear no more. A pastie is at hand. Here’s how to install it: In your `.bash_profile` add the following: Thanks @dwaite and others for `$@` instead of `$0 $1 …`. Related posts:Pastie paradise Summary: click to select Ever tried emailing someone a chunk...Remote Shell with Ruby I wrote Composite Primary Keys and Dr Nic’s Magic Models...
-
Mislav's blog
-
Rails Girls: Ruby on Rails workshops for women
3 May 2012 | 2:00 amPrior to Railsberry in Kraków, I participated in a Rails Girls workshop by helping coach 40+ girls that attended the event in Applicake’s offices. It’s been a fun and rewarding experience for me, and I look forward to where empowering more women with knowledge & skill takes us. Next workshops take place in different cities in Europe, one in Buenos Aires, and there’s rumors of Rails Girls in San Francisco. There’s even a guide how to organize a workshop in your city. -
Railsberry: a look back
3 May 2012 | 2:00 amRailsberry: a look back I was about to write my thoughts about Railsberry in Kraków two weeks ago, but I changed my mind and decided to let their awesome photos speak to you instead. Therefore, I present you few moments from the Railsberry conference—in pictures. Grass field outside the venue for resting Magnificent catering for lunch Vuvuzelas would stop lighning talks that were too long Mayhem after a game of Balloon Hero Tenderlove's Friday hug—with backup José Valim & Josh Kalderimis Atmosphere at the afterparty Me (in red) and the awesome people I love All photos are from… -
Zepto v1.0rc1
9 Apr 2012 | 2:00 amThe big 1.0 of Zepto is approaching fast, so we pushed a v1.0 release candidate. This release also features a shiny new documentation site, which some folks on Twitter already prefer as a reference even if they use jQuery. Zepto is a small library that implements most of jQuery’s functionality in a cleaner manner, targeted for modern browsers and mobile clients. It’s leaner, faster to load, and easier to read the source of (which I definitely recommend if you want to brush up on your JavaScript). -
Anti-capitalism 101
1 Apr 2012 | 2:00 amSteve Klabnik in an essay he adapted from prior work: Servicing men and children at home serves capital: by making housework and reproduction a women’s ‘natural and feminine’ process rather than work, capitalism benefits in the form of free labour. When capital pays husbands they get two workers, not one. Denying domestic labour a wage makes this work invisible, and divides the working class into waged and unwaged at the expense of both. Money is used to generate more money. Not even people at “the top” (i.e. the bosses) are in control of this; money controls them by… -
Dear geek girls: Please come back
27 Mar 2012 | 2:00 amTara Tiger Brown in “Dear Fake Geek Girls: Please Go Away”, currently the most popular article on Forbes (Information for the World’s Business Leaders indeed): Today the word [geek] is the exact opposite of its original meaning; a term once used to inflict social cruelty is now a term of endearment, everyone and their dog self-proclaims themselves as a geek in whatever passing interest they have. The definition of ‘geek’ is so broad now that it is meaningless. There’s a word that originally had derogatory meaning and culture turned it into a positive term. We…
-
Obie Fernandez
-
The Rails Dilemma
14 May 2012 | 7:31 pmThis is a guest post by Rusty Zarse CTO of Search Discovery, spurred by a series of email conversations that we had regarding the difficulty of finding experienced Rails talent. Rusty leads the Atlanta iOS Developers meetup and is one of the better known technologists in our city. Where'd Every RoR Go? “Rails is hot,” ain’t no headline today. Five years ago, Ruby on Rails was an underdog, the somebody to watch, the next big thing. It's not news that the Rails community continues evolving and growing while its members do a good job protecting the integrity and quality of the platform. -
Andrei Apologized
20 Mar 2012 | 12:38 amSince I got a sincere-sounding apology from Andrei, I have un-published my last blog post and hope this will be the end of the matter. Thanks to everyone that had my back about the way I handled it, and also those that gave me advice and support about it. -
Seeking iOS Expert
14 Mar 2012 | 10:29 amI'm so dumb sometimes. I was just in the kitchen making myself a sandwich and it hit me why I have such a mental block about hiring anyone to do remote iOS development for me: I don't know anything about it! But how to get past that? I don't have time to teach myself, it would take too long and my first few projects would be crap. Too risky. Perhaps I should follow my own advice on the subject? D'oh! What I really need is an expert to come pair with me on building the iOS version of DueProps at my location. The way I see it that buys me getting: past the initial learning curve of iOS an… -
How Insignificant Is Internet Explorer These Days?
7 Mar 2012 | 8:28 amMaybe Super Tuesday got me in a mood to play with numbers tonight. I was poking around analytics stats for DueProps and noticed that my users are not fans of Internet Explorer in any significant numbers and among them, most use modern versions of IE (8,9) by a huge margin. These visit percentages are across many tens of thousands of visits since we opened our beta last year. Admittedly these numbers reflect an early adopter crowd, but still, they're much smaller than I would have guessed. Does this information mean we don't need to invest much effort in maintaining compatibility with IE? -
Forced to disable Firefox Inspect Element due to muscle memory
2 Mar 2012 | 10:35 amIt's amazing how much we take for granted certain little tasks that we do so often they become muscle memory. The latest powerful example of that fact for me has been the annoyance provoked by the addition of a native Inspect Element option to the Firefox 10 context menu, exactly where Firebug's Inspect Element used to reside. If you had asked me last week how many times I hit inspect element in a given day, I might have guessed a dozen or so... Ha! Turns out I do it more like hundreds of times a day! And you build serious muscle memory when you do something so often. Yesterday, despite…
-
Jay Fields' Thoughts
-
Agile Development with Clojure
15 May 2012 | 6:24 amIf you've ever spent any time learning Rails then you probably read one of the editions of Agile Web Development with Rails, and if you're like me (skeptical & pedantic) then you probably asked yourself: what the hell does Rails have to do with Agile development? At the time, I assumed that Dave and David were merely capitalizing on the buzz around Agile; however, even if that's the case, I think they did manage to highlight one of my favorite aspects to building websites with Rails: The ability to make a change, reload the page and see the results makes you a much more agile programmer -… -
Follow-up Thoughts on Aligning Business & Programmer Goals
9 May 2012 | 3:41 pmMy recent entry on Aligning Business & Programmer Goals led to an email conversation that I thought might be worth sharing. From A. Nonymous: I have an issue with tying bonuses to performance due to, basically, performance being out of the programmer's hands. Where I'm working right now developers are treated as code monkeys: We're there to implement features the business people dream up, and nothing more. How could I provide more value when I work in an environment whereThe visual design phase has already happened (no pushback on any design elements taken seriously) The business development… -
Clojure: Conditionally Importing
7 May 2012 | 5:55 pmI recently ran into a test that needed (org.joda.time.DateTime.) to always return the same time - so it could easily be asserted against. This situation is fairly common, so it makes sense to add support to expectations. However, I didn't want to force a joda-time dependency on everyone who wanted to use expectations. Luckily, Clojure gives me the ability to conditionally import dependencies. The test looked something like the following code snippet. (scenario (handle-fill (build PartialFill)) (expect {:px 10 :size 33 :time 1335758400000} (in (first @fills)))) note: build is a fn that creates… -
Eval a Clojure Snippet in Java
9 Apr 2012 | 9:14 pmThe vast majority of the existing code for my current project is in Java, but the majority of the new code that we write is in Clojure; as a result, I spend quite a bit of time bouncing between Clojure & Java. Recently I was working with some Clojure code that was easily testable (in isolation) within Clojure, but was also executed as part of some higher-level Java integration tests. Within the Clojure tests I used with-redefs to temporarily set the state of a few atoms I cared about; however, setting the same state within the higher-level Java tests turned out to be a bit more of an… -
When to Break Apart your Application
4 Mar 2012 | 11:40 amAt speakerconf Aruba 2012, Stefan Tilkov presented on the topic of building Systems. One aspect of his presentation that really struck a chord with me was around the competing desires while designing and delivering an application. This blog entry is about summarizing that aspect and what I took away from it.** Stefan noted that early in an application's life, a monolithic application is far easier to deliver; however, as the application grows, what is important begins to change. The slide to the right shows how priorities can change over time. While starting with a monolithic application is…
-
PeepCode Products
-
Play by Play: Kyle Neath
15 May 2012 | 1:00 pmKyle Neath was the first designer hired at GitHub. He has had a hand in most of the projects shipped during that time (the website, GitHub Issues, GitHub for Mac, and others). Kyle is a master of his tools and takes a practical approach to design. Rather than focusing solely on aesthetics, he considers the context of the existing site and thinks through how his designs fit into the average user’s workflow. In this hour and 45 minute video, he designs a prototype for a theoretical feature at PeepCode: a bulk video download system. You’ll learn about: Thinking through a UI problem… -
Full Stack Node.js Part 2
27 Apr 2012 | 2:11 pmIt’s Part 2 of Full Stack Node.js! In Part 1 we started building a real-time menu system for a pie shop. In this 80 minute conclusion, we continue our deep dive into Node.js, the Express web framework, Mocha tests, the CoffeeScript language, and Socket.io real-time push. You’ll learn dozens of tips from that you won’t find anywhere else! Topics covered: Build a model to access the Redis database Write simple unit tests Use namespaced routes to organize URLs and code Write view helper methods to consolidate logic Protect routes for administrative access Use and write… -
Full Stack Node.js Part 1
2 Apr 2012 | 3:46 pmNode.js is one of the fastest dynamic language implementations available today. While useful for all kinds of scripting, it excels at building web applications. But assembling a full stack of models, controllers, views, tests, and client-side assets isn’t comprehensively documented anywhere. And books on the topic have been repeatedly delayed. So we took a deep dive into Node.js, the Express web framework, Mocha tests, the CoffeeScript language, and Socket.io real-time push. We’ve used the freshest and most capable tools in the best way, without hacks or shortcuts. You’ll… -
Play by Play: Jim Weirich
16 Mar 2012 | 12:00 pmJim Weirich is the author of the ubiquitous Rake build tool for Ruby. He’s the Chief Scientist at EdgeCase and is a popular speaker and teacher. Given Jim’s proven skills in designing APIs for programmers, we wanted to see him design an API from scratch in real time. We gave him the task of building a library that enforces HTML form security. The library protects against unauthorized data model modification by users in less-privileged roles. For 90 minutes, you’ll see a master at work. Although this isn’t a step-by-step tutorial, you’ll see the following concepts… -
Play by Play: Aaron Patterson
24 Feb 2012 | 8:34 pmAaron Patterson (@tenderlove) is one of Ruby’s most respected and loved programmers. He’s a committer to both Ruby and Ruby on Rails. He also has an epic sense of humor. In this Play by Play video, we gave Aaron the task of writing a Rails app that queries GitHub and returns an activity score for any user. In the process he displays his dexterity with Vim, his knowledge of the Ruby language, and his techniques for solving problems. Over the course of two hours, you’ll see a master at work. Although this isn’t a step-by-step tutorial, you’ll see the following…
-
slash7 with Amy Hoy
-
Sexy, simple calendars for your biz planning needs
9 May 2012 | 5:52 pmThomas and I are trying to get our shit together. Which is to say, we’re dreadfully disorganized, suck at habits, and routine, and not only is it making us irritating but it’s starting to affect our business. Bummer. Traditionally people like us (and, okay, us) try to patch this problem with software. But you can’t solve a social problem with software, and the same goes for personal problems. Ever tried software deodorant? Yeahhhh, like that. Paper, it’s the coming thing in planningville. Entré these awesome planners by Charlie Gilkey. These (and Charlie’s… -
The 5-part 30×500 Taste Test
12 Apr 2012 | 11:05 pmThe Product Revolution is Coming! Hey there, sexy. As you probably know, I’ve got a launch on right now for the 4th round of my 30×500 Launch Class — aka, the coolest, most bullshit-free, most hilarious, most systematic way ever to start & launch your first product. You also probably know that I’m not just into all this *waves hand at entrepreneurship stuff* for the money. I’m on a mission. So, when I think about how I should market 30×500, I ask myself: How can I market and reach my ideal audience, while also furthering my mission in general? How… -
Vaccinate Yourself Against Crappy Customer Feedback
8 Apr 2012 | 2:41 amGosh, sometimes I love the internet so much I want to marry it. If only internet bigamy were legal! (Sorry, honey.) Right now I’m crushin’ on the internet because of Least Helpful, a blog which does nothing more complicated than put together screenshots of terrible reviews, along with some witty one-liners. Very witty one-liners, in fact. Driest of the dry. I nearly snorted my tandoori chicken and it burned. But that’s not why I love Least Helpful. I love it because it’s like a shot in the ass for the productmaker’s soul. A booster shot. Because with great power… -
Why You Gotta Apply for 30×500 & Why You Should LOVE it
6 Apr 2012 | 6:16 pmSoooOoooo. I put together a little video for ya, all about the 30×500 application process. If you’re planning to apply, you should definitely watch it. For starters, it gives you a lil taste of the Amy Universe. And who doesn’t want that? Also… inside, I spell out exactly why you have to apply (hint: I’m terribly selfish), and why my character flaw is awesome for you. Finally, if you wanted the nitty gritty inside details of how the application process works (do you have to dance? sing? do me favors? buy me pineapple jalapeño margaritas?), this video is for you. -
My Smart, Generous, Very Attractive Students Teach You Stuff
3 Apr 2012 | 12:30 pmI’m a little occupied with the launch of the new 30×500 class. In terms of launching the brand spanky new application process, we-eeeell… let’s just say my mouth wrote some checks my butt couldn’t cash. Still working’ on that. (Pssst. If you want to attend, you better get on the list now.) On the upside, this gives me an excellent opportunity to pass the blogging torch to my smart, generous, attractive and eloquent students: Jarrod Drysdale on premium pricing strategy Jarrod and another designer happened to both launch design ebooks on the same day, to very…
-
Polishing Ruby + Software Releases - zenspider.com
-
hoe version 3.0.6 has been released!
15 May 2012 | 7:24 pmHoe is a rake/rubygems helper for project Rakefiles. It helps you manage, maintain, and release your project and includes a dynamic plug-in system allowing for easy extensibility. Hoe ships with plug-ins for all your usual project tasks including rdoc generation, testing, packaging, deployment, and announcement.. See class rdoc for help. Hint: ri Hoe or any of the plugins listed below. For extra goodness, see: http://seattlerb.rubyforge.org/hoe/Hoe.pdf Changes: 3.0.6 / 2012-05-15 1 minor enhancement: Added install_plugins to the newb task bugs: https://github.com/seattlerb/hoe/issues code:… -
Repeating Tasks
14 May 2012 | 2:00 pmThis is my fourth entry detailing my personal “productivity pr0n”. What They Do One of the gems I got from my meeting at omni was the sheer scope and power of repeating tasks. I didn’t use them at all before that and honestly didn’t understand what I’d use them. Since then they’ve completely turned my workflow around. Basically, any task can have a “repeat” and the repeat interval is very customizable, esp with the latest version of omnifocus. Repeating just means a new version of that task is created with a new start and/or due date. You can… -
How to Write MiniTest::Spec Expectations
11 May 2012 | 2:00 pmOriginally published by Jared Ning at: https://gist.github.com/2032303 . Republished with permission. I’m a fan of MiniTest::Spec. It strikes a nice balance between the simplicity of TestUnit and the readable syntax of RSpec. When I first switched from RSpec to MiniTest::Spec, one thing I was worried I would miss was the ability to add matchers. (A note in terminology: “matchers” in MiniTest::Spec refer to something completely different than “matchers” in RSpec. I won’t get into it, but from now on, let’s use the proper term:… -
Contexts
10 May 2012 | 2:00 pmThis is my third entry detailing my personal “productivity pr0n”. Defined, sorta… Every task has a project and a context. Project is obvious. Context less so. According to wikipedia: “During a weekly review, determine the context for the tasks and puts them on the appropriate lists. An example of grouping together similar tasks would be making a list of outstanding telephone calls, or the tasks / errands to perform while downtown. Context lists can be defined by the set of tools available or by the presence of individuals or groups for whom one has items to discuss or… -
Omnifocus Project Organization
9 May 2012 | 2:00 pmThis is my second entry detailing my personal “productivity pr0n”. As I said in my previous post, I have 3 hierarchies of projects: personal, nerd, and work. Non-nerd Projects Personal and work are similar in that they’re just bundles of projects and there is no structure beyond that. In personal I have projects like: condo entertainment vacation kittens cooking and inside there are any number of tasks in there with no sub-projects. Work is even less structured with a single project called: Tedium. It’s for the stuff I don’t like to do, but have to and without a…
-
Josh Huckabee
-
Integrating Devise with Backbone.js
30 Apr 2012 | 2:30 pmFor the impatient: view the code, or see the demo. Several weeks ago I set out to create a single page web app leveraging Backbone.js on the front end with Ruby on Rails powering the back end. In the architecture for this application, Rails is essentially just a JSON API. All of the front-end magic happens with Backbone.js and related friends. Granted, Rails is doing a lot more boilerplate than just acting as an API, but the separation of the UI code and back-end code is a lot clearer in this model. read more -
jQuery with Rails 3
8 Feb 2010 | 4:04 pmUpdate: Since this article was written, the jquery-ujs project has been turned into a gem which includes a generator that streamlines this process. Instructions can be found in the README for the Github project. One of the most talked about features in Rails 3 is its plug & play architecture with various frameworks like Datamapper in place of ActiveRecord for the ORM or jQuery for javascript. However, I've yet to see much info on how to actually do this with the javascript framework. Fortunately, it looks like a lot of the hard work has already been done. Rails now emits HTML that is… -
Structure and Interpretation of Computer Programs (SICP) for Kindle
11 Sep 2009 | 5:22 amI just started reading the SICP book (Structure and Interpretation of Computer Programs, by Abelson, Sussman, and Sussman) which MIT Press has so graciously made available on their website. I'm not very fond of sitting in front of a computer screen to read books, so I mirrored their copy locally and converted it into a prc file (using Mobipocket Creator) so I could read it on my Kindle. Here it is for anyone else who wants to save a bit of time. It is provided under Creative Commons Attribution-Noncommercial 3.0 Unported License. -
Ubiquity Commands Updated
22 Jul 2009 | 5:36 pmUbiquity 0.5 was released a few weeks ago, and I finally got around to updating my commands. If you were using my W3C or Drupal API Ubiquity commands, they are now 0.5 compatible. Please update your command source. -
March Phoenix Drupal Meetup
3 Mar 2009 | 11:29 amThe March Phoenix Drupal meetup will be held next Tuesday, March 10th at 7pm. The meetup is moving on to the ASU campus thanks to the help of Chris Yates. Event details can be found on the DrupalPHX group page. Chris will be giving a presentation about the Mars Image Explorer project and how they are utilizing Drupal within that project. There's also been mention of DrupalCon attendees sharing a bit about what went on at the conference. Hope you all can make it.
-
Engine Yard Blog
-
Announcing Database-less environments
15 May 2012 | 7:35 pmAt Engine Yard, we believe that you should have the flexibility to set up your environments and manage your data stores as you see fit. This is something we take seriously as we continue to evolve Engine Yard Cloud and today, we are happy to announce database-less environments as an alpha release. If you need to utilize data offerings outside of our natively supported MySQL or PostgreSQL, then this feature will enable you to do so. Enabling the feature With database-less environments, it is no longer necessary to have a MySQL or PostgreSQL instance in every environment. Simply boot up a ‘No… -
Infographic: A Mobile Storm in the Cloud
15 May 2012 | 5:47 pmDid you know that there are 3 billion more smartphones on earth than there are humans? Maybe that doesn’t come as much of a surprise to you. But what you might find more surprising is that the growth in smartphone adoption has actually contributed to Engine Yard’s success. That’s right: as smartphone adoption has grown, so has app consumption. As a result, businesses are now prioritizing mobile application development. By 2015, mobile application development projects targeting smartphones and tablets will outnumber native PC projects buy a ratio of 4 to 1. Innovation in mobile is… -
Exciting New Integration: Badgeville in our Helpdesk!
15 May 2012 | 10:17 amWe are pleased to announce that we have integrated Badgeville’s gamification technology into our Zendesk ticketing system. As you use the helpdesk to perform different actions, (searching documentation, contributing to forums, completing satisfaction surveys, etc.) you will be able to earn many different badges and complete many different missions. Through this integration we hope to increase community engagement, and to not only give you new channels to share your experiences and ideas, but also to reward you for it! While inside our helpdesk, if you hover over a user’s picture, a… -
Engine Yard Expands IaaS Offerings with HP Cloud Services
10 May 2012 | 7:01 amWe’re excited to announce that we’re expanding the infrastructure options available to our customers with support for HP Cloud Services. We empower developers by providing a rock-solid platform with choices of infrastructure and components that make their job of building great applications as easy as possible. Engine Yard is one of the first PaaS providers to add support for HP’s public cloud, which is based on their world-class hardware and software, using key elements of the HP Converged Infrastructure combined with OpenStack technology. For the past six years, our customers have… -
All About High Availability
8 May 2012 | 6:22 pmWhat is a High Availability system? There are multiple opinions/definitions of high availability. Some people refer to it as Disaster Recovery; I refer to it as an implementation to ensure that business systems spend minimal time down from a disaster. For the purpose of this post, I think we should establish a description of Disaster Recovery and how it relates to High Availability. Disaster recovery includes the processes, policies and procedures related to preparing for recovery or continuation of technology infrastructure critical to an organization after a natural or human-induced…
-
Learnivore!
-
RailsCasts #350 REST API Versioning (Railscasts - free)
15 May 2012 | 7:00 pmAPIs should be consistent, but it is difficult to do this when returning a JSON response along side the HTML interface. Here I show how to add a versioned, RESTful API. The version can be determined from either the URL or HTTP headers. HackerBooks.com - find and explore books from StackOverflow and HackerNews! -
RailsCasts #351 A Look at Meteor (Railscasts - paid)
15 May 2012 | 7:00 pmMeteor is a JavaScript framework for building rich client-side applications. Here I re-create the Raffler app to compare with Backbone.js and Rails. Meteor may not be related to Rails, but I think many will find it interesting. HackerBooks.com - find and explore books from StackOverflow and HackerNews! -
Play by Play: Kyle Neath (Peepcode - paid)
14 May 2012 | 7:00 pmKyle Neath was the first designer hired at GitHub. He has had a hand in most of the projects shipped during that time (the website, GitHub Issues, GitHub for Mac, and others). Kyle is a master of his tools and takes a practical approach to design. Rather than focusing solely... HackerBooks.com - find and explore books from StackOverflow and HackerNews! -
RailsCasts #207 Syntax Highlighting (revised) (Railscasts - paid)
10 May 2012 | 7:00 pmHere I compare several syntax highlighting solutions and show how to use Pygments in a Rails app. I also show how to integrate it with Markdown and add caching. HackerBooks.com - find and explore books from StackOverflow and HackerNews! -
RailsCasts #348 The Rails API Gem (Railscasts - free)
8 May 2012 | 7:00 pmIt is often asked: Is Rails a good fit if I only need to serve an API? In this episode I show how to use the Rails API gem to create a slimmer Rails application designed to respond with JSON. HackerBooks.com - find and explore books from StackOverflow and HackerNews!
-
Ruby-coloured glasses
-
I got a Job...
12 May 2012 | 7:01 pmWell, it's been a busy couple of weeks. I've been interviewing and code-testing and otherwise rushing back and forth like a headless chicken... But it's all paid off, and I have myself a new job, starting Monday. I'll be working at a company in Crows Nest that specialises in software for the employment industry. I'll be coming in at a senior level as lead developer, building one of their four main products, assisting Registered Training Organisations keep track of their students and courses. -
Link: Employees and social media
6 May 2012 | 12:11 amThis is actually a really interesting point. 13 years ago, the Cluetrain Manifesto loudly told us that we should actually (shock) listen to what our customers actually have to say - even the complaints - without trying to pretty it up for the ears of upper management. It led to companies really listening to their audience and being able to build products that addressed the real problems of their customers, rather than wasting time building solutions for some idealised pseudo-customer. Lo and behold - the customers loved it. Is it time we started listening to our employees the same way? -
How to build a reputation in IT
30 Apr 2012 | 12:17 amThere is well-known a skills-shortage for programming... but don't be fooled. There are a lot of programmers out there too. The skills shortage is about there being a lack of *good* programmers. Just rocking up with a bright new CS degree is generally not going to cut it for you. You'll just have shown up at the door along with the other thousands of new CS graduates in your city this year. So what can you do to stand out from the crowd? To prove that you are, in fact, worth being in demand? How do you build a reputation as somebody worth hiring? There's no quick answer to this, but there is… -
Link: The perils of opinionated software like Rails
18 Apr 2012 | 7:47 pmAn old guest blogpost on RailsInside caught my interest, called The perils of opinionated software like Rails. It's never a good idea to get too fanatical about one's choice of framework - so I definitely recommend having a read. He raises some good points, including the should-be-obvious "the opposite of bad software is not necessarily good software". The specific ideas he raises are surrounding Rails' poor re-implementation of database security-checks - something that old, enterprisey-style applications leave up to the actual database, because that's been a solved problem for years. Recent… -
Senior RoR Dev... back on the market in Sydney
11 Apr 2012 | 10:13 pmSo, after a trip to Thailand, I'm finally back home in Oz and ready to look for a new role. Here's a quick overview of what I'm looking for, and what I've done - get in touch if we match up What I'm looking for I prefer building meaty applications solving interesting problems. I'm not interested in building cookie-cutter brochure-ware. I prefer greenfields development to maintenance work. I like to work with agile teams - sprints and kanban is good. I do not enjoy pair-programming, so if that's your style... maybe not for me. I prefer a relaxed and friendly culture. "enterprisey" corporations…
-
Idyllic Software
-
7 lessons for your business website
14 May 2012 | 5:25 amImagine a person walking up to you and starting to talk about herself, boasting about her abilities, asking you to believe that she is an expert and pushing you to take her out for a coffee. Now unless her fathers name is Apple or Groupon, you would not have any clue on who she is, no clue on why is she wasting your time and most importantly no clue on why is she asking you to spend your time and money on her. Your business website is that beautiful charmer. She has only one agenda – engaging potential customers and generating curiosity to strike a conversation. She is with million others… -
Why invest in your elevator pitch?
7 May 2012 | 3:42 amMost entrepreneurs do not focus on the elevator pitch. Sure elevator pitch simply means how would you pitch your business to a potential customer in 30 seconds when you meet her in the elevator. However taking the jargon along, you must have a simple sentence describing your business. It should be more than what you do. It should resonate with the customers add value chord. I came across a story recently which describes this very beautifully. It is about a blind man sitting on the road side with a write up on a piece of paper saying “I AM BLIND. PLEASE HELP” If you think about it,… -
Ruby for Startups!
3 May 2012 | 1:10 amChoosing a technology platform is a key decision for all startups and an adept entrepreneur never misses to consider both strategic and technology perspective while selecting one. What matters most for an intelligent startup?…time to market? quality? money? When enticed to take on the latest “silver bullet” technology, startups need to cautiously weigh the associated gains and trade-offs. Synonymous to rapid web development, ruby on rails is twice as fast to develop as Java and twice as maintainable as PHP. Gartner’s prediction of a fourfold increase of Ruby developers to four… -
Agile testing
30 Apr 2012 | 4:13 amAgile methodologies foster accommodating frequent changes. This means the test case documentation will soon become obsolete. Some projects have very short sprints or iterations. The manual tester might not have all the time in the world to go sequential by first preparing the documentation and then begin to test. Some of the projects are even more nasty where the requirements would change in the same sprint itself. Agile testing is characterized by quick iterative life cycles which squeezes tester’s ability to develop and maintain test cases, leaving very less time for documentation. -
Process => Process in CarrierWave
20 Apr 2012 | 3:59 amWell this one is for all those who ever used CarrierWave for uploading there files(no matter which files). Now how many of us had actually extended Carrierwave to process a file (i.e writing you own processing for the file e.g In term of image reducing or increasing the quality of image) I happen to stumble upon this as all I want was to process a csv file which is suppose to be stored in Amazon S3(on upload) using CarrierWave . Now the aim was to extract all the information from the CSV (sound simple right ) . Yes it is but I resist the thought of putting the file in Amazon S3 server(first)…


