Entrevista com Jack Ganssle

Em 30/03/2011, em Entrevistas, por Sergio Prado

jack ganssle completo Entrevista com Jack GanssleAproveitei a vinda de Jack Ganssle ao Brasil para o II Work­shop Pro­je­tando Sis­temas Embar­ca­dos e fiz uma entre­vista curta mas muito bem humorada. Con­fi­ram a ver­são orig­i­nal em inglês abaixo e logo em seguida a ver­são traduzida.

Jack, tell me a lit­tle bit about your­self. How did you end up work­ing with embed­ded sys­tems?
Well, I was always a geek, from long before any­one used that term. I was into ham radio in high school. My dad worked at a small space com­pany as a mechan­i­cal engi­neer, and we kids were required to sweep up and clean the build­ing — for free. But I was allowed to keep any parts the engi­neers in the lab had dropped on the floor, so built a nice col­lec­tion of ICs and other parts. At 16 I got a job as an elec­tron­ics tech­ni­cian, and while I was in col­lege the com­pany decided to build a prod­uct with a micro­proces­sor. I was the only per­son who knew dig­i­tal and pro­gram­ming, so was pro­moted to engi­neer. That was in 1972, work­ing with the first 8 bit proces­sor, the 8008. Before long we were build­ing a lot of embed­ded prod­ucts, and I was run­ning the dig­i­tal engineering/programming group. We worked insane hours but had a lot of fun!

Now­days, what do you do for liv­ing?
Mostly annoy my wife! I write about this field, and do a lot of lec­tures about it. And I do some kinds of con­sult­ing — for instance, advise com­pa­nies about their embed­ded chal­lenges. I get to look at a lot of new prod­ucts and talk to some really smart engineers.

What was the biggest chal­lenge in your car­reer?
Mak­ing pay­roll. In the 80s and 90s I started a com­pany that pro­vided devel­op­ment tools, and it was very stress­ful at times com­ing up with the cash each week to pay all of the employ­ees. But we always did. Today I find it chal­leng­ing to keep up with all of the new prod­ucts and ideas that come out each day. But it’s a lot of fun to do so.

In your opin­ion, what is the num­ber one source of bugs in embed­ded sys­tems?
I really believe most bugs come from engi­neers not think­ing deeply enough about their code. We shouldn’t start cod­ing till we know exactly what we want to do, and then we should review our work very care­fully before start­ing test­ing. It’s just too tempt­ing to fire up the debug­ger instead of think­ing deeply.

I know you love sail­ing! Between a big shark fol­low­ing your boat in the deep sea and a scary global vari­able in your code, which one would ou choose?
I’ll take the shark any day!

What do you have to say for the new engineers/developers that are begin­ning the car­reer on embed­ded sys­tems. Any tips or tricks?
Sure — save money every week. Bad times always come, and you want to have a finan­cial cush­ion. Also, check out Mike Ficco’s book “What Every Engi­neer Should Know About Career Man­age­ment” It’s impor­tant that we actively man­age our careers. Stay involved and con­stantly learn new things.

What can you say about the future in embed­ded sys­tems?
Embed­ded sys­tems have only been around for 40 years. We can’t even dream what will come. I do expect, per­haps in my life­time, robots that build robots. And the robots will do all of our man­ual labor. I won­der if money will have any value when labor is all done by the robots?

I love your books! Do you have any plan for oth­ers?
Thanks. I have a few ideas, but just don’t have the time for a book project right now.

If you would go to a desert island, which pro­gram­ming lan­guage, CPU archi­tec­ture and oper­a­tional sys­tem would you carry? :)
Hmmm. A desert island means very lit­tle power. I’d have to wire a cou­ple of coconuts in series, so might bring a TI MSP430, which is a 16 bit machine that runs on almost no power. C, of course, and, if money were no object, a nice cer­ti­fied RTOS like Integrity.

Last words for our read­ers…
The most impor­tant thing is to have fun. You’ll spend decades doing this; there’s noth­ing sad­der than a per­son who is mis­er­able in their job.

Segue abaixo a entre­vista traduzida:

Jack, fale um pouco sobre você. Como você começou a tra­bal­har com sis­temas embar­ca­dos?
Bem, sem­pre fui um geek, muito antes de alguém ter usado o termo. Come­cei a mexer com radioa­madorismo no ensino médio. Meu pai tra­bal­hou em uma pequena empresa aeroe­s­pa­cial como engen­heiro mecânico, e nós cri­anças pre­cisá­va­mos var­rer e limpar o pré­dio — de graça. Mas me deix­avam pegar qual­quer coisa que os engen­heiros do lab­o­ratório jogavam fora, então mon­tei uma coleção legal de cir­cuitos inte­gra­dos e out­ras peças. Aos 16 anos con­segui um emprego como téc­nico eletrônico, e quando estava na fac­ul­dade a empresa decidiu mon­tar um pro­duto com um micro­proces­sador. Eu era a única pes­soa que sabia eletrônica dig­i­tal e pro­gra­mação, então fui pro­movido a engen­heiro. Isso foi em 1972, tra­bal­hando com o primeiro proces­sador de 8 bits, o 8008. Não muito tempo depois está­va­mos desen­vol­vendo diver­sos pro­du­tos embar­ca­dos, e eu era o respon­sável pelo grupo de engen­haria e pro­gra­mação. Tra­bal­hamos que nem loucos mas foi muito diver­tido!

E o que você faz hoje em dia?
Basi­ca­mente fico per­tur­bando minha esposa! Eu escrevo sobre a área, e tam­bém apre­sento bas­tante palestras. Dou alguns tipos de con­sul­to­ria — por exem­plo, acon­selho empre­sas sobre seus desafios na área de sis­temas embar­ca­dos. Eu dou uma olhada em um monte de novos pro­du­tos e troco exper­iên­cias com alguns engen­heiros bem espertos.

Qual foi o maior desafio na sua car­reira?
Geren­ciar a folha de paga­mento. Nos anos 80 e 90 eu ini­ciei uma empresa que forne­cia fer­ra­men­tas de desen­volvi­mento, e era muito estres­sante ter din­heiro toda sem­ana para pagar os fun­cionários. Mas nós sem­pre con­seguíamos. Hoje eu acho desafi­ador acom­pan­har os novos pro­du­tos e idéias que apare­cem todos os dias. E é tam­bém muito divertido.

Na sua opinião, qual a causa número um de bugs em sis­temas embar­ca­dos?
Eu real­mente acred­ito que a maio­ria dos bugs vem do fato dos engen­heiros não pen­sarem o sufi­ciente sobre o código que estão desen­vol­vendo. Nós não deve­mos começar a cod­i­ficar enquanto não sou­ber­mos exata­mente o que quer­e­mos fazer, e então nós deve­mos revisar aten­ta­mente o tra­balho antes de começar a tes­tar. É muito ten­ta­dor ini­ciar o debug­ger ao invés de pen­sar mais pro­fun­da­mente sobre o problema.

Eu sei que você adora nave­gar! Entre um grande tubarão seguindo seu barco em mar aberto e uma assus­ta­dora var­iável global no código, qual você escol­he­ria?
O tubarão, sempre!

O que você tem a dizer para os engen­heiros que estão ini­ciando a car­reira em sis­temas embar­ca­dos. Alguma dica?
Claro — guarde din­heiro toda sem­ana. Tem­pos ruins sem­pre apare­cem, e você quer ter uma segu­rança finan­ceira. Além disso, dê uma olhada no livro de Mike Ficco 
What Every Engi­neer Should Know About Career Man­age­ment”. É impor­tante geren­ciar ati­va­mente sua car­reira. Se envolva e aprenda coisas novas.

O que você pode dizer sobre o futuro em sis­temas embar­ca­dos?
Sis­temas embar­ca­dos são recentes e estão por aí em torno de 40 anos. Nem em son­hos con­seguimos pre­ver o que esta por vir. Eu espero, talvez enquanto estiver vivo, ver robôs que con­stroem robôs. E robôs irão fazer todo nosso tra­balho man­ual. Será que o din­heiro terá algum valor quando todo tra­balho for feito por robôs?

Eu amo seus livros! Você tem algum plano para out­ros?
Obri­gado. Eu tenho algu­mas idéias, mas por enquanto não tenho tempo para um novo projeto.

Se você fosse para uma ilha deserta, que lin­guagem de pro­gra­mação, arquite­tura de CPU e sis­tema opera­cional levaria? :)
Hmmm. Uma ilha deserta sig­nifica muito pouca ener­gia. Eu pre­cis­aria ligar alguns cocos em série, e então levar o MSP430 da TI, que é uma CPU de 16 bits que roda quase que sem ener­gia. Lin­guagem C, é claro, e se din­heiro não fosse prob­lema, um bom RTOS cer­ti­fi­cado como o Integrity.

Últi­mas palavras para nos­sos leitores…
A coisa mais impor­tante na vida é se diver­tir. Você irá pas­sar décadas fazendo isso, e não existe coisa pior no mundo do que alguém infe­liz no que faz.

Obri­gado Jack!

Um abraço,

Ser­gio Prado

VN:F [1.9.17_1161]
Rat­ing: 9.6/10 (8 votes cast)
Entre­vista com Jack Ganssle, 9.6 out of 10 based on 8 ratings

Posts rela­ciona­dos:

  1. 2 dias de muita sabedo­ria embar­cada com Jack Ganssle
  2. Entre­vista com Colin Walls
  • stdioo

    Muito legal a entre­vista. Valeu!
    É sem­pre legal prestar atenção no que a voz da exper­iên­cia diz.

    VA:F [1.9.17_1161]
    Rating: 0.0/5 (0 votes cast)
  • http://embarcados-ce.blogspot.com Kairo Tavares

    Muito bom Ser­gio!!! Parabens e obri­gado por nos trazer essa entre­vista de um cara tão impor­tante quanto Jack Ganssles.

    VA:F [1.9.17_1161]
    Rating: 0.0/5 (0 votes cast)
  • http://hsena.wordpress.com Hamil­ton Sena

    Mais uma vez parabéns Ser­gio, por essa ótima entrevista.

    VA:F [1.9.17_1161]
    Rating: 0.0/5 (0 votes cast)
  • bvm

    Chovendo mais uma vez no mol­hado (dados os comen­tários acima): parabéns pela ini­cia­tiva e — de uma forma mais geral — por seu tra­balho de divul­gação de uma área que parece-me ainda mal com­preen­dida e con­hecida no Brasil.

    VA:F [1.9.17_1161]
    Rating: 0.0/5 (0 votes cast)
  • Thi­ago

    otimo artigo. Muito inter­es­sante o que ele falou sobre o MSP430 não sabia da sua impor­tan­cia tao grande no mundo dos embarcados.

    VA:F [1.9.17_1161]
    Rating: 0.0/5 (0 votes cast)
  • Rafael Varago

    Eu tenho 18 anos, sendo que destes um é no mundo dos embar­ca­dos, e tenho o Jack Ganssle como ref­er­en­cia, pre­tendo um dia chegar no nível dele, ou quem sabe mais longe, sei que será uma tarefa árdua, mas como ele mesmo diz, tem que se diver­tir, e eu me divirto muito com isso

    VA:F [1.9.17_1161]
    Rating: 0.0/5 (0 votes cast)
    • http://www.sergioprado.org ser­gio­prado

      Muito bom Rafael!

      O Jack é refer­ên­cia para muita gente, inclu­sive para mim. Bem vendo ao uni­verso dos sis­temas embarcados!

      Um abraço.

      VA:F [1.9.17_1161]
      Rating: 0.0/5 (0 votes cast)