Posted by Amit Rathore on November 22, 2012
Cross-posted from Zolo Labs.
I kept using an extra line of code for this, so I decided to create the following function:
Another extra line of code can similarly be removed using this function:
Obviously, the raw forms (i.e. using doseq or map) can be far more powerful when used with more arguments. Still, these simple versions cover 99.9% of my use-cases.
I keep both these (and a few more) in a handy utils.clojure namespace I created for just such functions.
Posted in Uncategorized | Tagged: clojure, code, expressibility, tech, utilities | Leave a Comment »
Posted by Amit Rathore on August 5, 2012
Any sufficiently complicated Clojure (or Lisp) program contains an ad-hoc, informally-specified, bug-ridden, slow implementation of half of Haskell.
Posted in Uncategorized | Tagged: clojure, functional, haskell, languages, lisp, tech | 19 Comments »
Posted by Amit Rathore on July 30, 2012
There should be none. I mean, sure, there should be some, but just enough to get over the hump of creating testable hypotheses. The hypotheses, should in turn, be iterations on your product – and they should be in the hands of your users.
There are just so many other things that cause a startup to fail, that optimizing the technology stack is just the wrong place to spend any resources. This doesn’t mean you shouldn’t use promising technologies if they can solve clearly anticipated problems. It does mean that you don’t want to waste resources in premature scaling. This, of course, applies to all aspects of your startup – tech, sales, support, etc.
As far as tech is concerned, pick the best tools for the job, and then move forward quickly. Don’t worry about being perfect (in fact, don’t be). Get traction first – no one cares how amazing your backend is.
Posted in Uncategorized | Tagged: entrepreneurship, startup, tech | Leave a Comment »
Posted by Amit Rathore on July 28, 2012
This post is about startups and technology. Of course, nothing will help you if you don’t have a market, or traction, or a business model, or an actual product, or good people. Those are conversations for another day, but now, here’s what I’d use if I’m starting a startup today:
Am I missing stuff?
Posted in Uncategorized | Tagged: entrepreneurship, startup, tech | 2 Comments »
Posted by Amit Rathore on July 2, 2007
Man, just when I started to think I was done with the Windows BSOD, it just happened on my Parallels Desktop! Thankfully, it just restarted the one window on the otherwise rock-solid Mac OS X.
Posted in Uncategorized | Tagged: tech, tools | 1 Comment »
Posted by Amit Rathore on June 12, 2007
If any of you have ever tried to develop mobile web-apps that used AJAX (esp. through the use of the popular AJAX libraries for the purpose – Prototype/Scriptaculous or Dojo), you know what I’m talking about. None of the mobile browsers really work well at all. They are all broken in some way or the other – and to add to the fun, they’re broken in different ways.
So – how is Apple going to fix the issue? By side-stepping the mobile browser entirely. Just take a desktop browser and make it available on the mobile. Perfect! And this is Apple’s official strategy for externally developed applications! So the critical mass is ready to happen…
And this will also see the beginning of the end of the walled-gardens of the carriers. If they don’t own the access to mobile applications, then they can’t control it. The reason they do control it, is that for the most part, no one wants to download and install things on their phone. Either they’re not technical enough, or things break after you install the wrong or badly developed application. So most people just use whatever is ‘on-deck’. And those applications are completely controlled by the carriers. No more! If the mobile web becomes popular, that’s the end of that!
Yet another way the iPhone will change the world.
Posted in Uncategorized | Tagged: mobile-web, mobility, tech | 9 Comments »
Posted by Amit Rathore on April 16, 2007
In my ideal world, I’d have two 30″ Apple Cinema Displays, but my less than ideal world ain’t so bad either. My souped-up 24″ iMac serves me well for my day to day work, quite well indeed.
I’m positive that my productivity gains are large – I always have emacs open with at least 4 frames, or eclipse with several views open without anything important having to stay annoyingly minimized. I also have a browser open with lots of tabs, a bunch of terminals open with iTerm, and a bunch of other what-nots, and managing all this is easy. This multiple desktop manager makes it even easier. Finally, if all those windows distract you, use Think!
Anyway, if you want a quick and relatively cheap way (in the long run) to become more productive, get a large screen monitor. Or three.
Posted in Uncategorized | Tagged: code, tech, tools | Leave a Comment »
Posted by Amit Rathore on February 3, 2007
Emacs, the God of all things. I’ve been working my way through, over the past several years (after having been introduced to it by Ravi), all kinds of books and tutorials on lisp. Unfortunately, I’ve not been particularly good at following through and becoming a master, so I’m not really a guru or anything when it comes to Emacs skills. (I promise, it will change this year.)
Anyway, while working on Ruby, I was looking to find a good editor. Who isn’t, after all? I’ve used Eclipse with RDT and RadRails, but it wasn’t compelling (that might change with this stuff). After moving to the Mac, however, I was looking to buy TextMate – which I’ve heard a lot about. Before buying it, I thought that since it was “inspired” by Emacs, why not give it a shot? Ultimately, I got comfortable using Emacs itself, so I haven’t really given TextMate a real shot, despite owning a license (thanks MacHeist!).
So. This is my first in a series of posts about using Emacs for Ruby and Rails. The “cool” thing for this time is – inferior mode for Ruby. This provides a SLIME-like interface for Ruby, and allows you to work really interactively. What that means is, while typing in the editor, you can ask fragments of code to be interpreted, change only particular definitions quickly and rerun other code that uses them, pipe all that back and forth between windows, so on and so forth. And at any time, you can switch to the Ruby process (running with Emacs using irb) in use and explore the current environment.
Check it out, its very neat and it even comes with Ruby.
Posted in Uncategorized | Tagged: code, ruby, tech | 2 Comments »
Posted by Amit Rathore on March 9, 2006
(or why does Windows complain of low disk space when there is enough available?)
This was an issue I was running into, trying to copy a large 17GB file onto my portable, external hard drive. It had about 60 gigs free, and yet, everytime I tried to copy the file, Windows would complain about lack of disk space. It was frustrating.
Until I realized, that the external drive was formatted with FAT, which has a 4GB limit on file sizes. Really stupid error message, but what else could one expect from Windows? Anyway, changing that to NTFS fixed the problem.
Posted in Uncategorized | Tagged: tech | Leave a Comment »