David Cary

Interested in electronics / firmware / software / embedded.

How do I become a better programmer? How To Improve Programming Skills.

How do I become a better engineer? Hardware Engineer?

I'm building a data store. I want it to have these properties:

No Single Point Of Failure. If any single hard drive or other thing fails, users never even notice -- can still read and write files as always.

"hot repair" -- a technician can fix any single failure without taking the system offline.

"hot testing" -- I can confirm all the data is properly backed up, without risking overwriting the current "live" data with old "backup" data, and users can still read and write files as always during the test.

Surely I'm not the only person in the world that wants something like this. A few of the people I mention this to claim "All businesses big enough to have an IT department already have something like this". But when I ask "If such a system already really exists, where can I buy one (Buy Dont Build)?", no one seems to know.

If such a system doesn't yet exist, perhaps I'll not only build one for me, but start selling it to other people ...

"making stuff smaller"

David Cary has programmed several Embedded Systems with little RAM, no hard drive, and anemic processors. This leads to an interest in "making stuff smaller".

I am porting Forth Language to a microcontroller with 256 Bytes (that would be 0.256 kiloBytes) of RAM. I suppose forthfreak.net would be a more appropriate forum to discuss it.

smaller software Forth Values

With little RAM, it would be nice to have a "space-optimizing compiler". Perhaps Category Duplication Finding Tool could help?

(2004-08-14: I created Time To Make It Short)

smaller development environment Programming On Hand Helds Category Forth

Other ways to make things smaller and simpler, in general: Data Compression Ridiculous Simplicity Gives Ridiculous Resources www.handhelds.org

(I created the page Programming Isa Small Part)


I wrote code for processor inside a (prototype) computer keyboard for Donald Allen.


programming languages

David Cary has programmed in over two handfuls of computer "languages", and is trying to become fluent in 3 natural languages. This leads to an interest in


My Pascal teacher taught us to draw Nassi-Shneiderman flowcharts, and in another class I wrote a very crude prototype of piece of software to let users draw Nassi-Shneiderman flowcharts. Later I *almost* learned Lab View. This and my interest in learning new programming languages leads to an interest in Nassi Shneiderman Diagrams Literate Programming Visual Language Visual Programming Visual Programming Language Graphical Programming Language

I even became the First Editor of the Visual Wiki visual.wiki.taoriver.net .

I discovered Hyper Card and Use Net in college, so I was already pre-primed to understand the WWW when it came out. (I suppose you can get a pretty good estimate of my age from that fact.)

I spend too much time thinking about building robots, and not enough time actually building robots. Lego Mindstorms

I list pages I'm interested in on Auto Pcn , even though it is (hopefully temporarily) disabled.

(I created Self Replication)

I enjoy building/discovering good names. Meaningful Name

(2003-12-30: DAV created Category Naming)

Other pages I found interesting that I should probably categorize:

(I created the page World Peace, not realizing that we already have How To Achieve World Peace)

(Then I went and created the Remote Strangulation Protocol. Sigh.)

(I created the page Things You Should Never Do, but then someone else made it ever so much better)

(I created Blind Alley)

(I created Learning Java)

(2004-03-05 created Hardware Errata)

(2003-01-14: created the page "What Is Information")

(2004-02-04: David Cary created Email Hurdle)

(2004-08-05: created "Test The System")

(2004-11-24:David Cary: I created Language Of Choice and Languages Of Choice, and removed spaces from those phrases on many other pages.)

The day after I read Index Card on Ward's Wiki, I bought a stack of 3x5 Index Cards. Shop For Index Cards. I find Buckminster Fuller (the person, or rather, the books he's written, not the Wiki Page) very inspiring. I've built a few Platonic solids out of Index Cards. And I've started carrying around a Hip Top as described on the 43 Folders wiki wiki.43folders.com


I am happy that other people (Thanks Mark Irons !) fix the "space before the question mark" punctuation gaffe and my other typos.

To do

Todo: refactor Geography Example Hex Grid Icosahedron Hex Grid Sphere Hex Grid Disk to put "non-intuitive / common mistakes" up front. There seems to be a lot of redundancy on these pages; should I combine them and then break them back apart? Perhaps Sphere Tiling and squares_vs_triangles_vs_hexagons?

(2004-08-30: I created Without Cause)

Todo: run the test at Better For Loop Construct on my machine.

Todo: compile the code at c2.com and see what my GCC compiler produces.

Should I add: Goal Statement? Should I add something about copyright: Primarily Public Domain Copy Right Copy Left Open Author?

email d.cary+c2 at ieee.org or just stick comments here in this


wrist CNC machines

I just made that up on-the-spot for Programmable Calculators - I don't remember ever hearing that idea before. I extrapolated the idea of handheld devices having more and more ability. I interpolated between yesterday's refrigerator-sized Computer Numerical Controlled metal-cutting mills, today's table-top Flutter Whumpers, and Eric Drexler's future thumb-sized Universal Assembler manufacturing plants. -- David Cary




Re: your job hunt, please have a look at Software Companies In Boston. You will find an excellent list of places you can send your resumé to. It would not be a bad idea to make a similar list for other cities: Austin for example.


-- ar

Thank you.

PS: An interesting PIM wiki written in VB: the one programmed by the amazing Donald Noyes our own inventor busybee: Nyswiki. If you leave your name on his homepage, he'll send you a copy.

You are welcome. Unfortunately, the Eddies Wiki wiki -- which contained the entire source code for Eddies Wiki -- seems to offline now. I wonder if any other wiki exist that allow people to comment on source code. Well, other than communitywiki.org . -- David Cary

Good stuff you did on the Power Trip page, may I suggest adding Not Invented Here as an example of "Behavioral aspects" section entry? I do not want to change it myself to take away the Quick Diff credit that is yours.

One thing you scientists can help solve one of my queries. Years ago I saw lots of "solar powered" calculators, and decades ago we have watches that were "human motion powered". Do we not have enough energy to harness through these and other sources to keep a Smart Phone running? Or is it the economics (energy still too cheap) that have prevented resurgence of such "alternate energy" solutions?

''Good question. Does this article answer your question?:

"On 'Dick Tracy' Time" by Junko Yoshida, 2004-11-01 www.eetimes.com

" A typical watch, which can run without interruption for three years, needs only 1 milliamp; a cell phone integrated with DSP and RF capabilities needs at least 150 mA."

I think this 150 mA is in the receiver, which must be constantly turned on (otherwise it wouldn't know to ring when someone called you). 3 years times (1 mA / 150 mA) is about 7 days.

Hey Dave!

My name is Marcus and I noticed that you were looking for a Hackerspace in Tulsa. I started an electronics club last year, but now we need a place to meet. So the time is nigh, that we pool together some resources and start a hackerspace!

The only internet safe way to give you my contact information (that I can think of at the moment) is facebook. You can find me there under my full name Marcus Gaskamp.

I hope to talk to you soon!

Hey Marcus. I hope to talk to you soon. Do Tulsa electronics enthusiasts have a web site like geeksok.com ? I would like to set up a wiki for Tulsa electronics enthusiasts, if you don't have one already. My telephone number is on my resume at david.carybros.com .

-- David Cary

Hi Dave,

This is Robert Munafo. You wrote (in Wiki Words Considered Harmful):

(How did Robert Munafo search for C for his programming language comparison www.mrob.com ?)

I include the word language as a mandated keyword (prefixed by +). us.yhs4.search.yahoo.com

See original on c2.com