Bob La Quey wrote:
Also increasingly as Andrew points out all most people do
with code is glue APIs together and use huge libraries. Honestly
I don't find that to be much fun, which for me was always the
main reason to program. Yes, I am not very "professional."
I used to think that way, but I have come around.
I find that gluing API's together lets me concentrate on the real
problem instead of reimplementing the wheel.
For example, let's implement a circuit simulator. What are the
fun/useful bits to me? Well, primarily the transistor models and the
solution procedure.
What are the unfun/annoying bits to me? Input and output formats and
parsers--solved with an API. Use an XML library until performance
becomes a problem. Displaying data in a useful way--solved with an API.
Use one of the nice scientific graph packages that goes straight to
Windowing Toolkit/OpenGL on screen and PDF/PS for paper. Handling the
underlying differential equation solver--ugh--*definitely* solve that
one with an API. Pick up one of the accelerated packages for numerics
and its corresponding language wrapper.
That's a lot of gunk that I no longer have to know just to simulate a
circuit.
Or, recently I wrote some code to scrape data from the web and analyze
it. The analysis is the fun part. Scraping the HTML--ugh--go grab
BeautifulSoup (which I highly recommend) which applies all manner of
heuristics to chew through badly formed HTML/XHTML/whatever. Mailing
the results--go grab the SMTP library.
From my point of view, API gluing frees me to go do the fun stuff while
minimizing the brain load to handle infrastructure.
-a
--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-list