columbus 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE +20 -0
- data/README.rdoc +18 -0
- data/VERSION.yml +4 -0
- data/lib/columbus.rb +47 -0
- data/lib/columbus/feed.rb +17 -0
- data/lib/columbus/link.rb +19 -0
- data/lib/columbus/redirect_follower.rb +46 -0
- data/test/columbus_test.rb +36 -0
- data/test/feed_test.rb +23 -0
- data/test/fixtures/railsquicktips.html +295 -0
- data/test/fixtures/railstips.html +1071 -0
- data/test/fixtures/railstips_feedburner.html +1397 -0
- data/test/fixtures/railstips_redirect +11 -0
- data/test/link_test.rb +40 -0
- data/test/test_helper.rb +17 -0
- metadata +71 -0
@@ -0,0 +1,1071 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
3
|
+
<head>
|
4
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
5
|
+
<title>RailsTips by John Nunemaker</title>
|
6
|
+
<link href="http://static.railstips.org/stylesheets/common.css" rel="stylesheet" type="text/css" />
|
7
|
+
|
8
|
+
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>
|
9
|
+
<script type="text/javascript">jQuery.noConflict();</script>
|
10
|
+
<script type="text/javascript" src="http://static.blawgtips.com/javascripts/network.js"></script>
|
11
|
+
|
12
|
+
<script src="http://ajax.googleapis.com/ajax/libs/prototype/1.6/prototype.js" type="text/javascript"></script>
|
13
|
+
<script src="http://static.railstips.org/javascripts/code_highlighter.js" type="text/javascript"></script>
|
14
|
+
<script src="http://static.railstips.org/javascripts/application.js" type="text/javascript"></script>
|
15
|
+
<script src="http://mint.railstips.org/mint/?js" type="text/javascript"></script>
|
16
|
+
|
17
|
+
<link href="http://feeds.feedburner.com/railstips" rel="alternate" type="application/atom+xml" title="Railstips Articles" />
|
18
|
+
<link href="http://feeds.feedburner.com/railsquicktips" rel="alternate" type="application/atom+xml" title="Rails Quick Tips (links)" />
|
19
|
+
</head>
|
20
|
+
<body>
|
21
|
+
|
22
|
+
<div id="wrapper">
|
23
|
+
<div id="header">
|
24
|
+
<h3><a href="/">Rails<span>Tips</span></a></h3>
|
25
|
+
<p>One man, feverishly posting everything he learns. <a href="#more" id="more_slide">more »</a></p>
|
26
|
+
</div>
|
27
|
+
|
28
|
+
<div id="content">
|
29
|
+
<div id="primary">
|
30
|
+
|
31
|
+
<div class="post">
|
32
|
+
<div class="when">
|
33
|
+
<h3>March 25th, 2009</h3>
|
34
|
+
<p class="author">Posted by John</p>
|
35
|
+
|
36
|
+
|
37
|
+
</div>
|
38
|
+
|
39
|
+
<div class="title">
|
40
|
+
<h1><a href="/2009/3/25/building-api-wrapping-gems-could-not-get-much-easier" title="Building API Wrapping Gems Could Not Get Much Easier">Building API Wrapping Gems Could Not Get Much Easier</a></h1>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
<div class="body">
|
44
|
+
|
45
|
+
|
46
|
+
<div class="excerpt">
|
47
|
+
<p>In which I show how easy it is now to create ruby gems that wrap APIs, using Google Weather as an example.</p>
|
48
|
+
</div>
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
</div>
|
54
|
+
|
55
|
+
<div class="meta">
|
56
|
+
<p>
|
57
|
+
Tags: <a href="/tags/api" rel="tag" title="api">api</a>, <a href="/tags/gems" rel="tag" title="gems">gems</a>, <a href="/tags/google" rel="tag" title="google">google</a>, <a href="/tags/testing" rel="tag" title="testing">testing</a>
|
58
|
+
|
59
|
+
|
60
|
+
| <a href="/2009/3/25/building-api-wrapping-gems-could-not-get-much-easier#comments" class="commentslink">1 comments</a>
|
61
|
+
|
62
|
+
</p>
|
63
|
+
</div>
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
</div>
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
<div class="post">
|
72
|
+
<div class="when">
|
73
|
+
<h3>March 24th, 2009</h3>
|
74
|
+
<p class="author">Posted by John</p>
|
75
|
+
|
76
|
+
|
77
|
+
</div>
|
78
|
+
|
79
|
+
<div class="title">
|
80
|
+
<h1><a href="/2009/3/24/custom-matchers-for-matchy" title="Custom Matchers for Matchy">Custom Matchers for Matchy</a></h1>
|
81
|
+
</div>
|
82
|
+
|
83
|
+
<div class="body">
|
84
|
+
|
85
|
+
|
86
|
+
<div class="excerpt">
|
87
|
+
<p>In which I show all the dirty secrets of custom matchers using matchy.</p>
|
88
|
+
</div>
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
</div>
|
94
|
+
|
95
|
+
<div class="meta">
|
96
|
+
<p>
|
97
|
+
Tags: <a href="/tags/matchy" rel="tag" title="matchy">matchy</a>, <a href="/tags/testing" rel="tag" title="testing">testing</a>
|
98
|
+
|
99
|
+
|
100
|
+
| <a href="/2009/3/24/custom-matchers-for-matchy#comments" class="commentslink">2 comments</a>
|
101
|
+
|
102
|
+
</p>
|
103
|
+
</div>
|
104
|
+
|
105
|
+
|
106
|
+
|
107
|
+
</div>
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
<div class="post">
|
112
|
+
<div class="when">
|
113
|
+
<h3>March 23rd, 2009</h3>
|
114
|
+
<p class="author">Posted by John</p>
|
115
|
+
|
116
|
+
|
117
|
+
</div>
|
118
|
+
|
119
|
+
<div class="title">
|
120
|
+
<h1><a href="/2009/3/23/httparty-example-mymilemarker-com" title="HTTParty Example: MyMileMarker.com">HTTParty Example: MyMileMarker.com</a></h1>
|
121
|
+
</div>
|
122
|
+
|
123
|
+
<div class="body">
|
124
|
+
|
125
|
+
|
126
|
+
<div class="excerpt">
|
127
|
+
<p>In which I show an example of how to use HTTParty to consume the MyMileMarker undocumented <span class="caps">API</span>.</p>
|
128
|
+
</div>
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+
|
133
|
+
</div>
|
134
|
+
|
135
|
+
<div class="meta">
|
136
|
+
<p>
|
137
|
+
Tags: <a href="/tags/httparty" rel="tag" title="httparty">httparty</a>, <a href="/tags/xml" rel="tag" title="xml">xml</a>
|
138
|
+
|
139
|
+
|
140
|
+
| <a href="/2009/3/23/httparty-example-mymilemarker-com#comments" class="commentslink">2 comments</a>
|
141
|
+
|
142
|
+
</p>
|
143
|
+
</div>
|
144
|
+
|
145
|
+
|
146
|
+
|
147
|
+
</div>
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
<div class="post">
|
152
|
+
<div class="when">
|
153
|
+
<h3>March 12th, 2009</h3>
|
154
|
+
<p class="author">Posted by John</p>
|
155
|
+
|
156
|
+
|
157
|
+
</div>
|
158
|
+
|
159
|
+
<div class="title">
|
160
|
+
<h1><a href="/2009/3/12/3-simple-guidelines-for-contributing" title="3 Simple Guidelines for Contributing">3 Simple Guidelines for Contributing</a></h1>
|
161
|
+
</div>
|
162
|
+
|
163
|
+
<div class="body">
|
164
|
+
|
165
|
+
|
166
|
+
<div class="excerpt">
|
167
|
+
<p>In which I describe simple guidelines for contributing to other people’s open source projects.</p>
|
168
|
+
</div>
|
169
|
+
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
</div>
|
174
|
+
|
175
|
+
<div class="meta">
|
176
|
+
<p>
|
177
|
+
Tags: <a href="/tags/contributing" rel="tag" title="contributing">contributing</a>, <a href="/tags/thoughts" rel="tag" title="thoughts">thoughts</a>
|
178
|
+
|
179
|
+
|
180
|
+
| <a href="/2009/3/12/3-simple-guidelines-for-contributing#comments" class="commentslink">1 comments</a>
|
181
|
+
|
182
|
+
</p>
|
183
|
+
</div>
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
</div>
|
188
|
+
|
189
|
+
|
190
|
+
|
191
|
+
<div class="post">
|
192
|
+
<div class="when">
|
193
|
+
<h3>March 4th, 2009</h3>
|
194
|
+
<p class="author">Posted by John</p>
|
195
|
+
|
196
|
+
|
197
|
+
</div>
|
198
|
+
|
199
|
+
<div class="title">
|
200
|
+
<h1><a href="/2009/3/4/following-redirects-with-net-http" title="Following Redirects with Net/HTTP">Following Redirects with Net/HTTP</a></h1>
|
201
|
+
</div>
|
202
|
+
|
203
|
+
<div class="body">
|
204
|
+
|
205
|
+
|
206
|
+
<div class="excerpt">
|
207
|
+
<p>In which I revive clogging by presenting a simple class that follows a limited number of redirects on its journey to an endpoint.</p>
|
208
|
+
</div>
|
209
|
+
|
210
|
+
|
211
|
+
|
212
|
+
|
213
|
+
</div>
|
214
|
+
|
215
|
+
<div class="meta">
|
216
|
+
<p>
|
217
|
+
Tags: <a href="/tags/clogging" rel="tag" title="clogging">clogging</a>, <a href="/tags/http" rel="tag" title="http">http</a>, <a href="/tags/net" rel="tag" title="net">net</a>, <a href="/tags/redirects" rel="tag" title="redirects">redirects</a>
|
218
|
+
|
219
|
+
|
220
|
+
| <a href="/2009/3/4/following-redirects-with-net-http#comments" class="commentslink">2 comments</a>
|
221
|
+
|
222
|
+
</p>
|
223
|
+
</div>
|
224
|
+
|
225
|
+
|
226
|
+
|
227
|
+
</div>
|
228
|
+
|
229
|
+
|
230
|
+
|
231
|
+
<div class="post">
|
232
|
+
<div class="when">
|
233
|
+
<h3>March 1st, 2009</h3>
|
234
|
+
<p class="author">Posted by John</p>
|
235
|
+
|
236
|
+
|
237
|
+
</div>
|
238
|
+
|
239
|
+
<div class="title">
|
240
|
+
<h1><a href="/2009/3/1/first-time-in-print" title="First Time in Print">First Time in Print</a></h1>
|
241
|
+
</div>
|
242
|
+
|
243
|
+
<div class="body">
|
244
|
+
|
245
|
+
|
246
|
+
<div class="excerpt">
|
247
|
+
<p>In which I mention my first time in print, an article for the first issue of Rails magazine.</p>
|
248
|
+
</div>
|
249
|
+
|
250
|
+
|
251
|
+
|
252
|
+
|
253
|
+
</div>
|
254
|
+
|
255
|
+
<div class="meta">
|
256
|
+
<p>
|
257
|
+
Tags: <a href="/tags/magazine" rel="tag" title="magazine">magazine</a>, <a href="/tags/web%20hooks" rel="tag" title="web hooks">web hooks</a>
|
258
|
+
|
259
|
+
|
260
|
+
| <a href="/2009/3/1/first-time-in-print#comments" class="commentslink">6 comments</a>
|
261
|
+
|
262
|
+
</p>
|
263
|
+
</div>
|
264
|
+
|
265
|
+
|
266
|
+
|
267
|
+
</div>
|
268
|
+
|
269
|
+
|
270
|
+
|
271
|
+
<div class="post">
|
272
|
+
<div class="when">
|
273
|
+
<h3>February 21st, 2009</h3>
|
274
|
+
<p class="author">Posted by John</p>
|
275
|
+
|
276
|
+
|
277
|
+
</div>
|
278
|
+
|
279
|
+
<div class="title">
|
280
|
+
<h1><a href="/2009/2/21/shoulda-looked-at-it-sooner" title="Shoulda Looked At It Sooner">Shoulda Looked At It Sooner</a></h1>
|
281
|
+
</div>
|
282
|
+
|
283
|
+
<div class="body">
|
284
|
+
|
285
|
+
|
286
|
+
<div class="excerpt">
|
287
|
+
<p>In which I explain what I like about shoulda after using it for a few hours.</p>
|
288
|
+
</div>
|
289
|
+
|
290
|
+
|
291
|
+
|
292
|
+
|
293
|
+
</div>
|
294
|
+
|
295
|
+
<div class="meta">
|
296
|
+
<p>
|
297
|
+
Tags: <a href="/tags/shoulda" rel="tag" title="shoulda">shoulda</a>, <a href="/tags/testing" rel="tag" title="testing">testing</a>
|
298
|
+
|
299
|
+
|
300
|
+
| <a href="/2009/2/21/shoulda-looked-at-it-sooner#comments" class="commentslink">12 comments</a>
|
301
|
+
|
302
|
+
</p>
|
303
|
+
</div>
|
304
|
+
|
305
|
+
|
306
|
+
|
307
|
+
</div>
|
308
|
+
|
309
|
+
|
310
|
+
|
311
|
+
<div class="post">
|
312
|
+
<div class="when">
|
313
|
+
<h3>February 2nd, 2009</h3>
|
314
|
+
<p class="author">Posted by John</p>
|
315
|
+
|
316
|
+
|
317
|
+
</div>
|
318
|
+
|
319
|
+
<div class="title">
|
320
|
+
<h1><a href="/2009/2/2/bedazzle-your-bash-prompt-with-git-info" title="Bedazzle Your Bash Prompt with Git Info">Bedazzle Your Bash Prompt with Git Info</a></h1>
|
321
|
+
</div>
|
322
|
+
|
323
|
+
<div class="body">
|
324
|
+
|
325
|
+
|
326
|
+
<div class="excerpt">
|
327
|
+
<p>In which I show how to bedazzle your bash prompt with color and the current git branch.</p>
|
328
|
+
</div>
|
329
|
+
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
</div>
|
334
|
+
|
335
|
+
<div class="meta">
|
336
|
+
<p>
|
337
|
+
Tags: <a href="/tags/bash" rel="tag" title="bash">bash</a>, <a href="/tags/command%20line" rel="tag" title="command line">command line</a>, <a href="/tags/git" rel="tag" title="git">git</a>
|
338
|
+
|
339
|
+
|
340
|
+
| <a href="/2009/2/2/bedazzle-your-bash-prompt-with-git-info#comments" class="commentslink">11 comments</a>
|
341
|
+
|
342
|
+
</p>
|
343
|
+
</div>
|
344
|
+
|
345
|
+
|
346
|
+
|
347
|
+
</div>
|
348
|
+
|
349
|
+
|
350
|
+
|
351
|
+
<div class="post">
|
352
|
+
<div class="when">
|
353
|
+
<h3>January 31st, 2009</h3>
|
354
|
+
<p class="author">Posted by John</p>
|
355
|
+
|
356
|
+
|
357
|
+
</div>
|
358
|
+
|
359
|
+
<div class="title">
|
360
|
+
<h1><a href="/2009/1/31/httparty-divorces-json" title="HTTParty Divorces JSON">HTTParty Divorces JSON</a></h1>
|
361
|
+
</div>
|
362
|
+
|
363
|
+
<div class="body">
|
364
|
+
|
365
|
+
|
366
|
+
<div class="excerpt">
|
367
|
+
<p>In which I describe the slaying of HTTParty’s lone remaining dependency, the formidable <span class="caps">JSON</span> gem.</p>
|
368
|
+
</div>
|
369
|
+
|
370
|
+
|
371
|
+
|
372
|
+
|
373
|
+
</div>
|
374
|
+
|
375
|
+
<div class="meta">
|
376
|
+
<p>
|
377
|
+
Tags: <a href="/tags/httparty" rel="tag" title="httparty">httparty</a>, <a href="/tags/json" rel="tag" title="json">json</a>
|
378
|
+
|
379
|
+
|
380
|
+
| <a href="/2009/1/31/httparty-divorces-json#comments" class="commentslink">13 comments</a>
|
381
|
+
|
382
|
+
</p>
|
383
|
+
</div>
|
384
|
+
|
385
|
+
|
386
|
+
|
387
|
+
</div>
|
388
|
+
|
389
|
+
|
390
|
+
|
391
|
+
<div class="post">
|
392
|
+
<div class="when">
|
393
|
+
<h3>January 28th, 2009</h3>
|
394
|
+
<p class="author">Posted by John</p>
|
395
|
+
|
396
|
+
|
397
|
+
</div>
|
398
|
+
|
399
|
+
<div class="title">
|
400
|
+
<h1><a href="/2009/1/28/httparty-meet-mr-response" title="HTTParty Meet Mr. Response">HTTParty Meet Mr. Response</a></h1>
|
401
|
+
</div>
|
402
|
+
|
403
|
+
<div class="body">
|
404
|
+
|
405
|
+
|
406
|
+
<div class="excerpt">
|
407
|
+
<p>In which HTTParty gets a first class response object, thus exposing the original body and response code.</p>
|
408
|
+
</div>
|
409
|
+
|
410
|
+
|
411
|
+
|
412
|
+
|
413
|
+
</div>
|
414
|
+
|
415
|
+
<div class="meta">
|
416
|
+
<p>
|
417
|
+
Tags: <a href="/tags/httparty" rel="tag" title="httparty">httparty</a>
|
418
|
+
|
419
|
+
|
420
|
+
| <a href="/2009/1/28/httparty-meet-mr-response#comments" class="commentslink">11 comments</a>
|
421
|
+
|
422
|
+
</p>
|
423
|
+
</div>
|
424
|
+
|
425
|
+
|
426
|
+
|
427
|
+
</div>
|
428
|
+
|
429
|
+
|
430
|
+
|
431
|
+
<div class="post">
|
432
|
+
<div class="when">
|
433
|
+
<h3>January 7th, 2009</h3>
|
434
|
+
<p class="author">Posted by John</p>
|
435
|
+
|
436
|
+
|
437
|
+
</div>
|
438
|
+
|
439
|
+
<div class="title">
|
440
|
+
<h1><a href="/2009/1/8/test-or-die-validates-uniqueness-of" title="Test Or Die: Validates Uniqueness Of">Test Or Die: Validates Uniqueness Of</a></h1>
|
441
|
+
</div>
|
442
|
+
|
443
|
+
<div class="body">
|
444
|
+
|
445
|
+
|
446
|
+
<div class="excerpt">
|
447
|
+
<p>In which I show how to test validates_uniqueness_of with a few different options.</p>
|
448
|
+
</div>
|
449
|
+
|
450
|
+
|
451
|
+
|
452
|
+
|
453
|
+
</div>
|
454
|
+
|
455
|
+
<div class="meta">
|
456
|
+
<p>
|
457
|
+
Tags: <a href="/tags/test%20unit" rel="tag" title="test unit">test unit</a>, <a href="/tags/testing" rel="tag" title="testing">testing</a>, <a href="/tags/validations" rel="tag" title="validations">validations</a>
|
458
|
+
|
459
|
+
|
460
|
+
| <a href="/2009/1/8/test-or-die-validates-uniqueness-of#comments" class="commentslink">22 comments</a>
|
461
|
+
|
462
|
+
</p>
|
463
|
+
</div>
|
464
|
+
|
465
|
+
|
466
|
+
|
467
|
+
</div>
|
468
|
+
|
469
|
+
|
470
|
+
|
471
|
+
<div class="post">
|
472
|
+
<div class="when">
|
473
|
+
<h3>January 7th, 2009</h3>
|
474
|
+
<p class="author">Posted by John</p>
|
475
|
+
|
476
|
+
|
477
|
+
</div>
|
478
|
+
|
479
|
+
<div class="title">
|
480
|
+
<h1><a href="/2009/1/7/my-testing-theory" title="My Testing Theory">My Testing Theory</a></h1>
|
481
|
+
</div>
|
482
|
+
|
483
|
+
<div class="body">
|
484
|
+
|
485
|
+
|
486
|
+
<div class="excerpt">
|
487
|
+
<p>In which I discuss my theories when testing and what I would like to cover this month.</p>
|
488
|
+
</div>
|
489
|
+
|
490
|
+
|
491
|
+
|
492
|
+
|
493
|
+
</div>
|
494
|
+
|
495
|
+
<div class="meta">
|
496
|
+
<p>
|
497
|
+
Tags: <a href="/tags/testing" rel="tag" title="testing">testing</a>, <a href="/tags/theory" rel="tag" title="theory">theory</a>, <a href="/tags/thoughts" rel="tag" title="thoughts">thoughts</a>
|
498
|
+
|
499
|
+
|
500
|
+
| <a href="/2009/1/7/my-testing-theory#comments" class="commentslink">10 comments</a>
|
501
|
+
|
502
|
+
</p>
|
503
|
+
</div>
|
504
|
+
|
505
|
+
|
506
|
+
|
507
|
+
</div>
|
508
|
+
|
509
|
+
|
510
|
+
|
511
|
+
<div class="post">
|
512
|
+
<div class="when">
|
513
|
+
<h3>January 6th, 2009</h3>
|
514
|
+
<p class="author">Posted by John</p>
|
515
|
+
|
516
|
+
|
517
|
+
</div>
|
518
|
+
|
519
|
+
<div class="title">
|
520
|
+
<h1><a href="/2009/1/6/test-or-die" title="Test Or Die">Test Or Die</a></h1>
|
521
|
+
</div>
|
522
|
+
|
523
|
+
<div class="body">
|
524
|
+
|
525
|
+
|
526
|
+
<div class="excerpt">
|
527
|
+
<p>In which I beg the community to start testing if you aren’t or start helping others if you are.</p>
|
528
|
+
</div>
|
529
|
+
|
530
|
+
|
531
|
+
|
532
|
+
|
533
|
+
</div>
|
534
|
+
|
535
|
+
<div class="meta">
|
536
|
+
<p>
|
537
|
+
Tags: <a href="/tags/test%20unit" rel="tag" title="test unit">test unit</a>, <a href="/tags/testing" rel="tag" title="testing">testing</a>, <a href="/tags/validations" rel="tag" title="validations">validations</a>
|
538
|
+
|
539
|
+
|
540
|
+
| <a href="/2009/1/6/test-or-die#comments" class="commentslink">35 comments</a>
|
541
|
+
|
542
|
+
</p>
|
543
|
+
</div>
|
544
|
+
|
545
|
+
|
546
|
+
|
547
|
+
</div>
|
548
|
+
|
549
|
+
|
550
|
+
|
551
|
+
<div class="post">
|
552
|
+
<div class="when">
|
553
|
+
<h3>January 5th, 2009</h3>
|
554
|
+
<p class="author">Posted by John</p>
|
555
|
+
|
556
|
+
|
557
|
+
</div>
|
558
|
+
|
559
|
+
<div class="title">
|
560
|
+
<h1><a href="/2009/1/5/my-setup-and-software" title="My Setup and Software">My Setup and Software</a></h1>
|
561
|
+
</div>
|
562
|
+
|
563
|
+
<div class="body">
|
564
|
+
|
565
|
+
|
566
|
+
<div class="excerpt">
|
567
|
+
<p>In which I divulge the hardware and software that I use to get the job done.</p>
|
568
|
+
</div>
|
569
|
+
|
570
|
+
|
571
|
+
|
572
|
+
|
573
|
+
</div>
|
574
|
+
|
575
|
+
<div class="meta">
|
576
|
+
<p>
|
577
|
+
Tags: <a href="/tags/hardware" rel="tag" title="hardware">hardware</a>, <a href="/tags/software" rel="tag" title="software">software</a>
|
578
|
+
|
579
|
+
|
580
|
+
| <a href="/2009/1/5/my-setup-and-software#comments" class="commentslink">24 comments</a>
|
581
|
+
|
582
|
+
</p>
|
583
|
+
</div>
|
584
|
+
|
585
|
+
|
586
|
+
|
587
|
+
</div>
|
588
|
+
|
589
|
+
|
590
|
+
|
591
|
+
<div class="post">
|
592
|
+
<div class="when">
|
593
|
+
<h3>January 5th, 2009</h3>
|
594
|
+
<p class="author">Posted by John</p>
|
595
|
+
|
596
|
+
|
597
|
+
</div>
|
598
|
+
|
599
|
+
<div class="title">
|
600
|
+
<h1><a href="/2009/1/5/httparty-goes-commando" title="HTTParty Goes Commando">HTTParty Goes Commando</a></h1>
|
601
|
+
</div>
|
602
|
+
|
603
|
+
<div class="body">
|
604
|
+
|
605
|
+
|
606
|
+
<div class="excerpt">
|
607
|
+
<p>In which I describe the new hot command line interface for HTTParty.</p>
|
608
|
+
</div>
|
609
|
+
|
610
|
+
|
611
|
+
|
612
|
+
|
613
|
+
</div>
|
614
|
+
|
615
|
+
<div class="meta">
|
616
|
+
<p>
|
617
|
+
Tags: <a href="/tags/command%20line" rel="tag" title="command line">command line</a>, <a href="/tags/httparty" rel="tag" title="httparty">httparty</a>
|
618
|
+
|
619
|
+
|
620
|
+
| <a href="/2009/1/5/httparty-goes-commando#comments" class="commentslink">9 comments</a>
|
621
|
+
|
622
|
+
</p>
|
623
|
+
</div>
|
624
|
+
|
625
|
+
|
626
|
+
|
627
|
+
</div>
|
628
|
+
|
629
|
+
|
630
|
+
|
631
|
+
<div class="post">
|
632
|
+
<div class="when">
|
633
|
+
<h3>January 3rd, 2009</h3>
|
634
|
+
<p class="author">Posted by John</p>
|
635
|
+
|
636
|
+
|
637
|
+
</div>
|
638
|
+
|
639
|
+
<div class="title">
|
640
|
+
<h1><a href="/2009/1/3/look-at-the-size-of-my-footer" title="Look at the Size of My Footer">Look at the Size of My Footer</a></h1>
|
641
|
+
</div>
|
642
|
+
|
643
|
+
<div class="body">
|
644
|
+
|
645
|
+
|
646
|
+
<div class="excerpt">
|
647
|
+
<p>In which I discuss the latest updates to RailsTips—a footer full of links and live preview of comments.</p>
|
648
|
+
</div>
|
649
|
+
|
650
|
+
|
651
|
+
|
652
|
+
|
653
|
+
</div>
|
654
|
+
|
655
|
+
<div class="meta">
|
656
|
+
<p>
|
657
|
+
Tags: <a href="/tags/javascript" rel="tag" title="javascript">javascript</a>, <a href="/tags/mint" rel="tag" title="mint">mint</a>, <a href="/tags/pipes" rel="tag" title="pipes">pipes</a>, <a href="/tags/yahoo" rel="tag" title="yahoo">yahoo</a>
|
658
|
+
|
659
|
+
|
660
|
+
| <a href="/2009/1/3/look-at-the-size-of-my-footer#comments" class="commentslink">4 comments</a>
|
661
|
+
|
662
|
+
</p>
|
663
|
+
</div>
|
664
|
+
|
665
|
+
|
666
|
+
|
667
|
+
</div>
|
668
|
+
|
669
|
+
|
670
|
+
|
671
|
+
<div class="post">
|
672
|
+
<div class="when">
|
673
|
+
<h3>December 30th, 2008</h3>
|
674
|
+
<p class="author">Posted by John</p>
|
675
|
+
|
676
|
+
|
677
|
+
</div>
|
678
|
+
|
679
|
+
<div class="title">
|
680
|
+
<h1><a href="/2008/12/30/move-it-to-the-model-and-use-tiny-methods" title="Move It To The Model and Use Tiny Methods">Move It To The Model and Use Tiny Methods</a></h1>
|
681
|
+
</div>
|
682
|
+
|
683
|
+
<div class="body">
|
684
|
+
|
685
|
+
|
686
|
+
<div class="excerpt">
|
687
|
+
<p>In which I show how much I use to suck and how to move business logic to the model and break it up into smaller, more easily testable methods.</p>
|
688
|
+
</div>
|
689
|
+
|
690
|
+
|
691
|
+
|
692
|
+
|
693
|
+
</div>
|
694
|
+
|
695
|
+
<div class="meta">
|
696
|
+
<p>
|
697
|
+
Tags: <a href="/tags/refactoring" rel="tag" title="refactoring">refactoring</a>
|
698
|
+
|
699
|
+
|
700
|
+
| <a href="/2008/12/30/move-it-to-the-model-and-use-tiny-methods#comments" class="commentslink">10 comments</a>
|
701
|
+
|
702
|
+
</p>
|
703
|
+
</div>
|
704
|
+
|
705
|
+
|
706
|
+
|
707
|
+
</div>
|
708
|
+
|
709
|
+
|
710
|
+
|
711
|
+
<div class="post">
|
712
|
+
<div class="when">
|
713
|
+
<h3>December 24th, 2008</h3>
|
714
|
+
<p class="author">Posted by John</p>
|
715
|
+
|
716
|
+
|
717
|
+
</div>
|
718
|
+
|
719
|
+
<div class="title">
|
720
|
+
<h1><a href="/2008/12/24/the-rails-beatitudes" title="The Rails Beatitudes">The Rails Beatitudes</a></h1>
|
721
|
+
</div>
|
722
|
+
|
723
|
+
<div class="body">
|
724
|
+
|
725
|
+
|
726
|
+
<div class="excerpt">
|
727
|
+
<p>In which I present some great principles to live by when coding in Ruby and Rails.</p>
|
728
|
+
</div>
|
729
|
+
|
730
|
+
|
731
|
+
|
732
|
+
|
733
|
+
</div>
|
734
|
+
|
735
|
+
<div class="meta">
|
736
|
+
<p>
|
737
|
+
Tags: <a href="/tags/practices" rel="tag" title="practices">practices</a>, <a href="/tags/principles" rel="tag" title="principles">principles</a>, <a href="/tags/thoughts" rel="tag" title="thoughts">thoughts</a>
|
738
|
+
|
739
|
+
|
740
|
+
| <a href="/2008/12/24/the-rails-beatitudes#comments" class="commentslink">1 comments</a>
|
741
|
+
|
742
|
+
</p>
|
743
|
+
</div>
|
744
|
+
|
745
|
+
|
746
|
+
|
747
|
+
</div>
|
748
|
+
|
749
|
+
|
750
|
+
|
751
|
+
<div class="post">
|
752
|
+
<div class="when">
|
753
|
+
<h3>December 22nd, 2008</h3>
|
754
|
+
<p class="author">Posted by John</p>
|
755
|
+
|
756
|
+
|
757
|
+
</div>
|
758
|
+
|
759
|
+
<div class="title">
|
760
|
+
<h1><a href="/2008/12/22/the-top-eight-of-2008" title="The 2008 Smörgåsbord">The 2008 Smörgåsbord</a></h1>
|
761
|
+
</div>
|
762
|
+
|
763
|
+
<div class="body">
|
764
|
+
|
765
|
+
|
766
|
+
<div class="excerpt">
|
767
|
+
<p>In which I cover the best of RailsTips in 2008. Tons of handy links for your consumption.</p>
|
768
|
+
</div>
|
769
|
+
|
770
|
+
|
771
|
+
|
772
|
+
|
773
|
+
</div>
|
774
|
+
|
775
|
+
<div class="meta">
|
776
|
+
<p>
|
777
|
+
Tags: <a href="/tags/deployment" rel="tag" title="deployment">deployment</a>, <a href="/tags/git" rel="tag" title="git">git</a>, <a href="/tags/google" rel="tag" title="google">google</a>, <a href="/tags/httparty" rel="tag" title="httparty">httparty</a>, <a href="/tags/xml" rel="tag" title="xml">xml</a>
|
778
|
+
|
779
|
+
|
780
|
+
| <a href="/2008/12/22/the-top-eight-of-2008#comments" class="commentslink">7 comments</a>
|
781
|
+
|
782
|
+
</p>
|
783
|
+
</div>
|
784
|
+
|
785
|
+
|
786
|
+
|
787
|
+
</div>
|
788
|
+
|
789
|
+
|
790
|
+
|
791
|
+
<div class="post">
|
792
|
+
<div class="when">
|
793
|
+
<h3>December 16th, 2008</h3>
|
794
|
+
<p class="author">Posted by John</p>
|
795
|
+
|
796
|
+
|
797
|
+
</div>
|
798
|
+
|
799
|
+
<div class="title">
|
800
|
+
<h1><a href="/2008/12/17/using-context-and-stump-to-httparty-like-a-wufoo" title="Using Context and Stump to HTTParty like a Wufoo">Using Context and Stump to HTTParty like a Wufoo</a></h1>
|
801
|
+
</div>
|
802
|
+
|
803
|
+
<div class="body">
|
804
|
+
|
805
|
+
|
806
|
+
<div class="excerpt">
|
807
|
+
<p>In which I release a gem to send form submissions to Wufoo and explain how I tested it using Context and Stump.</p>
|
808
|
+
</div>
|
809
|
+
|
810
|
+
|
811
|
+
|
812
|
+
|
813
|
+
</div>
|
814
|
+
|
815
|
+
<div class="meta">
|
816
|
+
<p>
|
817
|
+
Tags: <a href="/tags/context" rel="tag" title="context">context</a>, <a href="/tags/gems" rel="tag" title="gems">gems</a>, <a href="/tags/stump" rel="tag" title="stump">stump</a>, <a href="/tags/testing" rel="tag" title="testing">testing</a>, <a href="/tags/wufoo" rel="tag" title="wufoo">wufoo</a>
|
818
|
+
|
819
|
+
|
820
|
+
| <a href="/2008/12/17/using-context-and-stump-to-httparty-like-a-wufoo#comments" class="commentslink">0 comments</a>
|
821
|
+
|
822
|
+
</p>
|
823
|
+
</div>
|
824
|
+
|
825
|
+
|
826
|
+
|
827
|
+
</div>
|
828
|
+
|
829
|
+
|
830
|
+
|
831
|
+
|
832
|
+
|
833
|
+
|
834
|
+
<div class="post">
|
835
|
+
<a href="/smorgasbord/">« Older Posts</a>
|
836
|
+
</div>
|
837
|
+
</div>
|
838
|
+
|
839
|
+
<div id="secondary">
|
840
|
+
<div class="section">
|
841
|
+
<h3>About</h3>
|
842
|
+
<p>Authored by John Nunemaker (Noo-neh-maker), a web developer and programmer who has fallen deeply in love with Ruby. <a href="/about/">More about John.</a></p>
|
843
|
+
</div>
|
844
|
+
|
845
|
+
<div class="section">
|
846
|
+
<a href="http://orderedlist.com/">
|
847
|
+
<img src="http://static.railstips.org/images/bug.jpg" alt="Hire Me at Ordered List" />
|
848
|
+
</a>
|
849
|
+
</div>
|
850
|
+
|
851
|
+
<div class="section">
|
852
|
+
<h3>Syndication</h3>
|
853
|
+
<p>
|
854
|
+
<img src="http://static.railstips.org/images/feed-icon-12x12-orange.gif" alt="Feed Icon" class="feed_icon" /><a href="http://feeds.feedburner.com/railstips">RailsTips Articles</a> - An assortment of howto's and thoughts on Ruby and Rails. <a href="http://feeds.feedburner.com/railstips" class="chicklet"><img src="http://feeds.feedburner.com/~fc/railstips?bg=aaaaaa&fg=333333&anim=0" height="26" width="88" style="border:0" alt="" /></a>
|
855
|
+
</p>
|
856
|
+
<p>
|
857
|
+
<img src="http://static.railstips.org/images/feed-icon-12x12-orange.gif" alt="Feed Icon" class="feed_icon" /><a href="http://feeds.feedburner.com/railsquicktips">Rails Quick Tips</a> - Ruby and Rails related links that I find. Never more than 5 a day. <a href="http://feeds.feedburner.com/railsquicktips" class="chicklet"><img src="http://feeds.feedburner.com/~fc/railsquicktips?bg=aaaaaa&fg=333333&anim=0" height="26" width="88" style="border:0" alt="" /></a>
|
858
|
+
</p>
|
859
|
+
</div>
|
860
|
+
|
861
|
+
<div class="section">
|
862
|
+
<h3>Search</h3>
|
863
|
+
<form method="get" id="sform" action="/search">
|
864
|
+
<div>
|
865
|
+
<input type="text" id="q" value="" name="q" size="13" />
|
866
|
+
<input type="submit" value="Go" />
|
867
|
+
</div>
|
868
|
+
</form>
|
869
|
+
</div>
|
870
|
+
|
871
|
+
<script src="http://errcount.com/ctr/21.js" type="text/javascript"></script>
|
872
|
+
</div>
|
873
|
+
</div>
|
874
|
+
|
875
|
+
<div id="more">
|
876
|
+
|
877
|
+
<div class="cell" id="more_site_links">
|
878
|
+
<div class="section">
|
879
|
+
<h3 class="column_heading">Site Links</h3>
|
880
|
+
<ul>
|
881
|
+
<li><a href="/">RailsTips Home</a></li>
|
882
|
+
<li><a href="/about/">The Sexy Author</a></li>
|
883
|
+
<li><a href="/smorgasbord/">Visit the Archives</a></li>
|
884
|
+
<li><a href="http://railstips.uservoice.com/">Suggest a Topic</a></li>
|
885
|
+
<li><a href="/advertise/">Advertise</a></li>
|
886
|
+
<li><img src="http://static.railstips.org/images/feed-icon-12x12-orange.gif" alt="Feed Icon" class="feed_icon" /><a href="http://feeds.feedburner.com/railstips/">Articles Feed</a></li>
|
887
|
+
<li><img src="http://static.railstips.org/images/feed-icon-12x12-orange.gif" alt="Feed Icon" class="feed_icon" /><a href="http://feeds.feedburner.com/railsquicktips/">Quick Tips Feed</a></li>
|
888
|
+
</ul>
|
889
|
+
</div>
|
890
|
+
|
891
|
+
<div class="section">
|
892
|
+
<h3>Search</h3>
|
893
|
+
<form method="get" action="/search">
|
894
|
+
<div>
|
895
|
+
<input type="text" id="q2" value="" name="q" size="15" />
|
896
|
+
<input type="submit" value="Go" />
|
897
|
+
</div>
|
898
|
+
</form>
|
899
|
+
</div>
|
900
|
+
|
901
|
+
<div class="section">
|
902
|
+
<a href="http://orderedlist.com/">
|
903
|
+
<img src="http://static.railstips.org/images/bug.jpg" alt="Hire Me at Ordered List" />
|
904
|
+
</a>
|
905
|
+
</div>
|
906
|
+
|
907
|
+
<div class="section">
|
908
|
+
<h3>Need More?</h3>
|
909
|
+
<ul>
|
910
|
+
<li><a href="http://addictedtonew.com/">Addicted To New</a></li>
|
911
|
+
<li><a href="http://orderedlist.com/">Ordered List</a></li>
|
912
|
+
<li><a href="http://jnunemaker.tumblr.com/">Tumblelog</a></li>
|
913
|
+
<li><a href="http://twitter.com/jnunemaker">Twitter</a></li>
|
914
|
+
<li><a href="http://github.com/jnunemaker">GitHub</a></li>
|
915
|
+
<li><a href="http://flickr.com/photos/johnnunemaker/">Flickr</a></li>
|
916
|
+
</ul>
|
917
|
+
</div>
|
918
|
+
</div>
|
919
|
+
|
920
|
+
<div class="row">
|
921
|
+
<div class="cell links">
|
922
|
+
<h3 class="column_heading">Recent <small><a href="/smorgasbord/" title="view all articles">view the smörgåsbord</a></small></h3>
|
923
|
+
<ul>
|
924
|
+
|
925
|
+
|
926
|
+
<li>
|
927
|
+
<a href="/2009/3/25/building-api-wrapping-gems-could-not-get-much-easier" title="Building API Wrapping Gems Could Not Get Much Easier">Building API Wrapping Gems Could Not Get Much Easier</a>
|
928
|
+
</li>
|
929
|
+
|
930
|
+
<li>
|
931
|
+
<a href="/2009/3/24/custom-matchers-for-matchy" title="Custom Matchers for Matchy">Custom Matchers for Matchy</a>
|
932
|
+
</li>
|
933
|
+
|
934
|
+
<li>
|
935
|
+
<a href="/2009/3/23/httparty-example-mymilemarker-com" title="HTTParty Example: MyMileMarker.com">HTTParty Example: MyMileMarker.com</a>
|
936
|
+
</li>
|
937
|
+
|
938
|
+
<li>
|
939
|
+
<a href="/2009/3/12/3-simple-guidelines-for-contributing" title="3 Simple Guidelines for Contributing">3 Simple Guidelines for Contributing</a>
|
940
|
+
</li>
|
941
|
+
|
942
|
+
<li>
|
943
|
+
<a href="/2009/3/4/following-redirects-with-net-http" title="Following Redirects with Net/HTTP">Following Redirects with Net/HTTP</a>
|
944
|
+
</li>
|
945
|
+
|
946
|
+
<li>
|
947
|
+
<a href="/2009/3/1/first-time-in-print" title="First Time in Print">First Time in Print</a>
|
948
|
+
</li>
|
949
|
+
|
950
|
+
<li>
|
951
|
+
<a href="/2009/2/21/shoulda-looked-at-it-sooner" title="Shoulda Looked At It Sooner">Shoulda Looked At It Sooner</a>
|
952
|
+
</li>
|
953
|
+
|
954
|
+
<li>
|
955
|
+
<a href="/2009/2/2/bedazzle-your-bash-prompt-with-git-info" title="Bedazzle Your Bash Prompt with Git Info">Bedazzle Your Bash Prompt with Git Info</a>
|
956
|
+
</li>
|
957
|
+
|
958
|
+
<li>
|
959
|
+
<a href="/2009/1/31/httparty-divorces-json" title="HTTParty Divorces JSON">HTTParty Divorces JSON</a>
|
960
|
+
</li>
|
961
|
+
|
962
|
+
<li>
|
963
|
+
<a href="/2009/1/28/httparty-meet-mr-response" title="HTTParty Meet Mr. Response">HTTParty Meet Mr. Response</a>
|
964
|
+
</li>
|
965
|
+
|
966
|
+
<li>
|
967
|
+
<a href="/2009/1/8/test-or-die-validates-uniqueness-of" title="Test Or Die: Validates Uniqueness Of">Test Or Die: Validates Uniqueness Of</a>
|
968
|
+
</li>
|
969
|
+
|
970
|
+
<li>
|
971
|
+
<a href="/2009/1/7/my-testing-theory" title="My Testing Theory">My Testing Theory</a>
|
972
|
+
</li>
|
973
|
+
|
974
|
+
</ul>
|
975
|
+
</div>
|
976
|
+
|
977
|
+
<div class="cell omega links">
|
978
|
+
<h3 class="column_heading">Popular <small>last 7 days</small></h3>
|
979
|
+
<ul>
|
980
|
+
|
981
|
+
|
982
|
+
<li>
|
983
|
+
<a href="http://railstips.org/2009/3/25/building-api-wrapping-gems-could-not-get-much-easier" title="Viewed 191 times"><strong>191:</strong> Building API Wrapping Gems Could Not Get Much Easier </a>
|
984
|
+
</li>
|
985
|
+
|
986
|
+
<li>
|
987
|
+
<a href="http://railstips.org/2009/3/24/custom-matchers-for-matchy" title="Viewed 148 times"><strong>148:</strong> Custom Matchers for Matchy </a>
|
988
|
+
</li>
|
989
|
+
|
990
|
+
<li>
|
991
|
+
<a href="http://railstips.org/2006/11/18/class-and-instance-variables-in-ruby" title="Viewed 129 times"><strong>129:</strong> Class and Instance Variables In Ruby </a>
|
992
|
+
</li>
|
993
|
+
|
994
|
+
<li>
|
995
|
+
<a href="http://railstips.org/2008/8/12/parsing-xml-with-ruby" title="Viewed 115 times"><strong>115:</strong> Parsing XML with Ruby </a>
|
996
|
+
</li>
|
997
|
+
|
998
|
+
<li>
|
999
|
+
<a href="http://railstips.org/2008/7/29/it-s-an-httparty-and-everyone-is-invited" title="Viewed 66 times"><strong>66:</strong> It's an HTTParty and Everyone Is Invited! </a>
|
1000
|
+
</li>
|
1001
|
+
|
1002
|
+
<li>
|
1003
|
+
<a href="http://railstips.org/2008/11/20/jquery-on-rails-why-bother" title="Viewed 53 times"><strong>53:</strong> jQuery on Rails: Why Bother? </a>
|
1004
|
+
</li>
|
1005
|
+
|
1006
|
+
<li>
|
1007
|
+
<a href="http://railstips.org/2009/3/23/httparty-example-mymilemarker-com" title="Viewed 52 times"><strong>52:</strong> HTTParty Example: MyMileMarker.com </a>
|
1008
|
+
</li>
|
1009
|
+
|
1010
|
+
<li>
|
1011
|
+
<a href="http://railstips.org/2008/10/14/how-to-generate-pdfs-in-rails-with-prawn" title="Viewed 41 times"><strong>41:</strong> How To Generate PDFs in Rails With Prawn </a>
|
1012
|
+
</li>
|
1013
|
+
|
1014
|
+
<li>
|
1015
|
+
<a href="http://railstips.org/2008/12/12/using-gmail-to-send-email-with-rails" title="Viewed 40 times"><strong>40:</strong> Using Gmail to Send Email With Rails </a>
|
1016
|
+
</li>
|
1017
|
+
|
1018
|
+
<li>
|
1019
|
+
<a href="http://railstips.org/2009/2/21/shoulda-looked-at-it-sooner" title="Viewed 39 times"><strong>39:</strong> Shoulda Looked At It Sooner </a>
|
1020
|
+
</li>
|
1021
|
+
|
1022
|
+
<li>
|
1023
|
+
<a href="http://railstips.org/2008/10/27/using-gmail-with-imap-to-receive-email-in-rails" title="Viewed 35 times"><strong>35:</strong> Using Gmail with IMAP to Receive Email in Rails </a>
|
1024
|
+
</li>
|
1025
|
+
|
1026
|
+
<li>
|
1027
|
+
<a href="http://railstips.org/2008/11/17/happymapper-making-xml-fun-again" title="Viewed 32 times"><strong>32:</strong> HappyMapper, Making XML Fun Again </a>
|
1028
|
+
</li>
|
1029
|
+
|
1030
|
+
</ul>
|
1031
|
+
</div>
|
1032
|
+
</div>
|
1033
|
+
|
1034
|
+
<div class="row">
|
1035
|
+
<div class="cell links" id="more_best_of">
|
1036
|
+
<h3>Best Of <small>in my opinion</small></h3>
|
1037
|
+
<ul>
|
1038
|
+
<li><a href="http://railstips.org/2008/12/24/the-rails-beatitudes">The Rails Beatitudes</a></li>
|
1039
|
+
<li><a href="http://railstips.org/2008/12/1/unless-the-abused-ruby-conditional">Unless, The Abused Ruby Conditional</a></li>
|
1040
|
+
<li><a href="http://railstips.org/2008/6/10/programmers-should-give-up-more-often">Programmers Should Give Up More Often</a></li>
|
1041
|
+
<li><a href="http://railstips.org/2006/11/18/class-and-instance-variables-in-ruby">Class and Instance Variables In Ruby</a></li>
|
1042
|
+
<li><a href="http://railstips.org/2008/8/12/parsing-xml-with-ruby">Parsing XML with Ruby</a></li>
|
1043
|
+
<li><a href="http://railstips.org/2008/10/27/using-gmail-with-imap-to-receive-email-in-rails">Using Gmail with IMAP to Receive Email in Rails</a></li>
|
1044
|
+
<li><a href="http://railstips.org/2008/12/12/using-gmail-to-send-email-with-rails">Using Gmail to Send Email With Rails</a></li>
|
1045
|
+
<li><a href="http://railstips.org/2008/7/29/it-s-an-httparty-and-everyone-is-invited">It's an HTTParty and Everyone Is Invited!</a></li>
|
1046
|
+
<li><a href="http://railstips.org/2008/12/14/deploying-rails-on-dreamhost-with-passenger">Deploying Rails on Dreamhost with Passenger</a></li>
|
1047
|
+
<li><a href="http://railstips.org/2008/12/15/deploying-sinatra-on-dreamhost-with-passenger">Deploying Sinatra on Dreamhost With Passenger</a></li>
|
1048
|
+
<li><a href="http://railstips.org/2008/11/24/gitn-your-shared-host-on">Git'n Your Shared Host On</a></li>
|
1049
|
+
<li><a href="http://railstips.org/2008/11/20/jquery-on-rails-why-bother">jQuery on Rails: Why Bother?</a></li>
|
1050
|
+
</ul>
|
1051
|
+
</div>
|
1052
|
+
|
1053
|
+
<div class="cell links omega">
|
1054
|
+
<h3>Quick Links <small><a href="http://feeds.feedburner.com/railsquicktips/">subscribe to feed</a></small></h3>
|
1055
|
+
<ul id="more_quick_links"></ul>
|
1056
|
+
</div>
|
1057
|
+
</div>
|
1058
|
+
</div>
|
1059
|
+
|
1060
|
+
<div id="footer">
|
1061
|
+
© 2008 John Nunemaker |
|
1062
|
+
<a href="http://orderedlist.com/">Ordered List, Inc.</a>
|
1063
|
+
</div>
|
1064
|
+
</div>
|
1065
|
+
|
1066
|
+
<!-- <script type="text/javascript" src="http://pipes.yahoo.com/pipes/pipe.run?_id=ZoBpbs_c3RG_NLlQpgt1Yg&_render=json&_callback=handleRecentTips"></script> -->
|
1067
|
+
|
1068
|
+
<script type="text/javascript" src="http://pipes.yahoo.com/pipes/pipe.run?_id=FiFM3ant3RG_MFS3dPQQIA&_render=json&_callback=handleRecentTips"></script>
|
1069
|
+
|
1070
|
+
</body>
|
1071
|
+
</html>
|