Live data from Hacker News

Ask HN: What are the best technologies you've worked with this year?

news.ycombinator.com

61–70 of 86 posts

Re: Ask HN: What are the best technologies you've worked with this year?

#61
post #14

Clojure. It's the first Lisp that, to me, is both fun _and_ practical. Java libraries aren't as simple as the Python counterparts but the maturity of the JVM vs. Python VM kind of balances that out.

Do you recommend a good tutorial for someone who knows Python and wants to learn Clojure?

I'm not sure; I mostly just read the clojure.org website itself and looked stuff up on its index page and went from there.

I did buy Programming Clojure: while it offered nothing new with regard to what was available on clojure.org it was, nevertheless, a good introduction. However, it greatly helped to have experience in functional programming and other Lisps so I'm not sure how it fits to a Python programmer's experience.

Re: Ask HN: What are the best technologies you've worked with this year?

#62
XMPP and Bosh with Strophe - hit a XMPP server with Javascript instead of a web server. Realtime Javascript Push on an established base (XMPP). Real cool stuff, just need something to use it on.

Sinatra - Very fast/easy ruby framework. (Similar to Cherry.py in the Python world).

Jquery - Can't imagine using any other framework after a year working with this.

Facebook Connect - Much more robust than I thought possible due to things like FQL and FBML.

Heroku - Super simple ruby hosting

Re: Ask HN: What are the best technologies you've worked with this year?

#63
post #14

Clojure. It's the first Lisp that, to me, is both fun _and_ practical. Java libraries aren't as simple as the Python counterparts but the maturity of the JVM vs. Python VM kind of balances that out.

What problem did you solve using it? I've been studying Clojure and it seems to be impressive. But I have yet to see some really impressive open source software that was written in it.

Hmmm, nothing big here either but I was learning anyway so I didn't set the par too high. Since you asked, let me see:

A bunch of various throwaway programs or clones of small utilities I had already written in other languages. An utility to update metadata in my oggs, a command that finds similar files, a little solver to answer questions about a given set of different relations (I actually needed such a solver to make some decisions at work so I programmed myself one), bunch of other file/text based unixish tools. Conclusion: 1) Java's I/O APIs are from hell. 2) Clojure can do a lot in only a few words of code.

Some GTK applications via libjava-gnome-java. Works much better than AWT/Swing used in many sample applications, and is much Linux friendly. Lots of Java interop training there :) Will try out LWJGL soon, in an attempt to port a small OpenGL game to Clojure: the game is mostly about experimenting some gameplay ideas so the OpenGL implementation is rather straight-forward and anything but time-critical, thus, the OpenGL backend is great candidate for porting to a new language. I've already learned that Clojure is a great help in transforming my thoughts into code so I prefer to do any prototyping in it these days.

A simple gravity simulation: a friendly way for experimenting with parallel features and transactional memory, agents etc. as you have lots of dependent things moving independently, and I got to "optimize" some Clojure number-crunching as well. And there's ants.clj and other parallel sample programs already so I could compare myself to others.

An evolutionary algorithm aimed at the travelling salesman problem, one of the very first Clojure programs I wrote that introduced me nicely to basic data structures and abstractions in Clojure such as the ubiquitous seqs. I used Swing for the GUI -- crap.

A small Reddit clone. I actually wanted to prototype a few nice ideas I had with regard to news aggregators like HN and Reddit in general so it was mostly not about Clojure. But it offered me a very welcome chance to experiment maintaining global state in an efficient and functional way (server application), got to think about how would I create a live disk-backed database hopefully mostly in Clojure, wrote some basic html generator macros in Clojure, and got some taste of Java interop by hooking the thing up to Java's http server. Excellent project and still ongoing whenever I feel like it.

A simple attempt at Casino (the card game) AI. I probably wrote a sudoku solver too although the most recent I can recall was in Haskell. But I always write a sudoku solver in a new language so I probably did one in Clojure as well.

Oh, and a small layout library for GUIs. I have a thing for those. It's rather incomplete as it was one of the very first Clojure programs I ever wrote; I could rewrite it now and make it much more shorter, faster and idiomatic should I actually come up with a _need_ to have a layout library of my own :)

That's about it, more or less. Might have forgotten something.

Re: Ask HN: What are the best technologies you've worked with this year?

#65

Haskell. I avoided it for the longest time because of the purely-functional-no-side-effects zealots. As it turns out, it is a surprisingly powerful and beautiful language, and you can get quite far without needing OO. The paradigm wars will rage on, but in the meantime, the rest of us have a language that has a rich library set and a very rewarding programming experience. The usefulness of applicative monads, functor…

What did you build with it?

Re: Ask HN: What are the best technologies you've worked with this year?

#66

Haskell and the Cocoa Touch framework (sadly, not yet in conjunction). Haskell isn't really new, but it still is the best programming language I've worked with (yes, "best" is personal in this case). I don't think any other language allows me to write programs that are more concise. The other thing that 2009 brought me was iPhone Development. Although I don't like Objective-C that much, the Cocoa Touch framework is e…

What was the reason you didn't use haskell and cocoa touch together? Was it due to a particular deficiency of one of them? Difficulties combining them?

Re: Ask HN: What are the best technologies you've worked with this year?

#67
MongoDB has helped me rethink everything I thought I knew (and disliked) about DB's.

Javascript. This year, the full potential (and diversity) of this language has truly revealed itself to me, especially with the maturing of frameworks like Cappuccino (which is a testament to what can be done with JS).

Using Git is the first time I've properly been able to integrate source control into my workflow, without it being a pain!

VPS (cloud hosting). Being able to spin up a server quickly and cheaply has really facilitated my ability to experiment and is highly conducive to learning about these new technologies.

I think it's been a great year for innovation. 2010 should be pretty exciting too. New Years Resolution: explore server side Javascript (i.e node.js) and build something awesome with Rails!

Re: Ask HN: What are the best technologies you've worked with this year?

#68
Pylons, i love it because of its flexibility, I can use whatever I want in contrast to other frameworks w/o getting headaches (yes, I'm talking about you, Django).

MongoDB and others NoSQL dbs, I don't have words to describe my feelings.

Jquery, well, I began to use this framework in November I was a heavy Mootools user, but jquery is just amazing, it's so simple, I don't have to write things like "x.get('value')" (annoying!).

These days I'm playing with Node.js which looks pretty amazing, in fact it's very possible I use it in a game I'm planning to do.

Post reply on HN