You Call That Broadband?

Posted by Sajith M on Aug 18th, 2008
2008
Aug 18

Tech News World had this to say about the broadband speeds in US:

In the U.S., the median real-time download speed was 2.3 Mbps. That lags significantly behind other industrialized nations such as Japan, with an average download speed of 63 Mbps; South Korea, with 49 Mbps; and France, with 17 Mbps on average.

Makes me wonder if the 64/128/256kbps connection that some vendors like to call broadband are really broadband.. And also wondering why the hell is bandwidth so damn expensive in India :-(

Posted under: Technology
Tagged with: , ,

Bose Einstein Condensate - Now In India

Posted by Sajith M on Sep 6th, 2007
2007
Sep 6

Tata Institute of Fundamental Research (TIFR) researchers Sanjukta Roy and Saptarishi Chaudhuri with C.S. Unnikrishnan, have produced the Bose Einstein Condensate - the fifth state of matter for the first time in India.

Bose Einstein Condensate for the first time in India

The Telegraph report:

The researchers at the Tata Institute of Fundamental Research, Mumbai, led by physicist C.S. Unnikrishnan, have produced for the first time in India an exotic state of matter, first predicted 82 years ago by Albert Einstein and Satyendra Nath Bose.

The TIFR scientists used magnetic fields and lasers to cool atoms to an extremely low temperature — a whisker above minus 273.15 C, or absolute zero — and created a Bose-Einstein Condensate (BEC), sometimes called the fifth state of matter.

Posted under: Technology
Tagged with: ,

Measuring Developer Productivity

Posted by Sajith M on Jul 13th, 2007
2007
Jul 13

My job requires me to periodically submit information on the productivity of a software development team (team consisting of software developers), and more importantly this has to be a number and (however much I might like the non-measurable answers, they) can’t be like “doing good”, “better than last year” and things like that. Basically I need to quantify the productivity of a team or an individual. What is a good measure of productivity and how do we get to measuring it?

Who is a more productive developer - the one who writes the best code that don’t fit the requirements, or the one who writes mediocre code that fits the requirements? Or to ask the same question in a more buzzword rich language: What is more important - efficiency or effectiveness?

To begin with, what is productivity? Productivity can perhaps be best defined as “The amount of output per unit of input”. Hence, to measure the productivity of a software developer we need to measure the output of software development. And since we can’t measure the output of software development, we probably can’t measure software developer productivity.

Of course, that does not mean that people don’t try to measure developer productivity - they do and in a number of ways. The fact that none of them is a good way to measure productivity has not deterred people who believe that they need numbers to be in control, or to be knowledgeable about the progress being made…

The first and perhaps the most popular method is measuring the lines of code. The assumption being that the more lines of code you write, the more productive you are. The simplicity of this method is also its greatest weakness. As anyone who has written code for a living can attest, there are a huge number of ways in which the same problem can be solved and each of them results in a different number of Lines of code. Then there is the question of how the number of lines are calculated - are braces on a different line taken into account, what about empty lines, comments etc. Yet despite its obvious weaknesses and a complete lack of correlation with the productivity, it continues to be the most popular measure. Guess, that speaks something about out management techniques that depend so much on figures that it willing to risk its life on any methodology that comes it way, however irrelevant it may be.

LOC is not the only measure that is used to calculate productivity. Another common one is function points - the number of function points implemented by a developer in a given space of time. This is better than counting LOC but still pretty inaccurate if you consider the fact that function points for a given feature can vary by an order of magnitude depending on the method used to make the computation. When the productivity figures don’t depend on the developer and rather depends on who calculated the FP and using what method, we can be confident that we have a number that does not necessarily bear much resemblance to the actual productivity.

The third one, and relatively less used one is the bug count - the lower the bugs, the better you are. Of course, this is a valid measure of quality if everyone does same amount of work with the same amount of complexity. If you have ever done commercial programming - programming to earn a living, you would by now be laughing your lungs out just imagining everyone doing same amount of work and involving the same amount of complexity. The fact that people don’t do an equal amount of work, or work involving the same complexity renders the method pretty much useless to compare your programmers. Then of course, there is the fact that if you don’t write any code, you don’t have any bugs. Zero bugs means great productivity, while the actual productivity is a big zero. Me for one would not like to have this method used to compute productivity.

Another factor that we haven’t yet considered is that neither lines of code not function points actually measure the productivity of the software. For example which one would you consider more productive - a program that is 100 FP and 1000LOC and brings in $500,000 or another program that is 200 FP and 2500 LOC but brings in $100,000. And which developer would be considered more productive? Also, software does not provide returns immediately once it’s been deployed, rather the returns come over a period of time, and as such how do you measure the total productivity that is achieved by developing software?

The most common excuse presented in favour of the indispensible need for measure is “if you can’t measure it, you manage it”. Of course, having a good measure helps manage things, but saying that a measure is indispensible for managing an activity is a lie - a lie of the highest degree. After all, how are lawyers and creative people paid for their works?

If we could assess software much more easily and objectively than we can now, it would be great and perhaps a good measure could be worked out as well. But false measures only make things worse. I suspect that looking away from any agnostic, algorithmic solution and instead using own personal prejudices to judge how well the developers are solving the problems assigned to them would be a better bet. It boils down into personal judgement and actually having a clue of what the developers do, and measuring the wrong things is only making things worse. I think it’s better to accept our ignorance and stop measuring for irrelevant things than get the false measure and get false ideas based on the measures.

Of course, what do I report as the productivity of my team is still an open question. Any suggestions?

Update: anon points out This seems to border on plagiarism of this post by Martin Fowler: http://www.martinfowler.com/bliki/CannotMeasureProductivity.html. Thanks anon for pointing this out, I definitely did not want to copy Martin Fowler though I believe I did express the same thing that he had said.

Posted under: Technology/Software Development
Tagged with: , , , ,

Killing Innovation (yet again)

Posted by Sajith M on Jun 22nd, 2007
2007
Jun 22

Rediff says:

Satellite radio service may get costlier for consumers once WorldSpace, the only satellite radio company in the country, is asked to pay license fee as well as share up to 20 per cent of its annual revenue with the government.

According to sources, the draft satellite radio policy includes imposition of a one-time entry fee for satellite operators, up to 20 per cent revenue-sharing arrangement with the government, a 26 per cent cap on foreign direct investments for broadcasting news and current affairs.

This move is seen by industry observers as a step from the government to boost the expansion of the private FM radio network. The broadcast of news and current affairs is still not allowed on private FM radio.

Even the radio forum of industry body Ficci has asked the I&B ministry to promote private FM radio over satellite radio.

So what’s up with the I&B ministry asking for a revenue share? FM uses frequency bands that (unfortunately) is something that the government owns, but as far as I know even though satellite radio uses frequency bands, these are not part of the spectrum that the government owns. So what is the basis for this (yet another) wonderful proposal from the I&B ministry - siding with existing FM players and killing the new medium? Or pure greed?

Posted under: Technology
Tagged with: ,

Oh Nine, Eff Nine

Posted by Sajith M on May 28th, 2007
2007
May 28

If you are wondering what this is, it is a Processing Key for breaking HD-DVD AACS encryption. Try searching for 09-F9-11-02-9D-74-E3-5B-D8-41-56-C5-63-56-88-C0 if you want more info.

If someone has still not learned that DRM is a waste of time and money in addition to being a royal pain, I only have sympathy for them.

Posted under: Technology
Tagged with: , , ,

The Apple iPhone

Posted by Sajith M on Jan 10th, 2007
2007
Jan 10

Finally Apple unveiled its phone - iPhone at MacWorld Expo. Here is the official info.

Pictures shamelessly copied from apple site:

Apple iPhone Dimensions
Apple iPhone Technical Specifications

Pictures from MacWorld 2007 (thanks to kottke.org)

Apple iPhone Unveiled at MacWorld 2007
Apple iPhone Unveiled at MacWorld 2007

That’s it for now. Waiting for the thing to hit the stores (in India)

Update 1: This won’t be my next phone because:
- No 3G
- No syncing using WiFi
- Can’t install new software on this (this is a majr disappointment)

Posted under: Technology/Gadgets
Tagged with: , , , ,

My Moto Ming (Motorola A1200) Review

Posted by Sajith M on Dec 28th, 2006
2006
Dec 28

I decided to get myself a New Year gift and picked up a new Moto Ming (Motorola A1200). The listed Maximum retail price is Rs. 18370, while I picked it up for Rs 16,500 (INR). So here is my first attempt at a phone review.

The Box Phone on the Box The phone display

In the Box
The box includes the phone, three styluses, travel charger, USB data cable, 512MB Transflash (T-Flash, micro-SD) card with a mini-SD adapter, stereo headset and the manual.

Design and Construction
If you have used A780 (as I have), you should not have any trouble getting used to the A1200. The unit feels solid, well built but not too heavy or bulky (A780 qualifies as a bit bulky). I liked the black matte look, kind of looks cool and has a feel similar to the PEBL. The front cover is hard translucent plastic, but allows clear screen display (better than expected). On the negative side, the flip is a bit tough to open (or am not yet used to it). Also the memory slot is under the battery, which means changing memory cards is a pain.

Display
Bright and clear LCD display with a resolution of 240×320. Good enough for most purposes. The text is clear and sharp, perfectly readable even when you set the text size to small.

Input
Handwriting input is pretty nice, but pretty much similar to A780. It still gets confused between l (small L) and i (small I), but then maybe it’s just my handwriting… The on-screen keyboard is quite usable; you can type with the stylus but don’t try typing with your fingers. Support for HID profile is missing, so don’t think of hooking up a keyboard to your phone.

Memory
8MB internal memory is a sad joke. Free 512MB micro-SD compensates for it though.

Built in Programs
Frankly, I don’t care as you can always download the ones you like, or write your own. Anyways, the supplied programs are fine - acceptable sort of thing.

Camera
Takes decent pictures if the lighting is good. Has a macro mode so take very close, close-ups. Here are some pictures taken with the camera to give you a hang of the quality.

20061228_124431.jpg 20061228_130155.jpg 20061228_130229.jpg

A phone is for making calls
Good audio quality. Signal reception is pretty good too.

Conclusion
A nice phone for a decent price tag. If you are looking for a new phone, you should consider A1200 :-)

Posted under: Technology/Gadgets
Tagged with: , , ,

Project Disaster

Posted by Sajith M on Nov 28th, 2006
2006
Nov 28

A project (software project) is a disaster in the making when:

  • you have a project that has vague requirements/unclear requirements
  • you have a project that has an impossible deadline and/or budget
  • you have a project that no one wants to be part of

One or more of these factors are a sign that you are on a project that is going the disaster way. These are three factors I could think of, what do you think?

PS: A blogger who happens to be on such a project might stop blogging for such a time, till the project gets over or is canceled (hint to Ekawaaz ;-)

Posted under: Technology/Software Development
Tagged with: , , , , , ,

Sysinternals Suite

Posted by Sajith M on Nov 8th, 2006
2006
Nov 8

The entire set of Sysinternals Utilities, rolled up into a single Suite of tools. Download here.

Posted under: Technology/Downloads

DirectX 10 compliant GeForce 8800

Posted by Sajith M on Oct 18th, 2006
2006
Oct 18

DailyTech reports

The new NVIDIA graphics architecture will be fully compatible with Microsoft’s upcoming DirectX 10 API with support for shader model 4.0, and represents the company’s 8th generation GPU in the GeForce family.

NVIDIA has code-named G80 based products as the GeForce 8800 series. While the 7900 and 7800 series launched with GT and GTX suffixes, G80 will do away with the GT suffix. Instead, NVIDIA has revived the GTS suffix for its second fastest graphics product—a suffix that hasn’t been used since the GeForce 2 days.

NVIDIA’s GeForce 8800GTX will be the flagship product. The core clock will be factory clocked at 575 MHz. All GeForce 8800GTX cards will be equipped with 768MB of GDDR3 memory, to be clocked at 900 MHz. The GeForce 8800GTX will also have a 384-bit memory interface and deliver 86GB/second of memory bandwidth. GeForce 8800GTX graphics cards are equipped with 128 unified shaders clocked at 1350 MHz. The theoretical texture fill-rate is around 38.4 billion pixels per second.

Slotted right below the GeForce 8800GTX is the slightly cut-down GeForce 8800GTS. These graphics cards will have a G80 GPU clocked at a slower 500 MHz. The memory configuration for GeForce 8800GTS cards slightly differ from the GeForce 8800GTX. GeForce 8800GTS cards will be equipped with 640MB of GDDR3 graphics memory clocked at 900 MHz. The memory interface is reduced to 320-bit and overall memory bandwidth is 64GB/second. There will be fewer unified shaders with GeForce 8800GTS graphics cards. 96 unified shaders clocked at 1200 MHz are available on GeForce 8800GTS graphics cards.

Additionally GeForce 8800GTX and 8800GTS products are HDCP compliant with support for dual dual-link DVI, VIVO and HDTV outputs. All cards will have dual-slot coolers too. Expect GeForce 8800GTX and 8800GTS products to launch the second week of November 2006.

From another DailyTech report

The marketing material included with the card claims NVIDIA requires at least a 450W power supply for a single GeForce 8800GTX, and 400W for the 8800GTS. GeForce 8800 cards in SLI mode will likely carry a power supply “recommendation” of 800W.

While I am glad to see DirectX 10 compliant graphics card, the power requirement leaves me a bit disappointed.

Posted under: Technology/Gadgets
Tagged with: , , ,

Next »