HackerTube
HomeLongsLikedHistoryWatch laterCategoriesPlaylistsSettings

Hammock Driven Development - Rich Hickey

ClojureTV12 HN recommenders · recommended in 11 months, 2014-2024
YouTube
333K views · 13 years ago · talk · evergreen

Rich Hickey's philosophical talk from the first Clojure Conj in 2010. He argues that good design comes from deliberate, away-from-keyboard thinking, and describes how to feed the background mind so it solves problems.

HN returns to it constantly as permission and method for thinking deeply before coding, and as an antidote to always-working anxiety.

Functional programmingSoftware architecture & designProductivity & self-improvement#richhickey#clojure#design#deepthinking#softwarecraftsmanship#productivity

20 comments from Hacker News

@juunpp2024 · in “The brain simulates actions and their consequences during REM sleep”

Hammock-driven development is a thing: ▶ this video I think anyone can experience this even if you're unaware of the science behind it. The brain during sleep can also connect seemingly disconnected things in ways that your daily logical process would have a lot of trouble with. That's why things seem to "click" when you wake up from sleep. If your daily thinking is a gradient descent, your sleep thinking is a flood from all points and in all directions. But I don't have any science refs on this; just my experience.

CitesView on HN
@tomjakubowski2024 · in “Third Time: a better way to work (2022)”

Hammock driven development ▶ this video When I worked in an office I'd get up and go on walks, or move to a sofa and let the problem simmer a bit, several times a day. I've been fortunate to work in companies which seem to, I think, recognize these are productive activities

CitesView on HN
@fuzztester2023 · in “Why Is Jepsen Written in Clojure?”

sorry guys, i don't know clojure, so i'll write this script in my favorite programming language: #/usr/bin/english if clojure is mentioned, can rich hickey be far behind? and if rich is mentioned, can this video of his be far behind? methinks not. lo, and behold, said video: ▶ this video

JokeView on HN
@yesenadam2023 · in “Creation happens in silence”

He gave a well-known talk with that name - Hammock Driven Development , Rich Hickey, Closure Conj 2010 ▶ this video

CitesView on HN
@stoeckley2022 · in “What “work” looks like”

Rich Hickey talks about this, calling it "hammock-driven development." ▶ this video Aaron Sorkin has also touched on this: > Most of the time, me writing looks—to the untrained eye—like someone watching ESPN. The truth is if you did a pie chart of the writing process, most of the time is spent thinking. When you’re loaded up and ready to go—when you’ve got that intention and obstacle for the first scene that’s all you need. For me at least, getting started is 90% of the battle. The difference between page zero and page two is all the difference in the world.

CitesView on HN
@rektide2022 · in “The Parable of Two Programmers (2012)”

What a tale. This is such a key insight, such a core lesson on how the world tends to work. > At his next salary review Charles was given a raise which was about half the inflation over the period. He was not given a promotion. After about a year he became discouraged and left Consolidated. To be fair to Alan, spinning up an organization & knowledge system is real hard work. Legitimizing your projects is real hard work. But there's such tension over who steers, over how the work happens, and there's so many really good solid workers who slip through the cracks & never get appreciated. The corporate body is so often so very far away from the workers on the edge, sees the faults and problems, incompetent at appreciating and respecting many of the best acts done for it. Thanks for the share. This is a great article. I see a lot of relationships to other submissions. Jonathan Blow talking about work-life balance has some relationship here, on how we exert ourselves ( link link ). The "midlife crisis of a programmer" seems ultra-pertinent ( link link , 2 comments). "Hammock-driven development" made the rounds against ( ▶ this video link ). All of these deal with questions of time-base & commitment & application, all of these feel like they could be informed by The Parable. Worth pointing out that the parable is reportedly from (1985)! It's somewhat confirming to hear the struggles of the lowly engineer to get work done & fit in are not new.

CitesView on HN
@the-alchemist2021 · in “Ask HN: Are most of us developers lying about how much work we do?”

Rich Hickey, of Clojure fame, has a talk you might find interesting. It goes by multiple titles: * Step Away from the Computer * Hammock-Driven Development ▶ this video The idea / hypothesis is that sometimes we need to sit down and think about something for an hour, a day... This seemingly "wasted time" can pay huge dividends in long-term health of a project. Like compound interest. As others have noted, this may seen "lazy" to managers, especially if LOC or sprint velocity is the metric they use.

RecommendsView on HN
@bhntr32020 · in “Ask HN: Did you take any fresh MOOCs as of 2020?”

In terms of mind-expanding or intellectually stimulating, I find it's easier to get that from Youtube. I recommend: 3blue1brown for math ( link ) Everyday Astronaut if you are casually interested in rockets ( link ) Bret Victor ( link ) or Rich Hickey ( ▶ this video ) for programming and design. Doing a full college course is such a time investment and it usually takes a few weeks to start proving the interesting stuff. I find it more fun to look to shorter content for inspiration. I might realize I don't understand the fundamentals of the topic and then seek out a way to study it.

RecommendsView on HN
@jugjug2020 · in “Ask HN: How does one becomes a pro at Software Engineering”

I think a good starting point is to integrate the principles described in the Simple Made Easy[1] & Hammock Driven Development[2]. These are overarching first principles that help in designing and writing code, but also in communication & team work. [1]: link [2]: ▶ this video

RecommendsView on HN
@sgentle2020 · in “Ask HN: I feel like I should be working all the time and its killing me”

The feeling you're describing is called anxiety. Some anxiety is normal, but constant anxiety that interferes with your life is a problem. I think it'd be worth trying that label on: call it anxiety, and ask "how do I reduce my anxiety?". About 1 in 4 people experience an anxiety disorder at some point in their lives, so there's a lot of research and good approaches out there. One thing that stands out to me is that you've made some pretty big and scary claims without a lot of evidence to back them up. Are you actually not a good developer? Are smart people really "capturing" the opportunity (ie there is less opportunity over time)? Do people who aren't working all the time fall behind and never make anything of significance? If so, prove it! Figure out what evidence you would need to definitively answer these questions, and research or experiment until you have that evidence. Anxious thoughts are like dreams: they seem perfectly reasonable in your head, but when you try to bring them into the real world they fall apart. As far as evidence goes, I'd point you in the direction of two of my favourite Richards. The one who did Clojure: ▶ this video and the one who got a Nobel for Quantum Electrodynamics: link

RecommendsView on HN
@greenyouse2019 · in “Ask HN: Does being practical act as a hinderance to one’s imagination?”

Nobody's stupid because they're not sure about something. It's totally cool to ask for help or opinions when you're thinking through a hard problem. To answer your question you should understand what creativity and practicality mean in your context. I would generally think that being practical and creative aren't at odds with each other. When working through a problem for work I tend to err on the side of practicality. We could be coming up with a new way to do data transformations, building out distributed tracing tools, or trying a new way of scaffolding our projects. Each of those solve a real problem and have practical implications. They also require creative thinking to imagine and design new tools and workflows. These projects are practical in the sense that they need to solve an actual problem (e.g. deliver a net benefit to customer UX or development velocity). Contrary to how they sound, they often aren't obvious projects to take on or straight-forward solutions. It usually required days or weeks of lateral thinking to cook up one of these. In this context, creative thinking complimented practical thinking and produced a better result than one of those modes taken in isolation. Sometimes it's helpful to circle around the problem you think you want to solve to better understand what your actual problem is. Be careful reading other's ideas since it will affect the way in which you see the problem. Your view of the problem may be skewed after reading other information. O

CitesView on HN
@valw2018 · in “Readme-Driven Development (2010)”

This makes me think of Rich Hickey's Hammock Driven Development: ▶ this video - "Stay away from the computer" - Start by asking: "what is the problem?"

RecommendsView on HN
@digaozao2017 · in “Streams: a new general purpose data structure in Redis”

I like this kind of development also. But I don't think it is for everyone (the person has to keep thinking on the problem for long time). A good talk about It, from the creator of clojure: ▶ this video

RecommendsView on HN
@udfalkso2017 · in “Lecture on Creativity (1991)”

I have loved this talk for some time and have forced everyone at my company to watch the video. I found a lot of parallels with this "Hammock Driven Development" talk by Rich Hickey: ▶ this video They both seem to suggest that you have to put in the effort, do the hard work and dig into the problem deeply. But then when you hit a wall, you should take a break. Relax. Play. Sleep. It is often during this "open" minded stage when the solution comes.

RecommendsView on HN
@abc_lisper2016 · in “Ask HN: How many programmers out there keep a paper notebook for their projects?”

I was searching for exactly the same stuff yesterday, and I found this: link I usually keep notebooks, but I am ever more convinced of using one because of Rich hickey's talk: ▶ this video and we have a better chance of remembering something if we write than type. link . I have previously read that people like Martin Gardner had an awesome system of keeping notes. I would love to know more about your tips. How do keep your notes? How do you organize stuff, while retaining the freedom to doodle. How do you find stuff again(which is the killer feature for typed notes). Would love to learn from the masters - do you have any books to recommend?

RecommendsView on HN
@hire_charts2016 · in “Rich Hickey Fanclub”

That and Hammock Driven Development: ▶ this video Both of these talks are in my top 5. Edit (okay, here are the other 3): * All the Little Things by Sandi Metz link * Programming is terrible—Lessons learned from a life wasted. link * Some talk I saw by Dan McKinley on making Data-Driven decisions. I can't find the original video, but here's a really similar one: link

Strongly recommendsView on HN
@dyadic2016 · in “Building a Startup in 45 Minutes per Day While Deployed in Iraq”

This is very similar to what Rich Hickey (creator of Clojure) talks about when he talks about Hammock Driven Development, I recommend watching him talking about it here: ▶ this video

RecommendsView on HN
@lgas2015 · in “Rich Hickey's Clojure Bookshelf”

This was a joke, the only out of stock item on the list is the Hammock at the bottom. This is a reference to Rich's talk "Hammock Driven Development": ▶ this video

JokeView on HN
@bjwbell2015 · in “Stanford study shows success of different programming styles in CS class”

"don't get stuck" reminds me of the feynman method of problem solving: 1. Write down the problem. 2. Think very hard. 3. Write down the answer. Rich Hickey's Hammock Driven Development, ▶ this video , is IMO very good for actually not getting stuck in a bad place problem solving.

RecommendsView on HN
@cageface2014 · in “The End of Agile: Death by Over-Simplification”

This is a classic and hilarious series of posts on the foolhardiness of the TDD approach to software design: link Personally I prefer Rich Hickey's "Hammock Driven Development": ▶ this video

RecommendsView on HN
Expert to Expert: Rich Hickey and Brian Beckman - Inside Clojure53:56

Expert to Expert: Rich Hickey and Brian Beckman - Inside Clojure

jasonofthel33t
119K views • 13 years ago
Effective Programs - 10 Years of Clojure - Rich Hickey1:14:52

Effective Programs - 10 Years of Clojure - Rich Hickey

ClojureTV
176K views • 9 years ago
"Design in Practice" by Rich Hickey1:00:46

"Design in Practice" by Rich Hickey

ClojureTV
65K views • 3 years ago
The Language of the System - Rich Hickey1:02:50

The Language of the System - Rich Hickey

ClojureTV
174K views • 13 years ago
Clojure for Lisp Programmers Part 1 - Rich Hickey1:28:59

Clojure for Lisp Programmers Part 1 - Rich Hickey

ClojureTV
25K views • 13 years ago
"Simple Made Easy" - Rich Hickey (2011)1:01:39

"Simple Made Easy" - Rich Hickey (2011)

ClojureTV
434K views • 5 years ago
Are We There Yet - Rich Hickey1:10:05

Are We There Yet - Rich Hickey

Zhang Jian
24K views • 7 years ago
"Simple Made Easy" - Rich Hickey (2011)1:01:39

"Simple Made Easy" - Rich Hickey (2011)

Strange Loop Conference
219K views • 5 years ago
Clojure Concurrency - Rich Hickey2:32:39

Clojure Concurrency - Rich Hickey

ClojureTV
73K views • 13 years ago
Spec-ulation Keynote - Rich Hickey1:16:14

Spec-ulation Keynote - Rich Hickey

ClojureTV
135K views • 9 years ago
Rich Hickey rants about HttpServletRequest in 1080p: Death By Specificity from Clojure Made Simple4:57

Rich Hickey rants about HttpServletRequest in 1080p: Death By Specificity from Clojure Made Simple

Fred Overflow
43K views • 6 years ago
Clojure for Java Programmers Part 1 - Rich Hickey1:48:13

Clojure for Java Programmers Part 1 - Rich Hickey

ClojureTV
131K views • 13 years ago
Maybe Not - Rich Hickey1:03:29

Maybe Not - Rich Hickey

ClojureTV
181K views • 7 years ago
Solving Problems the Clojure Way - Rafal Dittwald1:02:26

Solving Problems the Clojure Way - Rafal Dittwald

Clojure/north
87K views • 7 years ago
Rich Hickey: Deconstructing the Database1:06:24

Rich Hickey: Deconstructing the Database

InfoQ
106K views • 14 years ago
Simplicity Ain't Easy - Stuart Halloway50:01

Simplicity Ain't Easy - Stuart Halloway

ClojureTV
24K views • 13 years ago
Bottom Up vs  Top Down Design in Clojure - Mark Bastian36:42

Bottom Up vs Top Down Design in Clojure - Mark Bastian

ClojureTV
29K views • 10 years ago
Tim Ewald - Clojure: Programming with Hand Tools58:39

Tim Ewald - Clojure: Programming with Hand Tools

ClojureTV
48K views • 12 years ago
"Transducers" by Rich Hickey45:00

"Transducers" by Rich Hickey

Strange Loop Conference
116K views • 12 years ago
clojure.core/typing - Matt Adereth35:41

clojure.core/typing - Matt Adereth

ClojureTV
40K views • 10 years ago