Hacker News new | past | comments | ask | show | jobs | submit | Senkwich's comments login

For work, I have a Mac with chunkwm as the tiling manager to give it nearly an i3 feel. It's surprising how far tiling has come on that platform.

Linux I'm using XMonad, although I'll most likely switch to i3 next time I tweak my dev setup.

I use neovim for most of my work, although I need to switch to atom with nuclide on occasion to debug code. I have bindings like the recommendation from the tmux navigator that enables me to move between panes with Ctrl+hjkl. Variety of other plugins for hack, python, JavaScript, Java, etc.


Using this while developing my website. It works pretty well, although seems to have issues on various browsers (like Safari) where there is no scrolling.

The main issue I had was that smooth scrolling libraries (for jumping to various places on the same page) didn't work until I referenced the element to scroll as a specific div (that contained all of my parallax) instead of "body" or "html, body" like suggested online.

Overall, I like the flexibility and the ability to inspect the layers using simple translations and rotations.


Works fine in Safari here.


Thanks for the comment! I wish this site let initial posts be more than 2000 characters so I could have gone into more detail.

The main reason I am hesitant to work with Scala/SBT is because I've been using Docker to package/deploy a lot of the web applications I've written. Since Docker is a one-or-nothing for each line you execute, I am getting either all of the dependencies installed at once (which takes awhile the first time) or - if something fails - I get none of them. The caching that sbt offers is basically thrown out, which is really frustrating.

There's that, but I also just don't like how much weight there seems to be with Scala because of all of the large jars I have to download to do anything. At least, that's what it feels like for me.

So, I'm not sure what specific language you would recommend. You indicated that Scala/Clojure aren't too bad and offer repls to start playing, but how hard are they to really set up for a decent-sized project? One team that I'm working with has used Clojure for DSL-related work, but mostly use Java for their main application.

Haskell is the language that I've been reading about recently that seems to have more "meat" available each year (from Hackage), which is encouraging. Everyone (including yourself!) claims that it is a beautiful language, and quite a few believe that learning Haskell - and I mean really learning it - has redefined how they approach software development. That kind of change is what I'm hoping to discover if I delve into a functional language in a big way.

I'd forgotten that I had used DrRacket in academia at one point, but not enough to learn much of it. What exactly makes SICP a classic to you?

As for other languages that are beginning to exude some functional... functionality, I've noticed that (with Java 8 and Ruby), but I'm afraid that I'm not really grasping the strengths of said features. I'm trying to jump into a more functional language to really understand why they can be good and hopefully take away something really meaningful.

Thanks for the links! I'll check them out later today!


Thanks for the links. Even if I'm a vim guy, I know it isn't realistic to expect everything to work with it. I'll check out the links later today.

Also, is there a reason you jumped to Clojure? Do you have any specific reasons as to why you would recommend it? I'm open to picking up just about any functional language as long as I can use it for more than implementing Fibonacci numbers.


I've not jumped in Clojure (yet)... but exposure to functional programming can do you good.

I'm using CoffeeScript (node & angular) currently, but Clojure has transformed the way I code (way less imperatively).

My only problem with Clojure: its syntax doesn't help me understand structure... so to me, Clojure is difficult to read.

But if you're prepared to think differently, you can learn how with a functional programming language, then apply everywhere...

Note: I've used Scala, I do like it, but it didn't make me a fp programmer... I guess I should give it another try someday. I prefer its syntax (over Clojure), except for types (and occasional syntax ambiguities). It was a mixed Java/Scala project, so I didn't use Scala collections much...


Those were my fears with sticking with something like Scala. I just know I would fall back on imperative programming rather than being forced to understand functional programming.

Scala itself doesn't seem bad, but my gripe is just getting a working project set up. With sbt, I know I have to create a few files just to get up and running. Not knowing Maven syntax - can be embedded in sbt, I think - or sbt itself, I don't find it appealing to learn that kind of tooling outside of work.


I used Scala for a project of mine, and I relied on Eclipse for the build environment... I didn't use sbt directly, and incremental compilation was very fast.

I've recommended Lighttable because it's a very dynamic editor: it has a REPL, it can evaluate every line you type. It makes it easier to learn: no apparent compilation.

I dream of using Lighttable to develop something... Check this video: it's in Javascript, but it shows why Lighttable is so amazing (https://www.youtube.com/watch?v=52SVAMM3V78)


Due to the 2000 character limit, I had to trim the above. Here's the excess for those interested.

--

My experience with functional languages is very limited. My university required one course that delved into both functional (Scheme) and logic (Prolog) languages along with context-free grammars through BNF. Because of the broad range of material, I can safely say that I did not take away much from the course (aside from an awareness of the subjects).

I'm coming from an academic computer engineering background of C and Verilog (embedded system development and software/hardware codesign) as well as an academic computer science background of Java. In my industry work, I've learned some Python, Ruby (Sinatra/Rails), and Javascript (both client-side and server-side through NodeJS).

I'm leaning towards Haskell simply because XMonad was written in it, meaning that I will finally understand my window manager's configuration script. I've also considered Erlang because of how powerful I've heard it is with concurrency (and is one of the best for the actor model).


Donated. Hope it helps.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: