do people who know c language and assembly language, who have experience in programming micro-controllers like zilog, atmel and pic ....can easily adapt to using this? like doing the stuff that you are doing? create firmware for this FPGAs
It doesn't help much and in my opinion it is actually detrimental. Those devices you mentioned have the similar conceptual limitation: they encourage thinking of solving tasks in terms of sequences of steps. Very much like many early "home computers" programmable with BASIC.
the lack of developers in this arena and the lesser utility/other uses of FPGA (in general population) makes me think twice in investing more in this kind of stuff...unless i knew a guy in person that i can work with, not just some random guy in the internet..
The thing is that a random guy can conceivably be much better at FPGA programming, even without previous exposure to computers.
I believe it starts much earlier and is conditioned with the type of toys one played as a kid. Here's my theory:
If as a kid somebody played
(1) with mechanical toys that allow to build working things out of building blocks
or
(2) with electrical toys that allow building working circuits out of components connected with pluggable wires
then as an adult such person will have natural aptitude for
(a) FPGA programming
or
(b) parallel programming
or
(c) electronic engineering
To such a person the FPGA development kit is very much like their dream toy from the childhood upgraded to a true professional tool with nearly unlimited quantity of building blocks and connecting wires.
So I disagree with your premise that the aptitude for FPGA programming is rare, it just isn't discovered and developed in many people.
In the past I was frequently surprised that some people with advanced computer science degrees from reputable schools have extremely hard time understanding that some device can concurrently work doing many things simultaneously. No need to explicitly state the order in which things need to be done.
You may now know it, but FPGAs don't need to be programmed using some language like Verilog or VHDL. They can be designed using schematic capture of assembling blocks and connecting them with wires. And this comes naturally to some grade school kids with no computer science exposure whatsoever.
So the TL;DR of the above is: it really depends on what kind of toys you played with when you were a kid.
thanks for the input....the way you explain things to me makes me feel that I can do it already haha.
the person that I have in mind is a geek/nerd..kind of jack of all trades...when I ask him about programming last year when we met, like can you still program in the programming languages we encountered in the past? his answer: yes, and all of them are the same even the ones that he didn't use yet.
things that person knows..making websites, programming in different languages, electronic engineering, micro controllers, computer networks.....and baking cakes! my heart bled when i learned he is baking cakes! but they are making good money with his sister and if i pulled him away from that venture.. i don't know, he is a mainstay in that business..maybe i'll pay him a visit sometime..i'll wrap my head around this FPGA thing first..
I remembered when I'm still in high school, in our programming class, where there is a guy who knows how to program...and i know a bit in programming that i can change variables and colors and i'm the one who knows windows command line that i'm pirating copies to my class mates so at the end of the class everybody have their own unique programs (in their floppy disk) haha..