Slashdot Mirror


Embedded Ethernet and Internet Complete

tdrury writes " Embedded Ethernet and Internet Complete , by Jan Axelson, is targeted towards the professional as well as the hobbyist embedded system designer who wants to further extend his communication options from traditional serial (RS-232, RS-455) communications to Ethernet. Axelson had been an author for Circuit Cellar magazine, and I have always enjoyed her articles, which tend to cover embedded communications of one type or another. (Axelson authors a set of Complete books including ones covering serial, parallel, and USB communication.)" Read on for the rest of tdrury's review. Embedded Ethernet and Internet Complete author Jan Axelson pages 482 publisher Lakeview Research LLC rating 9 reviewer Tim Drury ISBN 1931448000 summary Designing with Ethernet in embedded systems.

Axelson's writing style is a little difficult to describe. At times you feel you could be reading a "For Dummies" (TM, Patent Pending, Please Don't Sue Me) book since her writing style is so easy to digest, but simultaneously, she's covering quite a bit of depth and breadth which you expect from a more advanced volume. This seems paradoxical yet the point stands: you will retain what you read from Axelson.

Contents

The networking basics sections describes the network protocol stack (Ethernet, TCP, UDP, and IP frames), collision mediation, and how to use a sniffer (Ethereal in her case). It's of moderate detail suitable for an introduction. Much more detail is provided in later sections. Axelson also uses this section to describe, in good detail, the Ethernet media access control scheme that arbitrates which device talks when and how to handle packet collisions.

These network hardware sections are an in-depth description of cabling (Cat-5, fiber, wireless, etc.) which includes bit rate, max lengths, encoding types, etc. She also includes a small section on building your own Cat-5 for you really cheap Joes. There is a cursory review of hubs, switches, and routers and the network architecture limitations imposed by each for each type of network cabling.

Axelson goes on to describe some common embedded systems including TINI (Java-based) and Rabbit (C-based), which are the two systems she uses and provides examples for. Thankfully, keeping with her Circuit Cellar hobbyist tradition, both of these systems are very affordable to the casual hobbyist. She also provides detailed descriptions of some common Ethernet chipsets down to the registers (at least for the ubiquitous NE2000 registers). Also included are schematics for typical interfaces to these chipsets for the reader who wishes to build his own Ethernet-aware embedded system.

The Internet basics sections describe the various connection solutions such as dial-up, DSL, and satellite and the benefits and limitations of each. Axelson provides a cursory discussion of firewalls, domain naming and DNS, URL dissection, DHCP, NAT, ARP, and ICMP. These sections, I believe, are suitably informational for the embedded system designer, but not exhaustive. She then launches into an in-depth discussion of IP addressing and the IPv4 header which, in my opinion, is required for anyone working at the packet level. Axelson uses some data from Ethereal to support her discussion of IPv4. She also reminds us that Ethernet communications need not use the full TCP or UDP stack but can, if desired, use only IP-wrapped packets or even just Ethernet frames to communicate.

We finally get to some real code in the TCP/UDP socket communication sections. Axelson begins with samples of UDP, then TCP, socket communications. She bounces back and forth between Rabbit C code and TINI Java code. Both sets of examples are properly threaded so as to be more than just academic-example hogwash. Then she delves into the details of UDP and TCP, beginning with descriptions of the frame headers, then concludes with handshaking/flow-control (SYN-ACK and so forth). She includes suggestions for other books that continue even deeper into socket communications which is very nice especially since they aren't gratuitous promotions from the same publisher. (They are, in fact, from two different publishers.) By the way, Lakeview Research is her own company, so Axelson self-publishes. Nice.

Fully half of the book is dedicated to describing the top layer of the protocol stack: applications. Specifically, HTTP client and server, receiving and sending email, and FTP client and server. The HTTP samples leverage the bundled TINI and Rabbit libraries to serve web pages. Axelson also includes examples of running a third-party servlet engine (Tynamo) on the TINI system. Similarly, the sections for sending and receiving email and the FTP client/server leverage the bundled libraries of Rabbit and TINI. I find this appropriate -- why write low-level socket code when there are available libraries that perform all the grunge work for you? If you do need to modify the support libraries, the Rabbit Dynamic C source code is available, but the TINI Java library source code is not.

The last few sections of the book discuss security. Axelson doesn't leave security as a footnote, as she does include sample code for basic authentication, but she also doesn't give security the depth she provided the other topics. Sure, security is a huge topic which would take numerous volumes to cover, but I thought this section could use a little more detail. I would like to have seen example code in the sections on encryption (both symmetric and asymmetric). I would like to have seen what is required to enable SSL in the web server examples. If these were not to be provided, I would have like to have her cite other books which would have completed her discussion as she did in the raw socket communications sections.

What Could Be Improved

I don't really like the large font and spacing used in this book; I prefer a more condensed text which probably would have reduced the book size some 20% or so. But as I think about it, perhaps this is one characteristic that make Axelson's books so easy to read: there is little eye-strain.

In the hardware sections, I would like to have seen even a trivial example of an NE2000 device driver. It wouldn't even have to be an Ethernet-compliant driver, just something that demonstrates sending and receiving with flow and error control. This would be useful if you were building your own device which didn't include a protocol stack.

In the low-level socket communications sections, I would have preferred to see two things. First, I would have liked to see a test program that communicated between the C-based Rabbit and the Java-based TINI to demonstrate a heterogeneous distributed embedded system. Second, I would have like to seen an echo test program. When prototyping communications to any embedded system I always write an echo test program which begins by transmitting a small message with a numeric value, then listens for messages, increments their value, and sends them back out. Validation testing is performed during this process. This program is easy to write and a great diagnostic tool.

Conclusion

Since this is my first book review I can't objectively give it an absolute rating like 4 stars or 8/10 since you have nothing to compare my judgment to. However, I can say that this book is well worth the money spent which, all too often, isn't the case anymore these days. I think Axelson has struck an ideal blend of detail where needed and summary when detail is not required. The book is organized well and should satisfy both the casual bathroom reader and the rigorous, horribly-cracked-binding, lab-bench-reference reader.

I like Axelson's writing style; it's an ideal blend of assume I'm an idiot-style when you need it and in-depth when you want to dig. Another great point: she doesn't stuff the appendices with data sheets, API documentation, or command syntax references. All those can be found on-line and have no place in a book, where they quickly become dated. If you absolutely must have a definite rating, then I'd give it an 8 or 9 out of 10. I would place books like Stevens' Unix Network Programming at a solid 10 and about 99% of the other books out there around a 5.

You can purchase Embedded Ethernet and Internet Complete from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

105 comments

  1. hehe by fjordboy · · Score: 3, Funny
    The book is organized well and should satisfy both the casual bathroom reader and the rigorous, horribly-cracked-binding, lab-bench-reference reader.
    And sometimes, those two types are the exact same reader...
  2. Thanks for the review by prostoalex · · Score: 4, Interesting

    It sounds like a good title to have around, I will probably buy it just for that reason.

    However, if the device or embedded system you're working on is already designed and your goal is to network-enable it, what do you guys turn to? From what I've seen around, Lantronix XPort is a good option for cheap embedded device servers, but what else is available?

    1. Re:Thanks for the review by NFN_NLN · · Score: 2, Informative

      Most small PIC/AVR projects that I have seen use these: http://edtp.com The only problem is it's a SW solution so don't expect them to outlast even the saddest DoS attack :)

    2. Re:Thanks for the review by daehrednud · · Score: 1, Informative

      Digi has an embedded IP device called Connect ME.
      You can get it with GNU tools which is nice if you are used to gcc and gdb.

    3. Re:Thanks for the review by Anonymous Coward · · Score: 0

      Check out solutions from www.multitech.com . They build or design modules for numerous applications.

      dcs

    4. Re:Thanks for the review by seanadams.com · · Score: 2, Informative

      There are a LOT of ways to do it these days. As with any CPU, you have to very carefully consider your volume expectations, r&d budget, and performance/feature requirements. The most MIPS for the dollar is probably the Ubicom ip2022 processor (120 or 160 MIPS for $10-$15 ea). This chip is used in the Squeezebox as well as some wireless access points and birdges. The ip2k is interesting because of its very fast interrupt latency which enables it do the ethernet MAC in software.

      However there are other products such as the Rabbit platform which have royalty free software and cheaper development kits, so they're more suitable for small volume or lower speed applications such as control systems. It is a multi-chip design with external ethernet and memory though, so not cheap per-unit.

    5. Re:Thanks for the review by kyllikki · · Score: 1
    6. Re:Thanks for the review by DezMo · · Score: 2, Insightful

      So apparently someone with a Lantronix bias, or an anti-Digi bias, has moderated the reply mentioning the Digi Connect ME out of sight, which is a direct competitor to the Lantronix XPort.

      Now why would anyone do that? Maybe it's time for me to finally check out this meta-moderation thingy... yeah, I'm a lazy lurker.

    7. Re:Thanks for the review by prostoalex · · Score: 1

      Wow, thanks.
      It looks really good.

  3. Re:Can you do it or can't you? by Anonymous Coward · · Score: 1, Funny

    Hi, I represent Indian computer services company. It sounds like we could talk to your boss about replacing you with two smart ambitious goal-oriented individuals that I have in my office right here.

  4. urrrgh by Anonymous Coward · · Score: 1, Insightful

    Ethernet, TCP, UDP, and IP frames

    Uhh.. Ethernet uses frames, IP uses packets.

    1. Re:urrrgh by marcusb · · Score: 1

      Uhh.. You missed a few: TCP uses segments, UDP uses datagrams.

  5. Re:Can you do it or can't you? by Anonymous Coward · · Score: 0
    Ok, you can call him. I'm quitting tomorrow. I can't work in a company that has even one computer Micro$oft malware.

    -Jim

  6. You'll get as much parity as we let you have. by Anonymous Coward · · Score: 0

    Used to be that San Francisco sent it's laundry by ship to be done in China. That was a temporary situation, too.

  7. Re:A woman wrote this? by jo_ham · · Score: 1

    And so many people at /. wonder why they don't have a girlfriend...

    The smartest person I know is female.

  8. Mr first review of a review by lonb · · Score: 2, Funny

    ...let me suggest not starting your list improvements talking about fonts ;-)

    --
    "Ain't I a stinka..." - Bugs
  9. Re:A woman wrote this? by Anonymous Coward · · Score: 0

    The smartest person I know is female.

    Then you don't seem to know many smart people indeed.

  10. Code samples for the book.... by tcopeland · · Score: 4, Informative
    ...in Java and C are here.

    And the usual code quality report courtesy PMD:
    $ java net.sourceforge.pmd.PMD ~/tmp/eec/embedded_ethernet_complete_code/ text rulesets/unusedcode.xml -shortnames

    Tini/RealTimeWebPage/RealTimeWebPag e.java 42 Avoid unused local variables such as 'server'
    Tini/SendEmailMailto/SendEmail.java&nbsp ; 106 Avoid unused local variables such as 'mySendEmail'
    Tini/TcpServer/TcpServer.java 35 Avoid unused local variables such as 'myTcpServer'
    Tini/UdpReceive/UdpReceive.java 31 Avoid unused local variables such as 'myUdpReceive'
    Tini/UdpSend/UdpSend.java 43 Avoid unused local variables such as 'myUdpSend'
  11. Complete Internet by RetroGeek · · Score: 1, Funny

    You mean I can buy the Internet?

    I wonder if the book includes a CD?

    --

    - - - - - - - - - - -
    I am a programmer. I am paid to produce syntax not grammar. Deal with it.
  12. Free clue for Sam Duncan... by rewt66 · · Score: 2, Insightful

    Embedded and real-time are not equivalent.

  13. Re:Rubbish by Anonymous Coward · · Score: 0

    And Java, too.

  14. Re:Can you do it or can't you? by Anonymous Coward · · Score: 0

    Good luck in that. You pretty much narrowed your choices down to Sun, Apple, and Redhat. And I am not even sure that they don't have at least one machine around just to compare to.

  15. How about a USB starter kit? by evilad · · Score: 1

    Anybody seen something similar, but for USB? I.e., if you want to build an embedded USB slave device?

    1. Re:How about a USB starter kit? by stratjakt · · Score: 0, Troll

      Axelson authors a set of Complete books including ones covering serial, parallel, and USB communication

      I recommend "RTFA for dummies."

      --
      I don't need no instructions to know how to rock!!!!
    2. Re:How about a USB starter kit? by ATucker · · Score: 2, Informative

      You can answer this question in 5 seconds on Amazon or Google... Axelson wrote a book on USB development as well. Check it out here

      --
      /* Andrew */
    3. Re:How about a USB starter kit? by kvigor · · Score: 3, Informative

      As it happens, Jan Axelson has written this exact book, USB Complete. I am in the process of implementing a USB device and I give it a hearty recommend. The "standard" work is USB Design By Example by John Hyde; it's nice to have, but if you have to pick one, the Axelson is both more readable and more complete.

    4. Re:How about a USB starter kit? by Anonymous Coward · · Score: 1, Interesting

      scroll down the page....

      http://www.beyondlogic.org/usb/usbhard2.htm

    5. Re:How about a USB starter kit? by Anonymous Coward · · Score: 0

      and here is the page with embedded ethernet kits .....

      http://www.beyondlogic.org/etherip/ip.htm

    6. Re:How about a USB starter kit? by Anonymous Coward · · Score: 0

      the new mouser catalog has some REALLY slick usb stuff in the microprocessor section. you can get all the usb circutry, and a "B" connector on a nice 20 pin DIP package. also comes with freely redistributable driver software.

      they have some boards now with ethernet AND USB on them. they come with open freely redistributable tcp/ip code. with sample webservers/ftp/email code included.

      i really need to play with some of teese things :)

    7. Re:How about a USB starter kit? by cybermace5 · · Score: 1

      I would like to second the recommendation, the book was quite useful to me as well.

      For a simple USB device, nothing beats the HID drivers. Much of the time, what you want to do is already built into the driver; joysticks, mice, keyboards, volume controls, etc. For other things, you can use control transfers to send data packets to the device. Faster stuff is more difficult, but a lot of example code is building up, much more than when I was working on USB.

      If you make your device emulate a standard HID, the added benefit is that it will work on most operating systems with little or no work developing host-side drivers.

      --
      ...
    8. Re:How about a USB starter kit? by cybermace5 · · Score: 1

      One other thing: Jan often haunts the comp.arch.embedded newsgroup, so sometimes you can ask about things in the books there and get answers straight from the horse's mouth. This is why I love Usenet...Gordon McComb of "Robot Builder's Bonanza" is also a heavily involved regular at comp.robotics.misc.

      --
      ...
    9. Re:How about a USB starter kit? by evilad · · Score: 1

      Actually I was looking for personal recommendations on starter kits. Something with a chip included. I'm not much for "feeling lucky" on hardware purchases that are going to involve dozens of hours invested.

      But thanks for the book recommendation.

  16. It's nice to find a woman by HotNeedleOfInquiry · · Score: 0, Troll
    Who can build a robot to go in the kitchen and get me some pie.

    --
    "Eve of Destruction", it's not just for old hippies anymore...
  17. I can recommend the Rabbit processor by Anonymous Coward · · Score: 3, Informative

    fwiw, I've been using a Rabbit (RCM2200) for almost a year now on a personal project. It's connected to my house network, which is connected to the internet via the normal methods (Linksys hardware). The supplied libraries that come with the Rabbit are very capable as-is, but you can expand them if need be since you get the source (as the reviewer mentioned). I added code to be able to do authenticated smtp logins, for example. Getting code up and running to be able to do a telnet login to check on its status, and change settings was dead easy. It runs 24/7 and has been very reliable... the uptime hasn't exceeded a few months simply because I usually don't go that long without performing a code update of some kind, or otherwise powering down for a hardware reconfig, etc. Someday I may document the project and submit it to /. .... those who have seen it thus far think it's pretty kewl.

    w

    1. Re:I can recommend the Rabbit processor by Anonymous Coward · · Score: 0

      So what's your house project all about? In a few words.

    2. Re:I can recommend the Rabbit processor by Mr2cents · · Score: 1

      I've also done multiple projects with Rabbit. It is a cool product, but the software environment is crappy. There have been many discussions about it on their forum, my main problem with it has always been the lack of a linker and #include is replaced by #use.. In these "used" libraries, you have to define external symbols in specially crafted comments.. basically the system is hacked together imho.
      They created a new IDE by the time I stopped using it, so that invalidates some other remarks I had, the older one was simply unusable.
      Also the compiler only runs on windows, I asked if they could bring out a command-line version for linux but they said it used the win32 api (a compiler using the Win32 API???). Together with the fact that shortly before that they didn't even have a command-line version for windows, suggested to me that the compiler was woven into the GUI. Again and again, bad design decisions boiled up in their software.
      But still, together with their TCP/IP stack, you can develop network-enabled embedded devices much faster and cheaper than whatever I've seen, if you can cope with some frustration.

      PS: If you plan to use the rabbit, here's a free advice: there is no such thing as a signed char in DynamycC. char == unsigned char. It cost me a couple of days to realize.

      --
      "It's too bad that stupidity isn't painful." - Anton LaVey
    3. Re:I can recommend the Rabbit processor by Anonymous Coward · · Score: 0

      1) Checks my email at a configurable rate
      1.1) if so directed, emails me at work with a list of all current emails (firewall from hell at work) whenever the status of my pop3 acct changes.

      2) It's also connected to a custom made back-illuminated world map (think James Bond). Each continent can be driven to 1 of 3 colors. This is done with a serial link, the world map contain a BASICX processor. The map resides in my living room - looks nice, very aesthetic.

      For instance, email from someone on a white list, North America turns red. Email from the gf, South America turns red. Unknown email, Europe. Below freezing outside, Antarctica turns blue. Over 80F, turns red. Quiescent state is yellow for the whole map. Soft errors turn Australia green... hard (voltage problems, etc) errors turn Australia red.

      and so forth. It's not done yet.

      w

    4. Re:I can recommend the Rabbit processor by Anonymous Coward · · Score: 1, Informative

      Yes, the general observation that the development platform is not as extended and mature as we'd all like it to be is correct. I think benchmarking a product like this against a high volume production environment (Windows, *nix) is a bit unfair. I bet the quality of this product vs the number of man-hours spent on it is as high or higher than if you spotlighted a similar time in the development of Windows or *nix programming environments.

      btw, the current IDE is totally usable for me (v8.01 I think? or is that 8.10... 8.2?) and while some of their design decisions about the language implementation are questionable as you've mentioned, I think the value for the $$ is still a high ratio.

      all imo

      w

    5. Re:I can recommend the Rabbit processor by Anonymous Coward · · Score: 0

      Another Rabbit user here. I agree that Dynamic C v8.x is better, but it still sucks. It is reasonable to expect ANSI C. Dynamic C isn't ANSI. They could be a poster child for OSS and help themselves out a lot if they would just dump the compiler and get GCC working on it. They make there money on hardware anyway. Why not embrace OSS for their software tools? The only drawback I can think of is for the current developers employed to write this software. I know this is AC and few will read it, but can someone, anyone explain why ZWorld/RabbitSemi isn't doing this?

  18. Re:A woman wrote this? by jo_ham · · Score: 1, Informative

    Not at all.

    The fact that I'm as ugly as a smacked arse would put women off.

    I was just pointing out that not all women are stupid.

  19. Re:A woman wrote this? by Anonymous Coward · · Score: 0

    No, the reviewer made a mistake. Jan is a man. It is not Jan as in, "Marsha, Marsha, Marsha!" Jan is prounced like "yawn" and is a male's name that is germanic (scandinavian? something in that general vicinity) in origin.

  20. Re:A woman wrote this? by Anonymous Coward · · Score: 0

    BWAHAHAHAHA!!!! Even my wife thought this one was funny. Gawd the mods are really puritanical now, aren't they? Get a clue and a sense of humor you dilholes.

  21. Re:A woman wrote this? by Anonymous Coward · · Score: 0

    Correct. In fact, I'm a German and my name's Jan (pronounced "Jun").

  22. Re:A woman wrote this? by tdrury · · Score: 1

    No, Jan is a woman.

  23. Bigger Is Sometimes Better by Anonymous Coward · · Score: 1, Interesting

    By the way, Lakeview Research is her own company, so Axelson self-publishes. Nice.

    While I admire Jan for making a viable business out of something she obviously loves, she seems to have bitten off a lot for herself. After building some prototype hardware based on Parallel Port Complete, I found the book had an error making my hardware quite crippled (a software workaround was possible, but inefficient and ugly). I pointed it out to her via e-mail, but it was never resolved to my satisfaction. AFAIK, to this day that error still exists.

    I began to wonder what it must be like to self-publish and then deal with an error report when you are author, editor, publisher and tech support all rolled into one. A bigger company may not have handled my issue any better, but certainly it would have the resources do so easier than a small self-publisher. My two cents are: Jan's stuff is great for hobbyists, but beware of accuracy.

  24. Re:A woman wrote this? by Anonymous Coward · · Score: 0
    And so many people at /. wonder why they don't have a girlfriend... The smartest person I know is female.

    Mac OS X: A server strength operating system that your granny could install and use.

    I like the way you think on two counts.

    malia8888, OS X user & female

  25. other good embedded IP resources by SleezyG · · Score: 3, Informative

    TCP/IP Lean by Jeremy Bentham, ISBN: 1-929629-11-7

    Cirrus Logic CS8900a Ethernet module, it works in 8-bit mode

    Buy a CS8900 module.

    ** Shameless plug **
    Read my thesis about how to put it all together.

    1. Re:other good embedded IP resources by certsoft · · Score: 1
      TCP/IP Lean

      Yes, an interesting book. I haven't actually used any code out of it for any of my CS8900 projects (used with ZF486, ADSP2189, and PIC18F252) but has some good ideas.

      Buy a CS8900 [embeddedethernet.com] module.

      At $70, a bit high, the edtp board is $50 and can be used in either 8bit or 16bit mode.

  26. Re:A woman wrote this? by Anonymous Coward · · Score: 0

    Loser.

  27. Another book by scrotch · · Score: 2, Interesting
    I just got sent an announcement for O'Reilly's Hardware Hacking Projects book.

    It may be a better fit for those of us with absolutely no background, really short attention spans and very strange ideas about what might be cool to do to a toilet...

    1. Re:Another book by Mr2cents · · Score: 1

      ..and very strange ideas about what might be cool to do to a toilet...

      Don't forget to flush your buffers afterwards!

      --
      "It's too bad that stupidity isn't painful." - Anton LaVey
  28. Re:A woman wrote this? by Anonymous Coward · · Score: 0

    Don't look now, but you are being cheated on.

  29. TINI Java Library Source Code by Anonymous Coward · · Score: 1, Informative
    If you do need to modify the support libraries, the Rabbit Dynamic C source code is available, but the TINI Java library source code is not.
    I'm assuming you mean that the TINI Java library source code is not available as .java files? I've occassionally used JAD to decompile .class files in order to examine and/or fix broken vendor implementations.
    1. Re:TINI Java Library Source Code by tdrury · · Score: 1

      You are correct. I had thought all the TINI source was not available, but the libraries, com.dalsemi.*, are - see src/APISrc.jar in the TINI 1.12 distro. Dallas/Maxim does not release their java.* source code though.

      And there's always JAD...

      Thanks for the correction.

      -tim

  30. The author is not a woman by LeftOfCentre · · Score: 1

    You refer to Jan as "her" and "she". Jan is a (Swedish) male name, however.

    1. Re:The author is not a woman by Mr.+JStamp · · Score: 2, Informative

      Having spoken on the phone numerous times over the years, I can attest that Jan is, indeed a woman. However, since I never actually met her in person there is a fintite chance that this is some clever conspiracy.

      --
      RealTime Embedded Java www.systronix.com www.jstamp.com
  31. Cat-5? by iantri · · Score: 1
    She also includes a small section on building your own Cat-5 for you really cheap Joes.

    Assuming they mean making up network cable and not actually fabricating CAT-5 wire, why on Earth would you NOT make your own cables?

    CDN$.30/foot + connectors is a hell of a lot cheaper than the precut lengths that are only available in standard sizes (25ft, 50ft), and it's very easy..

  32. Her publisher certainly thinks she is by Delf · · Score: 1

    Jan is also a woman's name in English (the language the book is written in.)

    The publisher's bio shown at the linked Barnes and Noble site for the book says, "She".

    1. Re:Her publisher certainly thinks she is by LeftOfCentre · · Score: 1

      Ok, thanks for pointing that out -- it looks like I missed it. However, considering Jan's second name (Axelsson) is also clearly Swedish, and both are very common (in Sweden), I'd say it's beyond doubt that this person is a male, and most probably a Swede. Barnes and Noble must have made a mistake. As for the book being written in English, that's usually what technical books destined for an international audience are written in regardless of the author's nationality.

    2. Re:Her publisher certainly thinks she is by tdrury · · Score: 1

      Seeing as how her picture used to be printed along with her articles in Circuit Cellar, I'm 100% positive she is a she.

  33. Re:A woman wrote this? by Anonymous Coward · · Score: 0

    The fact that I'm as ugly as a smacked arse would put women off.

    I was just pointing out that not all women are stupid.

    Somebody modded this as "Informative". Precisely what didn't they know?

    1. The poster is as ugly as a smacked arse?
    2. A smacked arse is ugly?
    3. Being as ugly as a smacked arse would put women off?
    4. Not all women are stupid?
    5. That he was pointing out that not all women are stupid?
  34. Other work by Jan Axelson by DanDanknick · · Score: 2, Informative

    We routinely publish her work in Nuts & Volts (hobby electronics) as well as SERVO Magazine (personal robotics).

    Dan Danknick
    Technical Editor (of both)

  35. Comes in Dev Kit at Systronix by Anonymous Coward · · Score: 0

    I found this the other day in a Dev Kit at http://store.systronix.com. It came with a TINI400 (TStik), Socket Board and this book.

    It was the only book they sell on their site (which piqued my interest).