Slava Akhmechet
defmacro.org · Personal blog · on HN since 2007
Slava Akhmechet, co-founder of RethinkDB, writes about Lisp, functional programming, startups, and engineering management.
What HN saysCommenters recommend his Lisp essay highly, and note his own caveat that the older posts come from a more naive time.
169HN people shared it
95linked it in comments
111stories submitted
7.5Kstory points
8 months agolast shared
2007people per year2026
Most-shared posts
- 1The Nature of Lisp54 people · 674 points · first shared 2007 · 91 comments on HN
- 2Functional Programming For The Rest of Us17 people · 416 points · first shared 2007 · 67 comments on HN
- 3RethinkDB: why we failed (2017)14 people · 413 points · first shared 2017 · 227 comments on HN
- 4Engineering management lessons (2014)12 people · 975 points · first shared 2014 · 109 comments on HN
- 5Startup lessons10 people · 569 points · first shared 2013 · 163 comments on HN
- 6How to pick startup ideas9 people · 765 points · first shared 2015 · 103 comments on HN
- 7Writing A Lisp Interpreter In Haskell8 people · 188 points · first shared 2009 · 31 comments on HN
- 8How to build great products7 people · 356 points · first shared 2013 · 29 comments on HN
- 9Homepage6 people · first shared 2010
- 10Useful Mental Models (2016)5 people · 589 points · first shared 2018 · 73 comments on HN
- 11What is LaTeX and Why You Should Care4 people · 139 points · first shared 2010 · 77 comments on HN
- 12The effective engineer’s handbook4 people · 28 points · first shared 2013 · discussion on HN
- 13Learn to code like it's 19963 people · 142 points · first shared 2013 · 57 comments on HN
- 14Weblocks - A Common Lisp web framework3 people · 21 points · first shared 2007 · discussion on HN
- 15Github issue etiquette3 people · 6 points · first shared 2013 · discussion on HN
What HN people wrote when they linked it
willismichael · 2014-11-13
And his thoughts in retrospect: "I wrote these a long time ago. I was much more naive then about the craft of software engineering, so proceed with caution." http://www.defmacro.org/
For what it is worth, his articles about Lisp are among the things that got me interested in Lisp, and I still like Lisp.
manaskarekar · 2013-02-04
A highly recommended read from defmacro.
http://www.defmacro.org/ramblings/lisp.html
Other articles on the site are very nice as well: http://www.defmacro.org/
ZephyrBlu · 2024-06-05
This is a tech-focused selection from my personal list, with a few more business-y sources thrown in:
- https://erikbern.com
- https://lethain.com
- https://commoncog.com
- https://scattered-thoughts.net
- https://danluu.com
- https://ideolalia.com
- https://staysaasy.com
- https://collabfund.com
- https://blog.nelhage.com
- https://jacobian.org
- https://equalventures.substack.com
- https://defmacro.org
- https://spakhm.com
- https://apenwarr.ca
- https://scarletink.com
- https://benkuhn.net
- https://cpojer.net
- https://brandur.org
- https://zeptonaut.com
Let me know if you want some reading recommendations for any of these!
shay_ker · 2024-04-08
Slava's other essays are here, for those curious: https://www.defmacro.org/
dejawu · 2023-12-04
This almost reads like a deconstruction of my favorite explanation of Lisp: https://www.defmacro.org/ramblings/lisp.html
The explanation basically uses an AST that's apparent to the user to explain the language - and this is a language built on an AST whose structure is apparent to the user. I love it and will definitely be turning the idea over in my head for the next few days.
Naomarik · 2023-06-05
I'd recommend this for more reading on the subject: https://www.defmacro.org/ramblings/lisp.html
Personally I switched to clojure 8 years ago after this article along with PG's essays pushed me over the edge.
_query · 2022-06-22
Hey, Founder of Thin here. Thanks for mentioning us :)
On RethinkDB: The post-mortem of RethinkDB is a good read https://www.defmacro.org/2017/01/18/why-rethinkdb-failed.html
If anyone has questions regarding Thin I'm happy to answer.
LukeEF · 2022-06-21
'The open-source developer tools market is one of the worst markets one could possibly end up in... the answer is basic microeconomics. Developers love building developer tools, often for free. So while there is massive demand, the supply vastly outstrips it. This drives the number of alternatives up, and the prices down to zero.'[1]
5 years later and this still feels correct. From one OSS Dev Tool founder to another - more power & good luck!
[1] https://www.defmacro.org/2017/01/18/why-rethinkdb-failed.html
sahil-kang · 2020-10-26
If you found this interesting and want more, then I think this is a good follow up to read next [1]. It takes a similar approach to introducing the code-as-data idea, but uses xml instead of json as an introductory structure.
[1] http://www.defmacro.org/ramblings/lisp.html
TeMPOraL · 2020-10-26
> This is maybe the best introductions to Lisp i have seen, especially for a js dev like me it could hardly get more approachable and convincing.
The classical one is "The Nature of Lisp"[0], which introduces data-as-code through XML and Java build tools. Same idea, just with examples more relevant at the time of writing. Still worth a read for non-webdev programmers.
Having learned Lisp, it's half funny, half disheartening to watch the industry repeatedly tries to rediscover "code as data", as people's configuration or data files in markup language du jour grow in complexity and eventually start directly encoding executable code... and then stop shy of embracing the code/data duality.
--
[0] - https://www.defmacro.org/ramblings/lisp.html
rigel_kentaurus · 2020-09-22
I didn't like that the author is sort of mixing being a Team Lead with being a Manager. The role described in there is more of a Manager.
A great resource for Managers to be (and an article that is not trying to sell you something):
https://www.defmacro.org/2014/10/03/engman.html
tmamic · 2020-08-07
In the words[1] of @spakhm appointment software for doctors is not a showstopper and definitely not a gamechanger.
I've been researching medical market a lot. There are many reasons why appointment and practice management software isn't a great business. But the number one reason is that it doesn't create a great value for doctors. Patients will still come and use the same doctor, insurance companies will still pay them the same, it won't bring new patients, it will not make it easier for doctor to manage his practice since he still has to have a nurse which does this.
On another hand, it makes it easy for their patients to go somewhere else since EHR need to be completely available to patient. This is an unnecessary risk.
[1] https://www.defmacro.org/2013/09/26/products.html
marapuru · 2019-06-20
> https://www.defmacro.org/2014/10/03/engman.html
Great article, I can see why you revisit this frequently :)
Mandatum · 2018-05-22
If you'd like to read more on the subject, I can recommend this article put together by Slava Akhmechet at Stripe, creator of RethinkDB.
https://www.defmacro.org/2016/12/22/models.html
fullsage · 2018-03-30
One of the best product post-mortems that I've seen is the RethinkDB post from Slava:
http://www.defmacro.org/2017/01/18/why-rethinkdb-failed.html
He does a great job describing how the "worse is better" essay plays out in the modern world, and how it played out for them in the OSS DB market.
sah2ed · 2018-03-28
> I prioritize technology ahead of marketing, and am currently struggling to flip this around.
May I ask why you feel strongly about a technology-first approach?
I can think of someone that tried your exact approach, but it didn't end well. He happens to be a member of this community [0] and he wrote a great blog post [1] introspecting as to the reasons why technology-first approaches don't work in the world we live in.
If you've not read it, I encourage you to do so.
[0] https://news.ycombinator.com/user?id=coffeemug
[1] http://www.defmacro.org/2017/01/18/why-rethinkdb-failed.html
sn41 · 2018-02-23
Brilliant article. The best way to explain a strange feature like a monad is to list out programming situations to which monads are a good solution.
In the same vein, I finally understood what Lisp macros are for, from a similar article explaining in what programmatic situation you can benefit from writing a macro: [1]
[1] http://www.defmacro.org/ramblings/lisp.html
pc · 2016-10-06
RethinkDB is one of the developer tools that we at Stripe most looked up to.[1] The team had so many good ideas and rigorous, creative thoughts around what a database could be and how it should work. I'm really bummed that it didn't work out for them and have enormous respect for the tenacity of their effort.
I'm also excited to have them join us here at Stripe. As we've gotten to know Mike, Slava, and the other Rethinks -- and shared some of our plans with them and gotten their feedback -- we've become pretty convinced that we can build some excellent products together in the future. I'm looking forward to learning from all of them.
[1] (And, for me, even before Stripe -- I started learning Haskell with Slava's Lisp-interpreter-in-Haskell tutorial back in 2006... http://www.defmacro.org/ramblings/lisp-in-haskell.html)
chanux · 2016-10-06
I secretly (not 'secret' anymore I guess) and irrationally trust Stripe to do good on RethinkDB.
Also, TIL: Slava is defmarco. Yeah defmarco, that's how I read it for a long time. I especially love this piece from defmarco http://www.defmacro.org/ramblings/fp.html
csallen · 2016-09-07
57 startup lessons from Slava Akhmechet:
http://www.defmacro.org/2013/07/23/startup-lessons.html
I don't think I've ever seen such an accurate, shrewd, and insightful collection of startup wisdom in one place before. Every bullet point in this list could be a book.
nickpsecurity · 2015-08-23
It's funny until you look at XML so many love and wonder why they hated LISP syntax at same time.
http://www.defmacro.org/ramblings/lisp.html
dantiberian · 2015-08-11
RethinkDB is great and has a lot of great features, however the thing that has impressed me the most is the way they communicate with the community. They are incredibly responsive and friendly on GitHub and IRC. It's not uncommon to get a response to a bug report within an hour or two (not that they have any obligation to this). They're incredibly nice.
It looks like they try to follow http://www.defmacro.org/2013/04/03/issue-etiquette.html, it'd be great to see other companies adopt it too.
Thanks folks!
dirtyaura · 2015-02-21
Lots of startup advice seems obvious once you have heard or read it a few times. But you only understand the value of such advice when you fail to follow it.. For example, I read the fantastic list "57 startup lessons" by Slava Akhmechet when it was published. But only after I personally failed in many of these, I really understood how hard it is to follow even simple, obvious advice. When I read this same list after my startup failure, the deep wisdom of this list really stung hard.
As a startup founder, you should go through this kind of list regularly to keep yourself in check.
http://www.defmacro.org/2013/07/23/startup-lessons.html
skylan_q · 2013-05-19
Lisp is a lot of fun and easy to start with. Don't be afraid by all these nasty (()) and weird (+ 4 5) operations , it will make sense quite fast.
They aren't as ugly as XML ;)
This was a great read convincing me so: http://www.defmacro.org/ramblings/lisp.html
I prefer:
(defun add(a b)
(+ a b))
Over:
<defun name="add"><params><param>a</param><param>b</param></params>
<+><a></a><b></b></+></defun>
(Or some variant thereof)
Any day. The article above improved my understanding and appreciation of Lisp(s) but it made me dislike Java even more than what I already had!
mmorearty · 2012-11-09
I don't know much about RethinkDB yet, but I will say that I have been a big fan (online) of one of its founders, Slava Akhmechet, for years. I've never met him, but he wrote some terrific articles on his website, http://www.defmacro.org/ , a few years ago. Start at the bottom of the list of articles, with "The Nature of Lisp."
Slava is a deep thinker, which makes me very excited to take a look at RethinkDB.
bitcracker · 2012-03-24
LISP and Scheme still have one killer feature all other languages don't have: extremely powerful macros.
http://www.apl.jhu.edu/~hall/Lisp-Notes/Macros.html
This article gives a good insight what about LISP is so awesome:
http://www.defmacro.org/ramblings/lisp.html
I also vote for Ada because this is the best language I know to write maximum quality software. I would love to make money for living by coding Ada for Embedded Systems.
peteysd · 2010-12-15
Just got through reading the first suggested item in the Background section: http://www.defmacro.org/ramblings/lisp.html
I recommend this to anyone interested in learning about the appeal of Lisp. It's well-written, and lays a nice foundation for those trying to figure out what all the buzz surrounding Lisp is about. I'm sold.
mahmud · 2010-07-08
The front page still works, go there and look around. FWIW, this fancy ginger cat is their CTO:
http://www.defmacro.org/
And I have it on good authority that he knows a thing or two about tweaking a "CMS" ;-)
RyanMcGreal · 2010-03-29
I had the hardest time trying to grok Lisp in any capacity until I read a great essay that explained it in terms of XML. http://www.defmacro.org/ramblings/lisp.html
clueless123 · 2010-01-07
The above article (http://www.defmacro.org/ramblings/lisp.html) is excellent !
Thank you very much for the link.