T
TJ Holowaychuk
tjholowaychuk.com · Personal blog · on HN since 2010
TJ Holowaychuk, author of Express, Jade and other Node.js libraries, writes about his open source projects and software design.
What HN saysHN commenters mainly link his "Components" post, which argues for reusable, composable widgets that bundle front end and back end files, and thank him for his Node work.
26HN people shared it
12linked it in comments
28stories submitted
239story points
10 years agolast shared
2010people per year2026
Most-shared posts
- 1Components8 people · 10 points · first shared 2012 · 1 comments on HN
- 2The Luna programming language2 people · 4 points · first shared 2011 · discussion on HN
- 3Jade: HAML killer for Node.js2 people · 3 points · first shared 2010 · discussion on HN
- 4Express vs Sinatra Benchmarks2 people · 3 points · first shared 2011 · discussion on HN
- 5Connect vs JSGI2 people · 1 points · first shared 2010 · discussion on HN
- 6Express 3.0.0 alpha1 and Express 4.x Roadmap1 people · 51 points · first shared 2012 · 17 comments on HN
- 7The Luna Programming Language1 people · 46 points · first shared 2011 · 31 comments on HN
- 8Node-canvas open sourced1 people · 28 points · first shared 2010 · 7 comments on HN
- 9How I Made $2000 Writing An eBook1 people · 19 points · first shared 2010 · 14 comments on HN
- 10Express.js 3.0 is here1 people · 15 points · first shared 2012 · 3 comments on HN
- 11Connect - Rack for NodeJS1 people · 15 points · first shared 2010 · 1 comments on HN
- 12Jade Templates Introspection1 people · 12 points · first shared 2010 · 1 comments on HN
- 13Nedis: Redis Implemented with Node.js1 people · 7 points · first shared 2011 · discussion on HN
- 14Modular CSS preprocessing with rework1 people · 4 points · first shared 2013 · discussion on HN
- 15Introducing Tobi1 people · 4 points · first shared 2010 · discussion on HN
What HN people wrote when they linked it
joshdickson · 2016-07-10
1) I use Pingdom and hadn't seen Apex. Looks really good. Will definitely switch over.
2) Hey you're TJ Holowaychuk. I know you've since (mostly) moved on from doing a ton of Node contributing, but as someone who uses projects you've started and maintained for a long time, just wanted to say a big thank you for all your work in the open source community.
I'm also going to link your photography site (a) for those who haven't seen it. I know this it's slightly off topic, but everyone should see it.
(a) http://tjholowaychuk.com
MatthewPhillips · 2012-07-27
Can the JavaScript elite please get together and make a decision on Backbone.Events vs. EventEmitter vs. EventTarget?
Also, I recommend everyone read TJ Holowaychuck's latest blog post[1] and lets start distributing these types of things as components instead of "frameworks".
[1]http://tjholowaychuk.com/post/27984551477/components
ilaksh · 2012-08-01
http://tjholowaychuk.com/post/27984551477/components
Those frameworks are great, but they all fail to take advantage of a key advance in software development: the widget.
Reusable, composable GUI components that package front end and back end files together and can be distributed easily as plugins are the next step up in abstraction and superior from a software engineering perspective.
The reason many web developers aren't able to either grasp or accept that is because A) understanding and building those types of components that are truly generic enough to be applicable to a wide variety of applications as well as reusable, has a significant learning curve and is time consuming and B) the better you are at it, the less likely you are to get credit for your programming skills, because unfortunately if you can build an application without typing colorful ASCII text, then you didn't do any programming and aren't a programmer.
To get past B) we just need to redefine what programming is, and also grow up a little. Also realize that even if you are programming with GUI components, you still have to create new components sometimes, so you are still programming and still a programmer.
I have a very early rough draft system that I am throwing together on my own, mostly because very few people seem to be able to appreciate these concepts. Or the ones that do are happy to use existing systems like ASP.NET or…
zenocon · 2013-05-26
There are other people in the community working towards similar goals (have been for a while) http://tjholowaychuk.com/post/27984551477/components
kreutz · 2012-09-10
dreamdu5t · 2012-09-09
You should release these as web components for better modularity and interoperability:
http://tjholowaychuk.com/post/27984551477/components
https://github.com/component/spec/wiki
karterk · 2012-02-26
Slightly tangential to the post, but Mocha produces really awesome test coverage report too:
http://tjholowaychuk.com/post/18175682663/mocha-test-coverage
shapeshed · 2011-12-18
performance benchmark using the same ab tests for node http://tjholowaychuk.com/post/543953703/express-vs-sinatra-benchmarks
weixiyen · 2011-01-16
The most important for me is better syntax. This is what haml should have been and I fully expect it to replace haml after it gets ported into other languages. After writing with both, it was an easy choice honestly.
It's also got a couple extra features, but haml could match it.
Read more here: http://tjholowaychuk.com/post/759178288/jade-haml-killer-for-nodejs
tyweir · 2010-06-20
And here is TJ Holowaychuk's response to Zyp's article:
http://tjholowaychuk.com/post/698591492/connect-vs-jsgi
stdbrouw · 2012-09-10
An unopinionated approach like Bower is probably what the (client-side) JavaScript ecosystem needs, but all the same, what's lacking here is a philosophy.
What I mean: if I'm just using jQuery and two or three other JavaScript libraries, downloading those manually isn't a big ordeal, they're single files, already minified for my convenience, available on a public CDN if I want to use that in production, they usually have no dependencies themselves and I'm only inclined to update them to newer version if something doesn't work, which is hardly ever. All of these things make package management for the server a godsend but package management for the client sort of... meh.
Ender, on the other hand (and for all its flaws) does a good job of explaining how you can use it to approach libraries for the client more like you'd approach them on the server: tiny packages that do one thing well and that don't reinvent the wheel but where applicable build on existing libraries. Now that sounds like something I can get behind.
Similarly, if you read TJ Holowaychuk's ideas on package management in the browser (linked to by kreutz below, or at http://tjholowaychuk.com/post/27984551477/components) then you start to get an idea of, yeah, maybe it'd be cool to have these packages that are little bundles of HTML, CSS and JavaScript and together they make up a single interface element or something of the sort -- included in your project as-needed. Fascinating.
Bower, by comparison, sounds…