Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 66 lines (36 sloc) 9.281 kB
993e5a0 Added a license
Reg Braithwaite authored
1 Homoiconic
2 ---
2b8b68e launched!
Reg Braithwaite authored
3
6130562 @raganwald
raganwald authored
4 [Homoiconic](http://github.com/raganwald/homoiconic/) is an experiment in publishing code and words about code on a small scale. When I write, I add files to the homoiconic git repository, organized by date. Code is included in the posts and also in the folder with the posts that discuss them, so it's easy to download what you like. You can even download the entire site as an archive!
6cd4a0c @raganwald Expanded the home page to include a little more exposition about why …
raganwald authored
5
6130562 @raganwald
raganwald authored
6 Homoiconic is really simple: *Snippets of code and words about snippets of code*. I am avoiding words by themselves. And the words exist to amplify and explain the code, rather than the code existing to illustrate the words. This is the opposite of most of the posts you find on traditional (circa 2004) blogs.
0ce7ee9 @raganwald Re-organized again to emphasize how to read and follow homoiconic.
raganwald authored
7
6aeb032 @raganwald
raganwald authored
8 **what can I read right now?**
9
777f514 @raganwald
raganwald authored
10 Asking me what to read is like asking the chef what's good on the menu. It's all excellent, of course! That being said, I have a few personal favourites:
6aeb032 @raganwald
raganwald authored
11
12 * [Optimism](http://github.com/raganwald/homoiconic/blob/master/2009-05-01/optimism.md#readme)
13 * [Elegance and the Surreals](http://github.com/raganwald/homoiconic/blob/master/2009-03-07/surreal.md#readme)
58ddf1e @raganwald Merge branch 'master' of git@github.com:raganwald/homoiconic
raganwald authored
14
15 My series on combinators: [Kestrels](http://github.com/raganwald/homoiconic/tree/master/2008-10-29/kestrel.markdown#readme), [The Thrush](http://github.com/raganwald/homoiconic/tree/master/2008-10-30/thrush.markdown#readme), [Songs of the Cardinal](http://github.com/raganwald/homoiconic/tree/master/2008-10-31/songs_of_the_cardinal.markdown#readme), [Quirky Birds and Meta-Syntactic Programming](http://github.com/raganwald/homoiconic/tree/master/2008-11-04/quirky_birds_and_meta_syntactic_programming.markdown#readme), [Aspect-Oriented Programming in Ruby using Combinator Birds](http://github.com/raganwald/homoiconic/tree/master/2008-11-07/from_birds_that_compose_to_method_advice.markdown#readme), [The Enchaining and Obdurate Kestrels](http://github.com/raganwald/homoiconic/tree/master/2008-11-12/the_obdurate_kestrel.md#readme), [Finding Joy in Combinators](http://github.com/raganwald/homoiconic/tree/master/2008-11-16/joy.md#readme), [Refactoring Methods with Recursive Combinators](http://github.com/raganwald/homoiconic/tree/master/2008-11-23/recursive_combinators.md#readme), [Practical Recursive Combinators](http://github.com/raganwald/homoiconic/tree/master/2008-11-26/practical_recursive_combinators.md#readme), [The Hopelessly Egocentric Blog Post](http://github.com/raganwald/homoiconic/tree/master/2009-02-02/hopeless_egocentricity.md#readme), and [Wrapping Combinators](http://github.com/raganwald/homoiconic/tree/master/2009-06-29/wrapping_combinators.md#readme).
6aeb032 @raganwald
raganwald authored
16
777f514 @raganwald
raganwald authored
17 **how to subscribe**
0ce7ee9 @raganwald Re-organized again to emphasize how to read and follow homoiconic.
raganwald authored
18
6130562 @raganwald
raganwald authored
19 I tag new posts in [del.icio.us](http://delicious.com/raganwald/homoiconic "Homoiconic Bookmarks on Delicious"). You can subscribe to [an RSS feed that will alert you when I manually tag a new post](http://feeds.delicious.com/v2/rss/raganwald/homoiconic "Homoiconic Bookmarks Feed").
0ce7ee9 @raganwald Re-organized again to emphasize how to read and follow homoiconic.
raganwald authored
20
21 If you're into git and like fine-grained updates, you can follow [homoiconic](http://github.com/raganwald/homoiconic) here on GitHub or [subscribe to commit messages](http://github.com/feeds/raganwald/commits/homoiconic/master "Recent Commits to homoiconic") letting you know what I've added or updated in your feed reader. The latter option is likely to be moderate volume, as I like to make edits and corrections as I go.
22
23 **advocacy-free**
993e5a0 Added a license
Reg Braithwaite authored
24
97b91f4 minor edit
Reg Braithwaite authored
25 My writing used to be heavily philosophical, with lots of advocacy and questioning. I still consider the _why_ of things much more meaningful than the how, but it's time to focus on the how rather than the why. I'm making this little writing place a "no trolling zone." I will try to avoid preaching, and the obvious corollary is that I will also avoid worrying about whether people agree or disagree. Instead, I will try to simply share little pieces of code as it comes to me.
2b8b68e launched!
Reg Braithwaite authored
26
6cd4a0c @raganwald Expanded the home page to include a little more exposition about why …
raganwald authored
27 There is no advocacy on here. I frequent a few scuba diving forums. One annoying part of scuba culture is that it can be very polarizing. A bunch of people over here say there is only One True Way to dive, right down to using the exact same equipment as each other. Another bunch of people over there disregard the conventional wisdom and choose to dive solo, attracting criticism from young and old. The forums discovered a long time ago that running flame wars simply drove members away, so they have instituted "no trolling" zones within their boards, places where people can discuss the _how_ of solo diving, or sidemounting, or DIR, without getting into a battle of whether such a thing is a good idea or not.
28
777f514 @raganwald
raganwald authored
29 So, one of the reasons there is no advocacy is that I am hoping to increase the signal-to-noise ratio. That being said, what is noise to one person is music to another, so I have no problem with people using their blogs or community sites like [Hacker News](http://news.ycombinator.com) to express their feelings.
6cd4a0c @raganwald Expanded the home page to include a little more exposition about why …
raganwald authored
30
31 The other reason there is no advocacy is that I am invoking the "Transit Cop Cop-Out" on myself:
32
33 > I used to commute into Toronto on the GO train. They have an honour system: you can buy a monthly pass or purchase tickets that you punch yourself before boarding. Roving transit cops check your ticket, and if you didn't punch it you get a $90 fine. Of course, the miscreants have a litany of excuses "I forgot," "I left my pass in my other tuxedo," and so forth.
34
35 > When you ride every day you get to know the cops well. One of them told me that he had a policy of letting people off Scot-free if they told him a story he hadn't heard before. He told me that the last novel excuse he had heard was from a woman who claimed her nails were too wet to reach into her bag, remove the ticket, and punch it before boarding. Nice. He said he let her off on the grounds of novelty and chutzpah.
36
9b1c9fe @raganwald no more weblog.raganwald.com!
raganwald authored
37 I have already said a number of things about [abstractions](http://raganwald.com/2007/07/abbreviation-accidental-complexity-and.html "Abbreviation, Accidental Complexity, and Abstraction"), [functional programming](http://raganwald.com/2007/03/why-why-functional-programming-matters.html "Why Why Functional Programming Matters Matters"), [meta-programming](http://raganwald.com/2008/07/my-analyst-warned-me-but.html "My analyst warned me, but metaprogramming was so beautiful I got another analyst"), [metaprogramming again](http://raganwald.com/2008/03/spaghetti-western-coding.html "Spaghetti-Western Coding"), [brevity](http://raganwald.com/2007/12/golf-is-good-program-spoiled.html "Golf is a good program spoiled"), and [much more](http://delicious.com/raganwald/raganwald.popular "Popular posts from raganwald.com"). But I don't want to say any more on subjects like these until I can think of something *novel*. It may be awhile. In the meantime, share and enjoy.
993e5a0 Added a license
Reg Braithwaite authored
38
6aeb032 @raganwald
raganwald authored
39 **comments?**
40
41 At the moment, there are no comments. This is a blog about code, not words. I welcome bug reports and other code-centric feedback by email. I would be delighted to post your snippets and examples. And you know... This is hosted on [Github](http://github.com). So you can always fork my unblog, commit an update, and send me a pull request.
6cd4a0c @raganwald Expanded the home page to include a little more exposition about why …
raganwald authored
42
6aeb032 @raganwald
raganwald authored
43 That is a lot more work than just submitting a comment. I'm sorry, it's a trade-off. I lose a lot of good feedback, but I also shed myself of a damaging temptation to pander to the crowd. When blogs become "conversations," they also tend to converge on a common group-think. All I can tell you is that if you have a change you want to make or an observation you want to add, go ahead and make it.
6cd4a0c @raganwald Expanded the home page to include a little more exposition about why …
raganwald authored
44
0ce7ee9 @raganwald Re-organized again to emphasize how to read and follow homoiconic.
raganwald authored
45 **credit where credit is due**
2b8b68e launched!
Reg Braithwaite authored
46
993e5a0 Added a license
Reg Braithwaite authored
47 I originally set up a blog at homoiconic.com, but I spotted [David Baldwin's blog](http://github.com/bilson/blog/tree/master), and I knew right away that a blog that is about the how of code ought to be hosted on Github.
48
ffb1e85 @raganwald fixed links
raganwald authored
49 I am [Reg Braithwaite](http://braythwayt.com/). You can reach me by email. My first name is `reg`, and that works fine for sending email to `braythwayt.com`. I look forward to hearing from you.
993e5a0 Added a license
Reg Braithwaite authored
50
7d4a695 @raganwald dasherize the mores
raganwald authored
51 ---
f69ce70 @raganwald Link to the book
raganwald authored
52
8c4fb37 @raganwald My recent work
raganwald authored
53 My recent work:
54
f9d4487 @raganwald allongé
raganwald authored
55 ![](http://i.minus.com/iL337yTdgFj7.png)[![JavaScript Allongé](http://i.minus.com/iW2E1A8M5UWe6.jpeg)](http://leanpub.com/javascript-allonge "JavaScript Allongé")![](http://i.minus.com/iL337yTdgFj7.png)[![CoffeeScript Ristretto](http://i.minus.com/iMmGxzIZkHSLD.jpeg)](http://leanpub.com/coffeescript-ristretto "CoffeeScript Ristretto")![](http://i.minus.com/iL337yTdgFj7.png)[![Kestrels, Quirky Birds, and Hopeless Egocentricity](http://i.minus.com/ibw1f1ARQ4bhi1.jpeg)](http://leanpub.com/combinators "Kestrels, Quirky Birds, and Hopeless Egocentricity")
4479986 @raganwald More recent work!
raganwald authored
56
f9d4487 @raganwald allongé
raganwald authored
57 * [JavaScript Allongé](http://leanpub.com/javascript-allonge), [CoffeeScript Ristretto](http://leanpub.com/coffeescript-ristretto), and my [other books](http://leanpub.com/u/raganwald).
21fcc00 @raganwald redirect to allong.es
raganwald authored
58 * [allong.es](http://allong.es), practical function combinators and decorators for JavaScript.
17be325 @raganwald revised footers
raganwald authored
59 * [Method Combinators](https://github.com/raganwald/method-combinators), a CoffeeScript/JavaScript library for writing method decorators, simply and easily.
4f7cce6 @raganwald githiub
raganwald authored
60 * [jQuery Combinators](http://github.com/raganwald/jquery-combinators), what else? A jQuery plugin for writing your own fluent, jQuery-like code.
f69ce70 @raganwald Link to the book
raganwald authored
61
16fa4bb @raganwald separated .sig
raganwald authored
62 ---
63
b2b5c4a @raganwald shuffle
raganwald authored
64 (Spot a bug or a spelling mistake? This is a Github repo, fork it and send me a pull request!)
65
ffb1e85 @raganwald fixed links
raganwald authored
66 [Reg Braithwaite](http://braythwayt.com) | [@raganwald](http://twitter.com/raganwald)
Something went wrong with that request. Please try again.