Reply by Don Y June 22, 20112011-06-22
Hi Jon,

On 6/21/2011 12:47 PM, Jon Kirwan wrote:

>>> I said that the group's interests have moved away from my own >>> over the years. That's true. I _also_ believe that as the >>> processors used and tools applied increasingly look more like >>> traditional, hosted programming environments found on >>> workstations, to that degree it also is less and less a >>> differentiating feature. Taken to its limit, there will be >>> no difference in embedded development and any other and no >>> point in choosing to use the adjective anymore. >> >> I disagree. Because the type of application and demands >> of the "user environment/experience" differ greatly in the >> two worlds. >> <snip> > > I disagree, as well. What binds us is our experiences and > knowledge of tools and practices. Who we _are_. Not end > use. I think we are talking cross-purposes, though. I know > you get it.
No, that's the problem! I keep rephrasing *my* points and yours in an attempt to come up with something that I can "relate to" as an aid (to me) to understanding the distinction you're trying to make. And, obviously, I keep missing the mark. :-/
> I think we are just talking across each others' > bow, so to speak.
[this was an excellent phrase -- I willhave to remember it!]
> I'm talking about what it is to be a tool > developer not a tool user.
I'm assuming this, also, isn't the "differentiating factor" that you're using between embedded/desktop so I won't go into that, here... [snip]
> Again, I'll stop here. I think we are talking at cross > purposes and it won't help anything to beat an already dead > horse.
I'd really like to understand the point(s) you're making. If you can be patient with me, to that end, I'd like to continue this (in private). Watch your inbox (though I may not get to it today as I have a tree to cut down -- on someone else's property! :> ) [of course, if you're tired of it, feel free to click "delete" :> ] Thx, --don
Reply by Jon Kirwan June 21, 20112011-06-21
Hi, Don,

On Tue, 21 Jun 2011 08:09:07 -0700, Don Y <nowhere@here.com>
wrote:

>On 6/18/2011 11:07 PM, Jon Kirwan wrote: > >> I said that the group's interests have moved away from my own >> over the years. That's true. I _also_ believe that as the >> processors used and tools applied increasingly look more like >> traditional, hosted programming environments found on >> workstations, to that degree it also is less and less a >> differentiating feature. Taken to its limit, there will be >> no difference in embedded development and any other and no >> point in choosing to use the adjective anymore. > >I disagree. Because the type of application and demands >of the "user environment/experience" differ greatly in the >two worlds. ><snip>
I disagree, as well. What binds us is our experiences and knowledge of tools and practices. Who we _are_. Not end use. I think we are talking cross-purposes, though. I know you get it. I think we are just talking across each others' bow, so to speak. I'm talking about what it is to be a tool developer not a tool user.
>> The group here has had this debate here. Long threads about >> it. I'm not changing any of the position I took a decade >> back about any of this. It's the same stand today. What >> makes embedded development "embedded" to me are how the >> skills and tools are differentiated from workstation >> development. That's the main point. It's not about the end >> product. > >That starts to sound elitist.
That's probably my fault. Bad writing. But it's not. I have a great deal of respect for Windows programmers, for example. I am one, as I have been programming nationally- sold Windows programs since about Windows 3.0 (learned on Win286 and Win386.) I'm working on such a product this very year, in fact. So I'm not talking about lofting embedded coders above Windows coders. That would be crazy. I just happen to know, quite well, that "who I have been" as a Windows programmer is quite a lot different than "who I have been" as an embedded programmer. I include both types of people inside me and reject neither of them. But I simply see within me two different skill sets and talents arranged in different priority arrangements, when wearing one hat or another. The embedded side requires a far wider range of skills, but not a "better" range. There is no "better." I readily admit I _prefer_ the embedded side of work. That's personal. If you feel that is elitist, I can't help that.
>As if only a person who has >developed his own film can call himself a photographer. You >may *lament* the fact that others can now *simply* do things >that were, previously, signs of supreme accomplishment in >the field. But, that doesn't make them any less so.
Why would I care, Don? Doesn't matter to me that others have their interests and desires, different from mine. But to use your example, that doesn't mean that a person who owns a camera and doesn't know anything about developing film will be someone that a film developer necessarily lumps into their own social group. If you imagine conflating these two things into the same mush, I guess I then understand your confusion about where I'm coming from. I don't mean to be abrupt about it, but it is obvious to me this way you write here isn't a useful way to divide things. Put simply, if I wanted to waste my precious reading and responding time on Windows and Linux programming issues, I'd go find a Windows or Linux group. They already have plenty of places, in fact, for a wide variety of special interests in their own categories. In any case, I like your discussions here. They sing to me and I understand them pretty well and enjoy the issues brought out by them. Just so you know.
>> If a washing machine uses Windows 7 Ultimate and Microsoft >> writes the .NET objects used to do the hardware interfacing >> at a low level and then provides abstraction objects to the >> programmer, then this particular washing machine programmer >> is no more an embedded programmer -- even though it is a >> washing machine -- than would be any other .NET Windows 7 >> Ultimate programmer dragging and dropping a few objects onto >> a form. > >So, if *I* were to write that .NET program, it, *somehow* >makes it an embedded program? (whereas it wasn't when *he* >did so? Even though, chances are, *he* will get the .NET >program "more correct" than I?)
You miss my point. This is why we are talking at cross purposes. As I just wrote, I __like__ reading your posts. That won't change at all just because you write a .NET program. Cripes, __I__ write .NET programs, for gosh sake. I like to think that I'm still an embedded programmer. My soul doesn't change. I enjoy the kinds of challenges, and seeing the kinds of interesting solutions to them, that deeply embedded development entails. That's why I'm here. Those challenges often bring people with similar interests together. I like that fact. To the degree that this group changes its discussions towards .NET or Linux development, to that degree I will read less and participate less. Not because I don't do that development work -- I do -- but because my personal interests lay elsewhere. And not because I mean to judge it harshly -- I don't. But I don't define myself as a Windows programmer, despite the fact that I've now 25 years of such experience mixed within 38 years of embedded experience. I don't define myself as a Linux developer, despite having been involved with Unix since the v6 kernel days (mid to late 1970s.) I prefer my embedded side, love that aspect, what to share it with others. The rest is part of who I am, too, but it's not what I enjoy as much. If you wrote a .NET program, it would still be a .NET program and wouldn't rely upon the kinds of shared experiences I like listening to. That doesn't take away from the fact that you and I _do_ still have shared experiences and interests. And that comes out in your posts here. It will, regardless. Again, I'll stop here. I think we are talking at cross purposes and it won't help anything to beat an already dead horse. Jon
Reply by Don Y June 21, 20112011-06-21
Hi Jon,

On 6/18/2011 11:07 PM, Jon Kirwan wrote:

> I said that the group's interests have moved away from my own > over the years. That's true. I _also_ believe that as the > processors used and tools applied increasingly look more like > traditional, hosted programming environments found on > workstations, to that degree it also is less and less a > differentiating feature. Taken to its limit, there will be > no difference in embedded development and any other and no > point in choosing to use the adjective anymore.
I disagree. Because the type of application and demands of the "user environment/experience" differ greatly in the two worlds. As I said, a user interacts with a "device" (thing) differently than with a "computer" (desktop application). Everything about how and where he uses it is different. When you use a desktop application, you are (typically) investing much more effort *trying* to use it as *you* intend. OTOH, when you use a *device*, the interface wants to be intuitive, second-nature, unobtrusive, etc. You don't have some (arbitrary) set of "user interface guidelines" imposed by (e.g.) MS to adopt (ah, yes... we must support a 'cut' operation... and this must be initiated with these magic keystrokes...). Rather, you design the interface to fit the application and *environment* in which you expect the device to be operated. You don't think in terms of long, drawn out "operational sequences" (create alpha channel from mask, darken, multiply, flood fill) but, rather, simple, short-lived exchanges. (consider an automobile: the most "involved" driving activity is probably parallel parking?) Likewise, you know the user is far less forgiving of any "misunderstandings" (or, *gasp*, screwups!) on your part. When you turn the steering wheel left, the car had *better* turn left! By contrast, in the desktop world, the user expects problems interacting with the application (either because of a lack of familiarity with its intricacies, bugs in the application or whatever) Look at the design and interaction you experience when using an iPod (or other "portable media player") vs. a desktop media player experience. Which is friendlier? More intuitive? The desktop player's "controls" probably "make sense" -- to the developer and to the user -- yet they are nowhere near as intuitive and unobtrusive as the portable media player. [IMO, this is where most of apple's products fall down, big time!]
> The group here has had this debate here. Long threads about > it. I'm not changing any of the position I took a decade > back about any of this. It's the same stand today. What > makes embedded development "embedded" to me are how the > skills and tools are differentiated from workstation > development. That's the main point. It's not about the end > product.
That starts to sound elitist. As if only a person who has developed his own film can call himself a photographer. You may *lament* the fact that others can now *simply* do things that were, previously, signs of supreme accomplishment in the field. But, that doesn't make them any less so.
> If a washing machine uses Windows 7 Ultimate and Microsoft > writes the .NET objects used to do the hardware interfacing > at a low level and then provides abstraction objects to the > programmer, then this particular washing machine programmer > is no more an embedded programmer -- even though it is a > washing machine -- than would be any other .NET Windows 7 > Ultimate programmer dragging and dropping a few objects onto > a form.
So, if *I* were to write that .NET program, it, *somehow* makes it an embedded program? (whereas it wasn't when *he* did so? Even though, chances are, *he* will get the .NET program "more correct" than I?) I've a friend from school who has *probably* more "embedded devices" in use than most people I know. I wouldn't trust him to design a voltage divider -- or even solder two wires together without *also* putting a wire nut on them! He could easily have been designing compilers or writing desktop applications had he not "started" by writing code for "computers that don't look like computers". And, I suspect he could just as easily transition to that world if he had the interest -- despite his "embedded" (?) background.
> Others have instinctively asked the questions you have asked. > But I have considered them and don't agree with them once I > thought more on it. It's not a useful dividing line. Sorry, > but that's the end of it for me. What _is_ useful to know > are the types of experiences, talents, and backgrounds > required to _do_ development for some sphere. And in that > sense, embedded has real meaning the way I apply it. It has > almost no useful meaning the way you seem to suggest. > > I'll stop here. There's more to this, but I didn't want to > go too far. If you are interested, I've posted on this topic > before and with more of my views on it exposed. Still > available in google, I'm sure.
Reply by Jon Kirwan June 21, 20112011-06-21
On Mon, 20 Jun 2011 18:22:59 -0700, "Mr.CRC"
<crobcBOGUS@REMOVETHISsbcglobal.net> wrote:

>Jon Kirwan wrote: >> On Sat, 18 Jun 2011 20:25:34 -0700, Don Y <nowhere@here.com> >> wrote: >>> Do you want to dope your own silicon? >> >> I have done that. Were you aware of a Bell Labs kit to do >> just that, put out in the mid 1960's?? (I've done it since, >> with my own home-brew oven, as well, made with a nickel >> plated, water cooled chamber and halogen lamps. Long story >> there, too.) > >Holy smokes I can't believe you mentioned that Bell Labs kit. It was to >make a silicon solar cell, and my dad and I worked through it when I was >about 12. I remember actually being able to see a change in the visual >properties at the edge of the wafer which was possibly evidence of the >doped junction. > >My dad and I built the furnace with fire bricks and *asbestos panels* >that you could freely purchase in a hardware store. > >We got our wafer Ni plated, but never could get any evidence of current >production. It was a lot of fun though.
It's amazing to find another who knew about the kit!! It's still available, I think. At least, I had some contact a few years ago with the husband/wife pair who bought up the rights for the Bell Labs kits. I should see if they are still alive and kicking. Jon
Reply by Mr.CRC June 20, 20112011-06-20
Jon Kirwan wrote:
> On Sat, 18 Jun 2011 20:25:34 -0700, Don Y <nowhere@here.com> > wrote: >> Do you want to dope your own silicon? > > I have done that. Were you aware of a Bell Labs kit to do > just that, put out in the mid 1960's?? (I've done it since, > with my own home-brew oven, as well, made with a nickel > plated, water cooled chamber and halogen lamps. Long story > there, too.)
Holy smokes I can't believe you mentioned that Bell Labs kit. It was to make a silicon solar cell, and my dad and I worked through it when I was about 12. I remember actually being able to see a change in the visual properties at the edge of the wafer which was possibly evidence of the doped junction. My dad and I built the furnace with fire bricks and *asbestos panels* that you could freely purchase in a hardware store. We got our wafer Ni plated, but never could get any evidence of current production. It was a lot of fun though. -- _____________________ Mr.CRC crobcBOGUS@REMOVETHISsbcglobal.net SuSE 10.3 Linux 2.6.22.17
Reply by Jon Kirwan June 20, 20112011-06-20
On Sun, 19 Jun 2011 21:26:36 -0400, Mel
<mwilson@the-wire.com> wrote:

>Jon Kirwan wrote: >By comparison, the ADSP-21xx worked _exactly_ >> as the docs said. Always. Exactly. Never a question about >> them. The assembly (up to 3 instructions per cycle) was >> nice, too. > > That one was intriguing. I was several pages into the manual before I >realized that the sample code I was reading wasn't BASIC. Never wound up >working with one, though. There was an ADSP-2105 at the other end of the >product from me, once.
The ADSP-2105 was their "value line" part. Cheap at $5, memory serving. I used them. I also have an ISA board system with one installed on it where you can download code and play a bit. I did most of my work on an ADSP-2111. A somewhat higher priced spread than the 2105. I liked them a lot. Learned some things from the books that ADI produced for them, as well. Jon
Reply by Mel June 19, 20112011-06-19
Jon Kirwan wrote:
By comparison, the ADSP-21xx worked _exactly_
> as the docs said. Always. Exactly. Never a question about > them. The assembly (up to 3 instructions per cycle) was > nice, too.
That one was intriguing. I was several pages into the manual before I realized that the sample code I was reading wasn't BASIC. Never wound up working with one, though. There was an ADSP-2105 at the other end of the product from me, once. Mel.
Reply by Jon Kirwan June 19, 20112011-06-19
On Sun, 19 Jun 2011 08:23:02 -0700, "Mr.CRC"
<crobcBOGUS@REMOVETHISsbcglobal.net> wrote:

>Jon Kirwan wrote: ><snip> > >> With the move towards large memory systems and 32-bit cpus >> with FP and memory mgmt systems capable of runing Linux on a >> chip, "embedded" has blurred to the point where you can't >> tell the difference between a Microsoft MSDN developer, a >> Linux guru, and an embedded micro coder, anymore. > >I can relate. I prefer bit banging, writing ISRs, that sort of thing. >Though drivers can get a little tiresome. I figure if it doesn't need >an oscilloscope to debug and verify, it's not my kind of "embedded." >Perhaps I just prefer any excuse to use an oscilloscope!
I don't always require an oscilloscope or an MSO, but just being threatened that I might need one is what makes it all the more fun for me. Without at least the threat present, it's certain to be boring.
>> The Windows CE coder seems to imagine they are doing embedded >> work. So does the Linux coder. .NET can run embedded, in >> fact, though anyone familiar with its details must realize >> just how abstracted that environment is. Technically, yes, I >> suppose it's true that porting code from a workstation to run >> on an "embedded device" using .NET, for example, might still >> meet some people's definitions. A lot of the discussions >> here seem to be at that level now. Although I do .NET coding >> and have my paid-up annual MSDN subscription, it's dull stuff >> to me. > >I've cringed at the mere sight of ".NET" since its inception. I also >hated Java since I first heard of it. > >We had a guy at work who thought "embedded" meant installing Linux on a >SBC and programming it. It is "embedded" in a sense, but not quite the >sense that it seems we would pretty much agree upon.
If you don't need to read datasheets, study peripheral operation, read schematics, consider sensor/transducer physics, do some laplace and partial fractions, look over voltage thresholds and current limits, scan over compiler output in assembly or machine code, set up that HP 54645D with both 8-lead probes in hand just in case, and figure out how to modify a linker control file, and all in the same project, then it isn't embedded work... much.
>> I think of embedded to be about the skills required by us and >> where they __differ__ from hosted environment development >> skill sets. When a job requires familiarity more than just >> one language and requires familiarity with how compilers >> compile code, with assembly, with linker semantics and how to >> modify their control files for some desired result, as well >> as broad acquaintances with physics, numerical methods, >> signal processing, optics, and certainly electronic design, >> then we find more of these differences. When it requires >> less of these differences from workstation development >> skills, it is less about the "embedded" I know and love. >> >> Times are changing and the relative mix of skills found >> amongst the embedded programmer body are shifting with the >> capabilities being offered in todays tools. Entire operating >> systems are ported over by people I do consider to be well >> healed embedded programmers, but then just used lock-stock- >> and-barrel by those who know little about what took place and >> don't care to know and who just use the usual workstation >> tools without knowing much difference, at all. >> >> That's a different thing to me. So I write less, today. I >> haven't changed, but the audience has. > >Well I don't think the need for the more EE skill side of the trade will >go away.
No, it grows. But the size of the pyramid of programmers grows exponentially larger still. So it remains a dwindling proportion of the conversation here despite the truth of what you say.
>The changes probably amount to an overall improvement, since >more people can access more technology and tools. That still a benefit >even if some of them don't become master craftsmen. There's a place for >developers with a cursory, high level undertanding. Think of Arduino >and kinetic skulptors, for ex. If they can get something to just "work" >then the world is a better place.
Agreed. I think this is very good, that computers have moved from when I first worked on building my own. What I did caused me to get written up in a large spread, with pictures, in the local newspaper. It was _that_ unusual, I guess. I don't know who ratted me out at the time. But the news people showed up, one day, all the same. To have the case where one can get a TI Launchpad send to you for $4.30, with cables and a crystal and two cpus, and connectors and the rest... no shipping charges... well, what can one say? It's a great time, indeed!! I am glad for all this. And I'm glad others might be interested in them for any reason of their own, at all.
>At first I thought Arduino was stupid. "I can work with a bare AVR, >what do I need that for?" I thought. Then I realized that if it makes >more people play with microcontrollers, it is good. Now I'm even >curious to check it out and see if it can spare me some time on my next >8-bit project.
I just used a Launchpad to create a parallel port to USB "printer device" that can be used as a parallel port printer and it saves files automatically on the PC, instead. Had to add a DB25, some wire and a few resistors and one cap, is all. Oh, and a tiny piece of vector board. So yes, I get your point here.
>>> Is that ARM families that can basically switch context in hardware, or >>> some other device? >> >> Some other. For one example, the now "mature" or "older" >> ADSP-21xx Family from Analog Devices is the example I had >> coded that delta queue for. > >Oh that one. I was close to trying that out once. I actually would >have preferred to use ADI processors for what I use the TI C2000 for, >but at the time ADI had nothing like a "digital signal controller" with >DSP speed and microcontroller peripherals. Blackfin has closed the gap >a little, but it's still not what you'd pick to interface quadrature >encoders and run MOSFET SMPS front-ends.
I used a TI 'C40 quite a while back, but when I was actively also using the ADSP-21xx. I have to say it was night and day between the two. I had TI support on the phone because the hardware timing I was getting was 11 clocks for a cached bit of code that according to their docs should have taken 7 clocks. They NEVER were able to explain the timing of the bit of source code I sent them. Even after 3 weeks of their working on it and comparing it to their docs about register clashes and so on. Never did resolve the issue to my satisfaction. By comparison, the ADSP-21xx worked _exactly_ as the docs said. Always. Exactly. Never a question about them. The assembly (up to 3 instructions per cycle) was nice, too.
>But TI assembly language is an ugly thing. It's not that bad if you can >figure out the syntax and work with it enough to keep it memorized, >which I haven't, because the docs are all language lawyer style when >what is needed is more simple examples. > >With ADI, at least for SHARC which I looked at a bit, assembly is a breeze.
I know.
>>>> I've used this for an operating system with a >>>> jitter-free guarantee on starting sleeping processes using >>>> delta queues (where only one such process is allowed to sleep >>>> on the same timed event.) >>> <scratches head, wonders what a "delta queue" is> >>> >>> Hmm, looking at a few search results I sort of get it. >> >> It's a very simple, easy to operate, precision tool. I first >> read about the idea from Douglas Comer's first book on XINU. > >Well I've a tidbit from you again. Thanks.
It's a book worth reading through. Very clear, very easy, and it stimulates the imagination well.
>[edit] >> I think I'd focus on an audio range device, as well. But I'm >> pretty sure I'd just make it a toy and not something >> professional. There is so much more "work" involved in >> making something ready for others to use and although I find >> some of that enjoyable, I don't find all of it to be so. And >> I'd be looking more for my own hobbyist pleasure, self-test, >> and education than anything else. > >Once it blurs into legalities, regulations, and injection molded die >making, I start to run for cover. Probably better that I have a 9-5 job >then.
Hehe.
>> I looked over some of what you write elsewhere and I wish I >> had your experiences with lasers, too. Lots of potential fun >> there, both for me and for students I like to teach at times. > >Yeah, well the lasers and my silly Chemistry degree cost me a lot of >time that I sometimes wish I had spent on getting a proper EE degree.
I did as much chemistry as I wanted to do -- mostly explosives as a kid. Mercury fulminate was my absolute fave -- the reaction before the crystals settle out is a mad scientist's exothermic, boiling, vaporous dream. And what you get after, or better still after filtering and precipitation with glacial acetic acid, was also a lot of fun too. I did rocket fuels, explosives, fireworks, smoke bombs, and pretty much anything "thermodynamic." Luckily also learned enough extra to stay alive while doing that at home. Still have picric acid, chlorates and perchlorates, and a few other goodies laying about here. They used to ship that to 16 yr old kids, though the picric acid had to go by train. I know. I was one and they Boulevard Labs in Chicago shipped to me, regularly! Organics I got into a little. Enough to get some of the basic terms down so that I could read and draw things when asked, but nothing much more than that. I know what a hydroxy ketone is defined as and I can draw out a diagram for 1-Chloro-3,5-dinitro-4-hydroxybenzene if asked, for example. But that's about it. Although there is logic to organic naming, there is enough memorization of various specialized words to bother me. Inorganics is easier in that sense.
>> By the way, I've also got a lot of "stuff in drawers." And I >> definitely get it about just goofing off with toys. Work is >> work, but on my own I don't want the burden of having to do >> all the extra stuff needed to productize. I'd rather play. >> >> Jon > > >Have a good Father's Day, whether or not your a father!
Thanks. You too. And yes, I've 3. All in their mid 20's now. Jon
Reply by Mr.CRC June 19, 20112011-06-19
Jon Kirwan wrote:
> On Fri, 17 Jun 2011 15:14:44 -0700, "Mr.CRC" > <crobcBOGUS@REMOVETHISsbcglobal.net> wrote: >> Thanks Jon. I've mostly lurked here for over 12 years, and usually >> listen to your writings with great eagerness to learn something and am >> rarely disappointed. > > Thanks. I don't usually have a lot to say, anymore, though.
Your welcome.
> With the move towards large memory systems and 32-bit cpus > with FP and memory mgmt systems capable of runing Linux on a > chip, "embedded" has blurred to the point where you can't > tell the difference between a Microsoft MSDN developer, a > Linux guru, and an embedded micro coder, anymore.
I can relate. I prefer bit banging, writing ISRs, that sort of thing. Though drivers can get a little tiresome. I figure if it doesn't need an oscilloscope to debug and verify, it's not my kind of "embedded." Perhaps I just prefer any excuse to use an oscilloscope!
> The Windows CE coder seems to imagine they are doing embedded > work. So does the Linux coder. .NET can run embedded, in > fact, though anyone familiar with its details must realize > just how abstracted that environment is. Technically, yes, I > suppose it's true that porting code from a workstation to run > on an "embedded device" using .NET, for example, might still > meet some people's definitions. A lot of the discussions > here seem to be at that level now. Although I do .NET coding > and have my paid-up annual MSDN subscription, it's dull stuff > to me.
I've cringed at the mere sight of ".NET" since its inception. I also hated Java since I first heard of it. We had a guy at work who thought "embedded" meant installing Linux on a SBC and programming it. It is "embedded" in a sense, but not quite the sense that it seems we would pretty much agree upon.
> I think of embedded to be about the skills required by us and > where they __differ__ from hosted environment development > skill sets. When a job requires familiarity more than just > one language and requires familiarity with how compilers > compile code, with assembly, with linker semantics and how to > modify their control files for some desired result, as well > as broad acquaintances with physics, numerical methods, > signal processing, optics, and certainly electronic design, > then we find more of these differences. When it requires > less of these differences from workstation development > skills, it is less about the "embedded" I know and love. > > Times are changing and the relative mix of skills found > amongst the embedded programmer body are shifting with the > capabilities being offered in todays tools. Entire operating > systems are ported over by people I do consider to be well > healed embedded programmers, but then just used lock-stock- > and-barrel by those who know little about what took place and > don't care to know and who just use the usual workstation > tools without knowing much difference, at all. > > That's a different thing to me. So I write less, today. I > haven't changed, but the audience has.
Well I don't think the need for the more EE skill side of the trade will go away. The changes probably amount to an overall improvement, since more people can access more technology and tools. That still a benefit even if some of them don't become master craftsmen. There's a place for developers with a cursory, high level undertanding. Think of Arduino and kinetic skulptors, for ex. If they can get something to just "work" then the world is a better place. At first I thought Arduino was stupid. "I can work with a bare AVR, what do I need that for?" I thought. Then I realized that if it makes more people play with microcontrollers, it is good. Now I'm even curious to check it out and see if it can spare me some time on my next 8-bit project.
>> Is that ARM families that can basically switch context in hardware, or >> some other device? > > Some other. For one example, the now "mature" or "older" > ADSP-21xx Family from Analog Devices is the example I had > coded that delta queue for.
Oh that one. I was close to trying that out once. I actually would have preferred to use ADI processors for what I use the TI C2000 for, but at the time ADI had nothing like a "digital signal controller" with DSP speed and microcontroller peripherals. Blackfin has closed the gap a little, but it's still not what you'd pick to interface quadrature encoders and run MOSFET SMPS front-ends. But TI assembly language is an ugly thing. It's not that bad if you can figure out the syntax and work with it enough to keep it memorized, which I haven't, because the docs are all language lawyer style when what is needed is more simple examples. With ADI, at least for SHARC which I looked at a bit, assembly is a breeze.
>>> I've used this for an operating system with a >>> jitter-free guarantee on starting sleeping processes using >>> delta queues (where only one such process is allowed to sleep >>> on the same timed event.) >> <scratches head, wonders what a "delta queue" is> >> >> Hmm, looking at a few search results I sort of get it. > > It's a very simple, easy to operate, precision tool. I first > read about the idea from Douglas Comer's first book on XINU.
Well I've a tidbit from you again. Thanks. [edit]
> I think I'd focus on an audio range device, as well. But I'm > pretty sure I'd just make it a toy and not something > professional. There is so much more "work" involved in > making something ready for others to use and although I find > some of that enjoyable, I don't find all of it to be so. And > I'd be looking more for my own hobbyist pleasure, self-test, > and education than anything else.
Once it blurs into legalities, regulations, and injection molded die making, I start to run for cover. Probably better that I have a 9-5 job then.
> I looked over some of what you write elsewhere and I wish I > had your experiences with lasers, too. Lots of potential fun > there, both for me and for students I like to teach at times.
Yeah, well the lasers and my silly Chemistry degree cost me a lot of time that I sometimes wish I had spent on getting a proper EE degree.
> By the way, I've also got a lot of "stuff in drawers." And I > definitely get it about just goofing off with toys. Work is > work, but on my own I don't want the burden of having to do > all the extra stuff needed to productize. I'd rather play. > > Jon
Have a good Father's Day, whether or not your a father! -- _____________________ Mr.CRC crobcBOGUS@REMOVETHISsbcglobal.net SuSE 10.3 Linux 2.6.22.17
Reply by Jon Kirwan June 19, 20112011-06-19
On Sat, 18 Jun 2011 20:25:34 -0700, Don Y <nowhere@here.com>
wrote:

>Hi Jon, > >On 6/18/2011 6:25 PM, Jon Kirwan wrote: > >>> The "one-liner" description of "embedded systems" that I >>> use to try to give folks (e.g., at a dinner party) an idea >>> of what I do is: "something that is quite obviously a computer >>> (inside) but doesn't look/act like a 'computer'" >>> >>> I summarize by saying "I make *things*". >>> >>> To folks in the Industry, I describe embedded systems as >>> "software that comes with a warranty" (*think* about it!) >> >> I don't look at it from the outside. I look at it from the >> processes involved in performing the work and the skills and >> talents those entail. It's not about usage. It's about what >> is required by the craft. > >But the requirements change as the craft evolves!
Indeed that is so. But it isn't just that there are new tools in town. It's also that _more_ people can participate at a much wider variety of skill levels. I'm not complaining about it. Just noting it.
>Do you want to dope your own silicon?
I have done that. Were you aware of a Bell Labs kit to do just that, put out in the mid 1960's?? (I've done it since, with my own home-brew oven, as well, made with a nickel plated, water cooled chamber and halogen lamps. Long story there, too.)
>Do you prefer using a >"pocket assembler" in lieu of a HLL compiler? ><snip>
I said that the group's interests have moved away from my own over the years. That's true. I _also_ believe that as the processors used and tools applied increasingly look more like traditional, hosted programming environments found on workstations, to that degree it also is less and less a differentiating feature. Taken to its limit, there will be no difference in embedded development and any other and no point in choosing to use the adjective anymore. The group here has had this debate here. Long threads about it. I'm not changing any of the position I took a decade back about any of this. It's the same stand today. What makes embedded development "embedded" to me are how the skills and tools are differentiated from workstation development. That's the main point. It's not about the end product. If a washing machine uses Windows 7 Ultimate and Microsoft writes the .NET objects used to do the hardware interfacing at a low level and then provides abstraction objects to the programmer, then this particular washing machine programmer is no more an embedded programmer -- even though it is a washing machine -- than would be any other .NET Windows 7 Ultimate programmer dragging and dropping a few objects onto a form. Others have instinctively asked the questions you have asked. But I have considered them and don't agree with them once I thought more on it. It's not a useful dividing line. Sorry, but that's the end of it for me. What _is_ useful to know are the types of experiences, talents, and backgrounds required to _do_ development for some sphere. And in that sense, embedded has real meaning the way I apply it. It has almost no useful meaning the way you seem to suggest. I'll stop here. There's more to this, but I didn't want to go too far. If you are interested, I've posted on this topic before and with more of my views on it exposed. Still available in google, I'm sure. Jon