HN user

jbr

396 karma

https://jbr.me

[ my public key: https://keybase.io/jbr; my proof: https://keybase.io/jbr/sigs/ay9Ew0uq18nLLvvi_rFYnpjPdtpNgQ7Yht3tTxUA73g ]

Posts29
Comments107
View on HN
ferritin.rs 6d ago

Show HN: Ferritin, a new front end for Rust docs, built on rustdoc JSON

jbr
3pts0
zackhobson.com 12y ago

Detached for Mac

jbr
2pts0
gist.github.com 12y ago

Demonstration of a monad comprehension macro in Sibilant

jbr
2pts0
www.wired.com 13y ago

Facebook Tackles (Really) Big Data With ‘Project Prism’ (2012)

jbr
43pts10
www.akuaku.org 15y ago

Thoughts on turntable.fm

jbr
2pts0
www.dezeen.com 15y ago

Minimalist renditions of international brands

jbr
26pts20
googlecode.blogspot.com 15y ago

Google Instant Previews: Images as JSONP data URIs

jbr
3pts0
wiki.darkpatterns.org 15y ago

Dark Patterns: User interfaces designed to trick people

jbr
1pts0
almaer.com 15y ago

"Node is our turtle shell" - node on webos

jbr
2pts0
newsbasis.com 15y ago

NewsBasis is hiring

jbr
2pts2
news.ycombinator.com 15y ago

Ask HN: Looking for examples of excellent job postings

jbr
8pts3
newsbasis.com 15y ago

Watch us crawl the news in realtime

jbr
3pts8
unsuck-it.com 15y ago

Unsuck It - translate business jargon

jbr
41pts23
www.quora.com 15y ago

How will Dremel change future Hadoop releases?

jbr
2pts0
newsbasis.com 15y ago

We just launched NewsBasis. What do you think?

jbr
1pts1
mihai.bazon.net 16y ago

Writing a Redis client library for Node.js

jbr
9pts3
blog.i2pi.com 16y ago

Engineering vs Architecture

jbr
1pts0
github.com 16y ago

Node.js + Resque = crazy delicious

jbr
21pts1
aliasaria.ca 16y ago

I Dislike Professional Startup Advisors

jbr
1pts0
news.ycombinator.com 16y ago

Ask HN: How do you recommend things to your friends?

jbr
3pts5
videolectures.net 16y ago

Statistical Learning as the Ultimate Agile Development Tool (Peter Norvig)

jbr
62pts8
www.jacobrothstein.com 16y ago

Another perspective on pair programming: Hackers vs Engineers

jbr
4pts3
www.jacobrothstein.com 16y ago

Trading Fours: A proposed panel blogging system

jbr
1pts0
www.ossp.org 16y ago

A Spidermonkey-based CLI REPL for Javascript

jbr
2pts0
www.crunchgear.com 17y ago

The Song of the PowerSquid

jbr
1pts0
news.ycombinator.com 17y ago

Ask HN: Good tutorials on non-spammy PR/Marketing

jbr
8pts9
www.stormweight.com 17y ago

HN, Please Review My Startup: Stormweight.com

jbr
10pts46
www.productdesignhub.com 17y ago

Bringing a (physical) product to market — 6 tips

jbr
2pts1
radar.oreilly.com 17y ago

Name an emerging movement

jbr
1pts0

This looks like a really cool project/language. How do I build it? Does it build on OS X?

--

I'd love to "watch" the project on github, but alas it's stranded on the island of google code. Check out this [1] basho blog entry on why they chose github over bitbucket — most of the reasoning applies to google code as well. I'm not affiliated with github, by the way, just a happy user.

For a project like this, the concept of "watchers" isn't a vanity metric. I've been working on a lisp->javascript language and have found github watchers to be surprisingly motivating and encouraging.

[1] http://blog.basho.com/2010/11/11/a-few-more-details-on-why-w...

I'm most impressed with how progressively "upmarket" they become. You could charge multiples more for the minimal version in a different context.

As muji [1] is to a department store, the appropriate store for these would be to a supermarket.

I'm also reminded of the quote "Simplicity is the ultimate sophistication" (da vinci?)

[1] http://muji.us

Thanks, Evan! I actually disagree about production use, with similar reasoning to Travis Swicegood's answer about coffeescript in production [1]. Since sibilant is just a source-to-source compiler, it's as production-ready as Node.js or client-side javascript is. The output javascript from sibilant is fairly plain and readable and encourages a particular subset of javascript's features. The language is under active development, but Node's API is also changing. I've been hacking on sibilant since late June and believe it to be sufficiently expressive, although it can always get better.

---

[1] http://www.quora.com/Should-I-use-CoffeeScript-for-more-than... .

Pivotal labs does this by offering everyone free catered breakfast at the start of the day. As I understand it, the motivation was to synchronize everyone's lunch hunger so half of a pair-programming team wasn't hungry earlier because they hadn't eaten lunch but their pair had. It also served to mitigate mid-afternoon food-coma somewhat.

Oh: ride public transit. Notice that it runs on time, is fairly easy to understand, and is clean. There's a sky tram, a light rail, a streetcar, and an extensive bus system. Everything is free downtown in the fareless square.

Lived in Portland for 7 years (went to school in SE, Reed College). Hence, nostalgia dump:

When I left for the bay area a few years ago, NE Alberta and North Portland were picking up inertia. If you're into coffee, try Albina Press.

The lucky lab on SE Hawthorne (close in) is a Great pub and I'm not much of a pubgoer.

Eat street food. The Portland street food scene makes the mission district look behind the times.

Get some tea in the teahouse in the Chinese gardens (right downtown). It's often overlooked by Portlanders, but the Chinese gardens are really quite wonderful. The tea menu is run by the Tao of Tea, which is one of the better tea importers in America.

Check out the nickel arcade (wonderland, I think it's called) on SE Belmont.

Powells & Powell's Technical. If you're a book person, set aside at least half a day for this. Read some books in the cafe. Hang out a while - there's no better book store in America (including the strand - nyc, moe's - berkeley, serendipity, etc)

I know I'm disagreeing with other posters, but avoid the pearl like the plague. It's the least "truly portland" and is for people from other cities who are looking for shiny glass highrises and warehouses. Everything is more expensive and upscale. Similarly, NW 23rd and 21st have a distinctly "east coast haven" flavor. Go to NYC or SF for that, enjoy portland for what it does best — the quirky stuff that you can't get elsewhere, and there's plenty of that.

Speaking of quirky, get a doughnut in the middle of the night at voodoo.

Check out the saturday market (sat and sun), if it's running when you're in town. Another uniquely portland experience, but you probably won't buy anything.

Beers: Hair of the dog, rogue, lucky lab. Try something on cask or nitro if you haven't lived in a place that really geeks out on beer.

There's a lot of causal ambiguity in this article, particularly due to the fact that no small percent of millionaires likely come into wealth by way of inheritance or marriage. For example, the author cites the presence of 350k millionaire teachers as contradicting the statement "you won't get rich as a teacher." "get rich" implies causality, but "are rich" (the cited fact) does not.

But yeah, conspicuous consumption is tacky.

I don't recall the urls - I was recursively crawling from a user-provided seed url and had trouble with apricot, node-xml, and libxmljs. I had the least time to play w/ libxmljs because of hassle w/ joyent --- I had to compile v8 and node to link against and scons wasn't playing nice w/ the build environment.

--

Edit: I should add that I'm using libxmljs in production (http://newsbasis.com/news) as an rss parser (streaming sax-push-parser) and it works quite well for that sort of xml.

I've been programming since middle school and I'm now almost 30 and I google all the time. There's too much to remember, and I wouldn't want to burden my memory with too many specifics. I try to focus on remembering generic patterns, since those are far harder to search for.

What are you using for server side dom manipulation? jsdom? apricot? node-xml? libxmljs? I spent a lot of the weekend working on a webcrawler, but couldn't find a xml parser that didn't choke on the internet-at-large.

Any chance you'd consider open-sourcing?

Haven't built in much monitoring yet, but watching the resque web interface, most of the delay is in actually finding the new page - from there to it showing up on your screen is no more than a second or two. For subscribed users, we do email notifications and we almost always beat google news alerts, often by around 15 minutes.

Sure. This probably will turn into a blog entry, but here's the gist:

  4 medium sized linodes, divided as follows:
  1 app:    unicorn (rails), nginx
  1 db:     redis, solr, mysql
  2 worker: resque workers (both ruby/rails node.js) & the crawler
The crawler is written in node.js, backed by redis. When it finds a new page, it downloads it to shared local storage and adds a task to a resque queue monitored by the rails workers. They add a row to a mysql table that represents the permanent record of the page, use nokogiri to extract the body content and any metadata, index it into solr, delete the local copy, and upload the page to an s3 archive. When you request the page, rails asks solr.

As the author of sibilant: A) it was/is fun B) I don't want to be dependent on another language — sibilant is entirely self-hosting, like coffeescript. Additionally, I don't want to be constrained to pure lisp. I'd like for sibilant to evolve into a language that incorporates the best elements of lisp and javascript. Since sibilant is written in sibilant, there's no dependence on pure lisp and the language can evolve in its own direction.

There's something satisfyingly elegant about using an interpreted language to interpret another language - macros can actually modify the compiler at compile-time, from within the language. I hope to make more use of this possibility in the future, as it's currently only used for macros.

Along those lines, I've settled on the following overly permissive regex: /^[^\s@]+@[^\s@]+\.[^\s@]{2,}$/ -- it makes sure it looks something like an email address (a@b.cd)