The book itself is a good value too, by the way. There are a lot of good Scala tutorials on the ‘net but I homed in on Programming Scala at O’Reilly. I didn’t want the exuberance of learning Clojure to limit my appreciation of Scala so I jumped into it headlong. And I could fix them without the fixes rippling out across the rest of the system. My code was quite unpretty here and there and organization in places left much to be desired but those were things that I knew how to fix. To top it off, my code base was smaller and just as legible. The lingering doubts that I had about OOP modeling, all the while that I thought that I was good at it, were gone. But even more importantly, I understood what Halloway, Bedra, and Hickey were talking about. Using AngularJS, I “modernized” the prototype and soon its functionality surpassed the one done in Smalltalk and Seaside. It turned out to be an excellent fit with Noir. I did a quick survey of what JavaScript frameworks were out there for building modern web apps. But I soon learned that this was a instead a strength. At first, I thought that I went backwards. After prototyping the Clojure project to be as close as possible to the one done in Smalltalk, I took a step back and thought that while it looked the same in the browser, it was relatively primitive underneath. There were some fits and starts and sudden stops, but soon, I gained some real velocity. After the once-through, I didn’t intimately understand everything that I read but I got it. In less than a day, I put my eyes on every character of every word of Programming Clojure. Noir is a micro-framework that allows you to rapidly develop websites in Clojure. All of the moving parts had me a bit confused. Instead, I found stuff called Ring, Hiccup, and Compojure. I bought a copy of Programming Clojure and examined the Clojure web development field but didn’t find a counterpart to Seaside or Lift. A language to learn someday when I’m suddenly smart enough to learn it. I was of course intrigued by what I perceived as its arcane LISPness that verged on the mythical. I remembered stumbling onto Clojure when it was new and noting to myself that I should learn-it-someday. That month they just released Programming Clojure (2nd Edition). But something made me pause and reexamine where I was headed.Įach week, I receive The Pragmatic Bookshelf monthly email filled with info on releases, news, and their PragPub magazine. Besides, it was Lift that put Scala on my RADAR to begin with, so I started heading off in that direction. The functional bits could be ignored and used when desired. Its syntax didn’t look all that far off from Python and Ruby where I felt quite comfortable. Okay, two more languages were on the short list to check out: Scala and Clojure. I thought that I had found my way of developing web apps. At the conclusion of the prototyping sprint, I felt like I developed an actual application rather than a collection of web oriented components. Couple Magritte with Seaside and you’ve got an extremely potent one-two punch for capturing and validating form data on the web. Seaside as a web framework is a stroke of genius. Now I totally appreciate it for its elegance and empowerment. Years ago, the intrinsic coupling of the language and its environment threw me for a loop. I made some serious headway on the project and I fell in love with the expressiveness of Smalltalk. This time around things were totally different. I wouldn’t call it a crash-and-burn experience but I got nowhere fast. Six or seven years ago I attempted to dabble with Seaside on Squeak. I moved on to Seaside on the Pharo Smalltalk implementation. Compound that with an inexperience in functional programming – well, sit back and imagine the soothing sound of grinding gears. At the time, the documentation was split between the two which made the going quite rough as I have zero experience with Caml. The Opa project was transitioning from a Caml based syntax to one based on JavaScript. But a few things made it difficult for me to gain traction with the language. Adam Koprowski, over at Opa HQ was very helpful with answering my early questions. I started out with Opa, but didn’t get very far. Early this past spring, I started digging in. As part of this process, I sat down with a project idea – a player/event management app for Firefight! That way, I could explore the problem domain and I knew where I could get a subject matter expert if I needed one. Late last year, I began compiling a list of programming languages and frameworks that I thought that I should at least know a little about. The Technitai blog has been far too quiet for far too long, but it’s been because I’ve been burning the midnight oil learning a brand new, for me, way of thinking.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |