Oct
7
I am not even sure people follow this thing anymore :). Either way, here are some quick updates.
We won first place with our rails rumble app entry, Tasty Planner. I am very proud of our team and we are all excited to turn it into a real business!
You would think with working from home that I would update this blog more, but it is hard, for sure. The really nice thing about working from home is that I get to spend *all* of my time with Brayden when I have him (1/2 the week) and get my work done at night and after he goes home on Saturday afternoon. It really has been working out nicely.
I am also about to launch my first open source project, so stay tuned for details on that!
Aug
20
Rails page caching with an admin interface
Filed Under General | Leave a Comment
Chris and I recently released the new Web 2.0 Show website and we worked very hard to ensure the performance was as quick as we could make it. We used the ySlow plugin for firefox and made most of the tweaks they suggested, we were able to get to a B (86) before we added things like the twitter script.
The biggest performance gain we made was to turn on rails full page caching for the episodes index, the episode show page, and the archives page. The big issue is, we didn’t build a namespaced admin controller for the site, we embedded the admin stuff into the restful resources, like episodes/new, for inline admin stuff. We put in a simple admin interface (just a bar across the top) but it broke as soon as we turned on page caching. Chris and his boss had just solved this very issue at their work, so I took the tip from Rich and started hacking up a quick javascript method to do an admin navbar.
First, I had to add the route and the controller action to handle the ajax requests for an admin navbar.
routes.rb
map.resources :episodes, :has_many => [ :comments ], :collection => {:archive => :get, :search => :get, :admin_bar => :get}
episodes_controller.rb
def admin_bar
respond_to do |format|
if logged_in?
format.js
else
format.html {render :nothing => true}
end
end
end
Once that was done, I just needed to add the ajax request and the admin_bar div to the application.rhtml, it loads the ajax request each time the page does. I placed the code at the bottom so the admin bar loads last and doesn’t hold up any of the page rendering. I used url_for to make the ajax call, but this blog doesn’t seem to like my code syntax.
new Ajax.Request('/episodes/admin_bar', { asychronous:true, evalScripts:true, method: 'get'})
The last piece was to add the rjs and have it pull in the shared/_admin_navbar.rhtml partial.
page['admin_bar'].replace_html :partial => 'shared/admin_bar'
And that’s it, now the rjs should pull in your admin_navbar partial and dump it into the admin_bar div.
Aug
7
So I figure if you read this, you must either know me personally or you are a fan of the web 2.0 show. If you aren’t a fan, you can just ignore this one. Chris and I have been hard at work putting together a new website/backend for the show. We wanted something custom and more suited to what we try to do with the show. When we release the new site, it will also allow us to have all the shows listed in iTunes (like it should be!) instead of like 5 episodes.
Jul
13
So I guess I need to follow up with the details of what happened with my iphone. It took about 20 hours to activate the thing. After many phone calls to AT&T, I got through to a lady that told me that my iphone number and home phone number were the same and it was causing an issue. After being on hold for 30 minutes she finally came back and said I should start working shortly. I was activated within an hour!
All the activation non-sense aside, I have been very pleased with this phone. The visual voicemail isn’t something you hear about alot, but I love it! It is just so amazing that you can click on a button and then click on the voicemail and just hear it, no more passwords, no more keypad dialing to listen/re listen/delete. The ipod part is very nice too, I find myself listening to podcasts more than I used to.
Is it just me, or are other iphone owners finding they ipods feel useless now?
Jun
29
So, I waited in line from 4pm - 6pm today and finally got into the store to pick up my brand new iphone @ 6:15pm. I was back home and unboxing it by 6:40pm. Apple really does provide one of the best unboxing experiences I have ever had the pleasure to depackage.
Back to the activation process, after unboxing it and turning it on, I updated itunes and hooked it up. iTunes saw my iPhone and immediately showed the activation screen. After looking up my Verizon info and getting everything plugged in, it looked like I was good to go - I was getting the iPhone Activating screen. As it was still activating (it said 6 minutes) I recieved an email stating that it would take 24 hours to activate my phone and I could start using June 30th at 7:23pm (exactly 24 hours).
Now when I connect this sleek phone to iTunes, it says to wait for an email to say the phone is activated. I can’t even sync my music to it until it is activated. When I called AT&T, they said that it would take 24 hours and I just need to wait. When I probed further, the lady just kept repeating herself. I just find it a little amusing that they stocked up the stores with extra people to be ready, but did they add more staff to handle the porting? My first AT&T experience has not been a pleasant experience, for sure.
Mar
26
Of course, I must talk about Twitter. I have being using it a lot lately. I find it to be a great tool to watch the underculture of the SF tech community, and a good tool to keep in touch with various people. I plan to integrate the javascript widget for my account into this blog at some point, then I guess you will at least see some daily update on this site :).