Breaking News
Comments
Newest First | Oldest First | Threaded View
<<   <   Page 6 / 9   >   >>
antiquus
User Rank
Author
re: Struggle continues to plug embedded programming gap
antiquus   5/4/2012 9:00:17 PM
NO RATINGS
Close but not quite. You must also factor in the well-developed libraries of Java, the very well implemented library utilization/documentation schemes, and the rapid build of "hello world". Java includes tracking the original source and author, and the ability to load libraries at run-time. The embedded world has no similar construct. I take your code, and the only traceability is in the comments; I erase the header and its mine. If I link to a Java library, then I get a wealth of metadata and version control. I don't even need to bind your code into my distributable, but instead can download it from any of multiple sources. That programmer you just hired is spoiled, and you want him to return to stone knives and bearskins.

Embedded SW Dev
User Rank
Author
re: Struggle continues to plug embedded programming gap
Embedded SW Dev   5/4/2012 6:34:48 PM
NO RATINGS
I will disagree with Thomas, I got my Computer Engineering degree in 1980, so it's been around for a while, but it's been in flux as CS, CE, and EE departments got merged and split over the years. I have a first-year EE student taking a first programing class in assembler and C. While the materials are good, the class got lost by trying to teach too much in too little time to people who never programmed before. The last midterm had an average score of 25%. This is not the way to encourage people to take up embedded programming. One of the problems with many of the university classes is that they understand what needs to be taught, but no idea on how people learn. The class has a strong "no-copying" requirement, but most people learn programming by seeing and copying examples, and from each other. I agree that using copy/paste isn't learning anything, but seeing how someone else solved a problem makes it easier to solve that same problem again later.

CC VanDorne
User Rank
Author
re: Struggle continues to plug embedded programming gap
CC VanDorne   5/4/2012 6:04:58 PM
NO RATINGS
And I wanted to be Dan Marino. Guess what...

msinc
User Rank
Author
re: Struggle continues to plug embedded programming gap
msinc   5/4/2012 5:19:58 PM
NO RATINGS
Unfortunately as hardware manufacturing has dwindled down and moved to SE Asia so has the demand for assembly and to some extent 'C' language. I was a BIOS engineer and then a network driver engineer for a long time and all that skill has now gone overseas and CA. What's left is application development and some embedded and plenty of teachers with Java, C# experience never mind the hardware. Once we start manufacturing here assembly language will be back in demand. I don't see that up on horizon. I have since grasped C++ and working for an employer writing user mode applications.

sharps_eng
User Rank
Author
re: Struggle continues to plug embedded programming gap
sharps_eng   5/4/2012 5:15:30 PM
NO RATINGS
All the above entries are saying, 'Newbies need to be able to get in at high level but be able to drop down, deep to the hardware as quickly as they want, and they need tools that allow them to explore what is going on, and they have to be cheap, quick, simple and effective.', and embedded employers want kids that have done that kind of stuff. After bruising my knuckles toggling in 8085 machine code, I discovered that Forth was the cheap, complete IDE that showed me assembler, macros, the basic Djikstra high-level constructs, pointer abstraction, interpreters, compilers, cross-compilation and meta-compiling, dynamic storage, dynamic programming, data structures of every persuasion, graphics from pixel to JPEG, disks from LBNs to RAID spanning... yada yada... In other words the ultimate teaching environment - language-neutral but DEEP - able to make a robust, sandboxed user interface, or slice in a single line of source from the most abstract script on a host PC to a single port bit on an embedded target. All with the same language, tools and principles, and all for free... You can bridge from Forth to any other language because you will have met everything that another language can throw at you, you just have to learn what they call the construct, and how much worse or better it is than the Forth version. OK so I never (officially) worked in Forth, but I have _thought_ in Forth ever since, because it is the leanest, cleanest, uncluttered expression of human control over hardware through software. From a lifetime's experience, think on this: what if Forth actually IS what you get if you relentlessly apply Real Engineering to the problem of getting a machine to do what you want? Finally, before you get out the RPN and 'write-only' jokes, just think on this; would you prefer to hunt out a tricky bug in 20 megabytes of beautiful C, C++ or Java source, or in 2kB of dense Forth text doing the same job?

GarySXT
User Rank
Author
re: Struggle continues to plug embedded programming gap
GarySXT   5/4/2012 4:22:49 PM
NO RATINGS
No experience with a language like C is a disadvantage, but I think it goes deeper than that. With students doing their programming on laptops running with multi GHz clocks, at least 1 GB of RAM and essentially infinite hard drive space, there has been little incentive to learn about efficiency either in execution speed or code space. The last bright young guy I brought into work on an embedded 8 bit project had a lot of experience with C#, so was at least familiar with the basic C syntax. His code (at first) was not very efficient. The concept of things like using logical functions to mask off bits was alien to him and his peers. The tools for 8 bit development are also a lot less sophisticated than the Visual Studio and similar environments he was used to. He was very frustrated by this. There are a lot of gaps between web and PC programming and embedded development.

Thomas McCormick
User Rank
Author
re: Struggle continues to plug embedded programming gap
Thomas McCormick   5/4/2012 11:50:56 AM
NO RATINGS
Excellent point, betajet. The background of assembly language really does provide a good basis for a more efficient toolset such as C. Computer Engineer students and Embedded Systems programmers really should have this level of understanding. I would, however, understand if Computer Science majors did not necessarily have this background. Virtually all of the "modern" computer languages (Java and .Net in particular) have abstracted away these details in most instances.

Thomas McCormick
User Rank
Author
re: Struggle continues to plug embedded programming gap
Thomas McCormick   5/4/2012 11:42:43 AM
NO RATINGS
"Computer Engineering" is a new discipline (relatively speaking) and the curriculum can widely vary among the schools. There is at least one school that I know of that still mandates C programming for its ECE majors and even offers a course entitled "Embedded Real-Time Systems". However, the author's point is valid, many other schools have moved away from this embedded systems focus. This trend needs reversing. C programming needs to be an elective at the minimum.

prabhakar_deosthali
User Rank
Author
re: Struggle continues to plug embedded programming gap
prabhakar_deosthali   5/4/2012 11:02:05 AM
NO RATINGS
In my career as a Embedded systems programmer and later the project leader when I had to recruit people who could do embedded systems programming , I found that the engineers with hardware knowledge could easily associate themselves with the assembly language programming. I could turn many a hardware engineers into good assembly language programmers who later mastered the high level language skills also. So I feel this is the best route to take for universities. Groom the electronics engineers into embedded programming and you can get smart all-in-one designers and programmers out of them.

Jimbobly
User Rank
Author
re: Struggle continues to plug embedded programming gap
Jimbobly   5/4/2012 10:01:00 AM
NO RATINGS
I've been embedded for about 20 years, almost always programming in C or C++. Many years ago did use assembler, and very infrequently have to read it now. So I'd disagree with many comments here on the overriding importance of knowing assembler to a high level. To me, whilst some knowledge is necessary, you really don't need to have much to be successful. I think some teaching of principle is good, but forcing students to learn it in great detail will put more people off than it attracts, especially since the current instruction sets are so complicated. C, though is vital. I noted one comment in the article that it's principles that are important, not the language. The problem there is that a language like Java does not give you the principles, certainly in memory management. Moving from Java/C#/Python to C is harder than the other way round because of this.

<<   <   Page 6 / 9   >   >>


Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)
Radio
NEXT UPCOMING BROADCAST

What are the engineering and design challenges in creating successful IoT devices? These devices are usually small, resource-constrained electronics designed to sense, collect, send, and/or interpret data. Some of the devices need to be smart enough to act upon data in real time, 24/7. Are the design challenges the same as with embedded systems, but with a little developer- and IT-skills added in? What do engineers need to know? Rick Merritt talks with two experts about the tools and best options for designing IoT devices in 2016. Specifically the guests will discuss sensors, security, and lessons from IoT deployments.
Most Recent Comments
rgeier
 
rgeier
 
Kevin Neilson
 
Susan Rambo
 
Al111
 
rick merritt
 
rgeier
 
R_Colin_Johnson
 
rgeier
Like Us on Facebook
Special Video Section
LED lighting is an important feature in today’s and future ...
05:27
The LT8602 has two high voltage buck regulators with an ...
05:18
Silego Technology’s highly versatile Mixed-signal GreenPAK ...
The quality and reliability of Mill-Max's two-piece ...
01:34
Why the multicopter? It has every thing in it. 58 of ...
Security is important in all parts of the IoT chain, ...
Infineon explains their philosophy and why the multicopter ...
The LTC4282 Hot SwapTM controller allows a board to be ...
This video highlights the Zynq® UltraScale+™ MPSoC, and sho...
Homeowners may soon be able to store the energy generated ...
The LTC®6363 is a low power, low noise, fully differential ...
See the Virtex® UltraScale+™ FPGA with 32.75G backplane ...
Vincent Ching, applications engineer at Avago Technologies, ...
The LT®6375 is a unity-gain difference amplifier which ...
The LTC®4015 is a complete synchronous buck controller/ ...
10:35
The LTC®2983 measures a wide variety of temperature sensors ...
The LTC®3886 is a dual PolyPhase DC/DC synchronous ...
The LTC®2348-18 is an 18-bit, low noise 8-channel ...
The LT®3042 is a high performance low dropout linear ...