HNHacker News
TopNewBestAskShowJobs

lrenn

119 karma · joined November 30, 2010

submissionscomments
lrenn··on Best command-line-only video games (2019)
Holy shit...I went goggling and the dude who wrote SRE was the same guy from google who coined the term "Don't Be Evil."

http://breakintochat.com/blog/2013/02/18/amit-patel-creator-...

lrenn··on Best command-line-only video games (2019)
I just want someone to remake Solar Realms Elite/Barron Realms Elite...
lrenn··on CSS's !important was added because of laws about font size for some text
Mind blown. How the hell did I not know this.
lrenn··on Racing Game in ClojureScript
Om came first, Cloact (eventually renamed Reagent due to an unfortunate similarity with a certain body part of a snake) came after it.

Here is the original HN post about Cloact: https://news.ycombinator.com/item?id=7037038

You can see people comparing it to Om.

Here is a blog post of his from 2013 that mentions Om: https://swannodette.github.io/2013/12/31/time-travel/

And yeah, Reagent "won" because it was way simpler but I'd find it hard to believe that it wasn't influence or inspired by Om.

lrenn··on Racing Game in ClojureScript
323 lines.
lrenn··on Racing Game in ClojureScript
You could argue that Clojurescript early adoption of React was one of the reasons for it's rise. The early work of David Nolan (Om) and Dan Holmsand (Cloact->Reagent) were, at least in my opinion, pretty influential. Clojure's immutable data structures were (are) a perfect fit. iirc, the fact that "shouldComponentUpdate" could be performant with equality was a huge, easy performance/simplicity win. I may be way off about that, if so, I apologize.
lrenn··on Testosterone levels show steady decrease among young US men
> My personal, totally unsupported hypothesis: society is simply kinder and gentler now.

Loved reading that. I don't know if it's true, but I hope so.

lrenn··on Gurdjieff and the Women of ‘The Rope’ (1997)
You ever see the OA on netflix?

https://en.wikipedia.org/wiki/Gurdjieff_movements

lrenn··on I Know What You Think of Me
The last half of the steps would just be my mother.
lrenn··on The genius of Enlive as a template system
Unfortunately, it seems the author doesn't have time to keep up with it's popularity. The code hasn't been updated in months (other than the "lazy fix"). There are 23 open issues, many over a year old.

https://github.com/cgrand/enlive/issues?state=open

I got hit by a bug the other day (it assumes http resources are UTF8), and even though fixes are available, none have been merged in.

See also "Is Enlive Alive?"

https://groups.google.com/forum/?fromgroups=#!topic/enlive-c...

Having said that, I still think Enlive is awesome. I just which development was more active. Take a look at the network graph and you'll see people fixing a lot of issues on their own branches.

lrenn··on Rich Hickey: The Value of Values
> The community is too elitist, the tutorials are math heavy. And the tools are too ancient. Having to use simple text editors and selling them as technologies used to build large applications is a contradictory philosophy.

Careful. Statements like this only create more "elitists" by insulting people. Have you seen leiningen, Counter Clockwise, or La-Clojure? Part of the reason you need all that tooling is because of the objects. If you haven't become proficient in a functional language, can you really say the tooling is insufficient? It's like telling someone their movie sucked without seeing it, or only staying for the first 5 minutes. When I get rid of my Foo, FooImpl, JPAFoo, FooService, FooServiceImpl, FooDao, Bar, BarImpl, etc, the requirements for my editor and tooling suddenly change. If I'm not using big heavy frameworks, I no longer need all those plugins. I don't need to be able to click on my spring configuration and jump to the implementation. When I'm working in repl, I don't need heavy integration with Jetty (for example) because I never need to restart the server. If my restful webservice just needs to be a function that returns a map (ring), then I don't need annotation support, or some framework plugin. If my code is data, my editor already supports both.

I need to move around functions, and compile my code. Code completion? Navigation? Sure, but Emacs, CC, La-Clojure can all do that. I hope you aren't insinuating that Emacs/Slime is a "simple" text editor ;)

Tutorials are their own issue. A new object oriented programming language only needs to teach you their syntax and their API. A Clojure tutorial targeted at someone who has only ever done serious work in an OOPL is going to have to explain not only Clojure, but fundamental concepts related to functional programming. Once you really learn one, the rest all make sense in the same way it's relatively easy to jump around OOPLs.

If you've accepted the technical argument, don't let those other things hold you back. The Clojure community is great, and the Eclipse and IntelliJ stuff has really come a long way.

lrenn··on Rich Hickey: The Value of Values
The fact that you can't update your house easily is because it is a physical object. Using values doesn't change how easy it is to change your software. If anything, it makes it easier because you know your changes can't screw anyone else up.
lrenn··on Rich Hickey: The Value of Values
> a time dimension (or, if you prefer, place-oriented programming)

Place oriented is the opposite of having a time dimension. It means that at any time, the thing at that place might be different. This was done for your second argument, efficiency. The talk argues that if functional programming with values is efficient enough for you, than you shouldn't be writing object oriented software.

Values on the other hand absolutely have a time dimension. His "Facts" slide says it as does datomic and his revision control example.

He has another great talk that touches a bit more on time:

http://www.infoq.com/presentations/Are-We-There-Yet-Rich-Hic...

lrenn··on Rich Hickey: The Value of Values
This talk needs a different title, because it's way more important than the "Value of Values".

It's a call to stop writing object oriented software. He gives a convincing argument. You can probably find a thing or two to disagree with, but like he says, this is something we all know to be true. It's just that place oriented programming was necessary limitation due to hardware. Eventually, that limitation will no longer exist, or cease to be relevant. At that point, the only thing that makes sense is "value oriented programming" and by extension immutable functional programming.

Datatomic takes this same argument and applies it to databases.

Edit: And this might be crazy, but perhaps this is the answer to the "why can a building be built in a week, but a software project will be a year late and broken". What if you started on the first floor of the building, came in the next day and the dimensions had changed. What if when you needed two similar walls, you took a copy of one. But when you put a light switch on the copy, you accidentally put one on the wall you copied. Buildings are made up of values. A wall of a certain length. A staircase of 42 steps. These values don't change, and if they did, constructing buildings would be a hell of a lot harder.

lrenn··on A sudoku solver in 33 lines of Clojure
For another core.logic example check out the Game of Thrones Genealogy

https://gist.github.com/3219448

h/t @swannodette

lrenn··on Stop hand coding, start Zen Coding
If you're using XSLT, you're doing it wrong.

(I'm only kidding around...sorta.)

lrenn··on Introducing Immutant - a true, enterprise-grade application server for Clojure

     #lisp
     11:01 < TimoT> aren't enterprise solutions like regular solutions but cost 
     10-100x more?
     11:01 < jsnell> they also don't work
lrenn··on Was Marx Right?
I don't think it's fair to compare Das Kapital and The Communist Manifesto to the quatrains of Nostradamus.
lrenn··on JQuery WormHole
> (c) Copyright John M. Hope 2011. Released under the Don't be a Dick (DD) license.
lrenn··on Oracle in conflict with another open source project?
> I don't know anything about Hudson. But when I see stories like this (big bad corporate imposes their will on open source), I always think the drama queens (on both sides) are busy having "meetings" instead of doing actual work.

>If I'm a developer, especially a developer on a project for which I'm not getting paid, I'll do the development using whatever the hell tools I want, thanks. And if someone tells me I can't, frankly, it's not really up to them.

This is exactly the position of the Hudson developers, so why call them drama queens? They can't "just fork it". It's a large open source project with 100+ developers. They need to plan, get consensus, etc. Those "meetings" you seem to disdain aren't just for people to bitch.

I hope they do change the name and fork it. Oracle needs to learn a lesson here and they are absolutely powerless (for once) other than having the TM on Hudson.