Archives

July 7th, 2010 | Tags: C++, quality, software | Category: Tech

How to write abstract iterators in C++

When developing in C++, an impeccable API is a must have: it has to be as simple as possible, abstract, generic, and extensible. One important generic concept that STL made C++ developers familiar with is the concept of iterator.

An iterator is used to visit the elements of a container without exposing [...]

Continue reading How to write abstract iterators in C++

November 6th, 2009 | Tags: ASIC, EDA, FPGA, software, verification | Category: Business, EDA

What EDA needs to change for 2020 success?

ICCAD’09 was a fairly good vintage. It started Monday morning with an excellent keynote from Hamid Pirahesh about cloud computing. The same day in the afternoon, a more EDA-focused discussion was initiated by Jim Hogan and Paul McLellan (slides can be found here), asking the question “What EDA needs to change for [...]

Continue reading What EDA needs to change for 2020 success?

October 30th, 2009 | Tags: Altera, Business, FPGA, India, outsourcing, software, Xilinx | Category: Business

How can Xilinx improve its bottom line

Last week I wrote a post discussing Xilinx and Altera Q3’09 results, and I mentioned Xilinx’ operation margin consistently trailing Altera’s by 3-4%. I had a few emails regarding that gap, and why that gap would be closed eventually. Let me address this topic with this post.

Comparing the yearly fiscal exercises directly would be biased [...]

Continue reading How can Xilinx improve its bottom line

October 13th, 2009 | Tags: EDA, quality, software, verification | Category: EDA, Tech

Test-driven design, a methodology for low-defect software


I wrote earlier about the good practices in designing APIs, which is so important when developing complex software. However one usually does not have the chance to start a product from scratch. This means that more often than ever, a software manager picks up an existing tool with an existing [...]

Continue reading Test-driven design, a methodology for low-defect software

October 8th, 2009 | Tags: quality, software | Category: EDA, Tech

API design 101

I built up products from scratch several time in my professional life. Usually it starts with a very small engineering team –sometimes I was the very first member of the team. This is a great opportunity to lay strong foundations for the subsequent software development, because one is in charge of the [...]

Continue reading API design 101

September 20th, 2009 | Tags: China, India, outsourcing, software | Category: Business, Tech

Software outsourcing, a necessary evil

Here are the definitions of two words that have a bad press, especially in these harsh economic times:

Outsourcing (included in dictionaries in 1979): the procuring of services or products, such as the parts used in manufacturing a motor vehicle, from an [...]

Continue reading Software outsourcing, a necessary evil