Since I work in the EAI/Web Services field, I am not new to the REST vs SOAP debate; For a while, I have been thinking that it is more of a choice in a web service design
Fortunately I came across a very good article on the REST vs SOAP debate yesterday and now realize that the issue is much deeper than that;
It seems to me that debate falls along the lines of other common debates between - practicians vs theorists, generalists vs specialists, strongly typed interfaces vs weakly typed interfaces , KISS vs complicated , bottom-up vs top-down and so on.
Why is it that we in the Software Industry always seem to have to deal with so many philosophical arguments, unlike other industries? I guess this has to do with Software being much more malleable , than , say most metals.
Tuesday, July 17, 2007
Monday, July 02, 2007
Networking in Silicon Valley
If you are in Silicon Valley, there are a number of avenues to meet interesting people in Technology. You can attend events on a number of topics of your interest and they don't cost that much to attend. Here are some of the organizations which I attend whenever I get time.
b)TIE (The Indus Entrepreneurs)
c)SVPMA(Silicon Valley Product Management Association)
d)Churchill Club
Thursday, June 28, 2007
Compilers courses separate the men from the boys
Steve Yegge has a recent post on the importance of compilers in a computer science curriculum.
"One reason many programmers don't take compilers is that they've heard it's really, really hard. It's often the "capstone" course of a CS program (OS often being the other one), which means it's a sort of "optional rite of passage" that makes you a Real Programmer and puts hair on your chest, regardless of gender or chest-hair preference."
"Designing an effective undergrad CS degree is hard. It's no wonder so many ivy-league schools have more or less given up and turned into Java Certification shops."
Sad but it seems this is true. Compilers course is very hard and I know it damn well, having taken this under Prof.Wei Chung Hsu in my Masters at the Univesity of Minnesota. We designed a small compiler for a language appropriately named C-- ; Our compiler could produce MIPS assembly language instruction set , which we would optimizie in the final phase for reducing redundant loads and stores , which we would then run though a MIPS simulator(SPIM, I believe) for execution.
In fact, one reason I took the course was that I wasn't happy with the way compilers was taught in my Bachelors, and I knew that I would never get a chance to learn them again in my professional life.
If some Software Engineer/CS student understands compilers, I would rate him very highly.
The only courses tougher than compilers at University CS programs are the ones dealing with Complexity Theory, Turing Machines and automata theory.
"One reason many programmers don't take compilers is that they've heard it's really, really hard. It's often the "capstone" course of a CS program (OS often being the other one), which means it's a sort of "optional rite of passage" that makes you a Real Programmer and puts hair on your chest, regardless of gender or chest-hair preference."
"Designing an effective undergrad CS degree is hard. It's no wonder so many ivy-league schools have more or less given up and turned into Java Certification shops."
Sad but it seems this is true. Compilers course is very hard and I know it damn well, having taken this under Prof.Wei Chung Hsu in my Masters at the Univesity of Minnesota. We designed a small compiler for a language appropriately named C-- ; Our compiler could produce MIPS assembly language instruction set , which we would optimizie in the final phase for reducing redundant loads and stores , which we would then run though a MIPS simulator(SPIM, I believe) for execution.
In fact, one reason I took the course was that I wasn't happy with the way compilers was taught in my Bachelors, and I knew that I would never get a chance to learn them again in my professional life.
If some Software Engineer/CS student understands compilers, I would rate him very highly.
The only courses tougher than compilers at University CS programs are the ones dealing with Complexity Theory, Turing Machines and automata theory.
Tuesday, June 26, 2007
Netscape founder Marc Anderssen may have joined joined the blog world late, but he seems to make up for lost time by coming up with great posts after posts. A must read for anyone aspiring to be an entrepreneur.
If you want to know how to approach VC's , or how to become a VC backed entrepreneur , it is a must read.
If you want to know how to approach VC's , or how to become a VC backed entrepreneur , it is a must read.
Tuesday, December 19, 2006
Why Research and Product development should not be separated
Today, I am going to write about research vs product development in Software/internet media industries. And I am going to start from an examination of the current favorite company-Google.
When people write about google, they always write about how Sergey Brin and Larry Page started their company based on an idea, as if Page ranking in itself makes Google the best search engine on the planet. From another viewpoint, they talk about how Google redefined the advertising industry.
I am a Software engineer and the kind of person who wants to understand how Larry and Sergey made their jump from having a clever algorithm up their sleeves, to making it massively scalable and recruiting other great engineers. If you open the hood of Google, and take away all the applications such as GMail, GMaps etc, what you will see is a beautiful, fault-tolerant distrivuted computing architecture built by some great engineers. The group who built this is called the Systems Infrastrucure group inside Google. This is the group that built MapReduce, Google File System, Big Table, SawZall and a bunch of other stuff. This is the layer on which, a number of other google engineers write their applications.
You will see that a number of these papers are written by people from HP's Palo Alto Labs.
Sanjay Ghemawat, Jeffrey Dean, Alan Eustace. In fact, a number of top people in the early days of Google came from HP labs(which was Compaq labs before HP acquired Compaq). And which was DEC labs before Compaq acquired DEC.
Larry and Sergey may be smart but I always wonder how they could recruit so many parallel computing, distributed computing folks in their early days. Imagine you are the founder(s) of a small startup, with no revenue plan in 1999. How would you convince these researchers that they should work for you?
I can only speculate. But I think that the fact that DEC labs had no importance in the eyes of the HP management definitely helped. I can't help noticing that 1999 is also the year , when Carly Fiorina go the top job at HP. So many a top brains at HP labs must have preferred working at Google to a research lab of no importance to HP(Carly was a sales person afterall..).
I think this story has been repeated a number of times before. Successful companies establish research arms to solve their problem of being bogged down by the success of their existing products(The Innovators dilemma) . As time goes by, your product development organization becomes (a) dumber and dumber and bloated and misses the next big thing(b) you research arm becomes frustrated because of your inability to turn any breakthrough into successful products.
Then these researchers take their talent somewhere to solve real problems.
When people write about google, they always write about how Sergey Brin and Larry Page started their company based on an idea, as if Page ranking in itself makes Google the best search engine on the planet. From another viewpoint, they talk about how Google redefined the advertising industry.
I am a Software engineer and the kind of person who wants to understand how Larry and Sergey made their jump from having a clever algorithm up their sleeves, to making it massively scalable and recruiting other great engineers. If you open the hood of Google, and take away all the applications such as GMail, GMaps etc, what you will see is a beautiful, fault-tolerant distrivuted computing architecture built by some great engineers. The group who built this is called the Systems Infrastrucure group inside Google. This is the group that built MapReduce, Google File System, Big Table, SawZall and a bunch of other stuff. This is the layer on which, a number of other google engineers write their applications.
You will see that a number of these papers are written by people from HP's Palo Alto Labs.
Sanjay Ghemawat, Jeffrey Dean, Alan Eustace. In fact, a number of top people in the early days of Google came from HP labs(which was Compaq labs before HP acquired Compaq). And which was DEC labs before Compaq acquired DEC.
Larry and Sergey may be smart but I always wonder how they could recruit so many parallel computing, distributed computing folks in their early days. Imagine you are the founder(s) of a small startup, with no revenue plan in 1999. How would you convince these researchers that they should work for you?
I can only speculate. But I think that the fact that DEC labs had no importance in the eyes of the HP management definitely helped. I can't help noticing that 1999 is also the year , when Carly Fiorina go the top job at HP. So many a top brains at HP labs must have preferred working at Google to a research lab of no importance to HP(Carly was a sales person afterall..).
I think this story has been repeated a number of times before. Successful companies establish research arms to solve their problem of being bogged down by the success of their existing products(The Innovators dilemma) . As time goes by, your product development organization becomes (a) dumber and dumber and bloated and misses the next big thing(b) you research arm becomes frustrated because of your inability to turn any breakthrough into successful products.
Then these researchers take their talent somewhere to solve real problems.
Tuesday, October 04, 2005
EclipseCon 2006 will be held in Santa Clara, CA in March.
Joel is a speaker.
Eclipse Con is taking submissions for this year's topics;
If you are interested in submitting a proposal for a long talk/short talk or any other exhibits, please go here.
Thursday, August 25, 2005
After I started my blog, I anted to know which search engines could catch my blog first.
I searched for "Gyaana radha" on Yahoo and Google. On Yahoo, my blog is the first result. On Google, I am not even there!! . This despite the fact that I added my URL to Google a week ago.
This shows that
1) Google hasn't processed my URL yet. and/or
2)Yahoo's ranking algorithm has more keyword based weightage to it then Google's algorithm( which is probably entirely Page Rank based). As far as I know, no one links to my blog yet :-((.
I searched for "Gyaana radha" on Yahoo and Google. On Yahoo, my blog is the first result. On Google, I am not even there!! . This despite the fact that I added my URL to Google a week ago.
This shows that
1) Google hasn't processed my URL yet. and/or
2)Yahoo's ranking algorithm has more keyword based weightage to it then Google's algorithm( which is probably entirely Page Rank based). As far as I know, no one links to my blog yet :-((.
Subscribe to:
Posts (Atom)