quinta-feira, 19 de julho de 2007

Autômato Finito Determinístico

Seguindo a idéia de postar aqui assuntos relacionados ao mestrado, desta vez o post é sobre autômatos (automata), mais precisamente Autômatos Finitos Determinísticos - AFD (Deterministic Finite Automata - DFA), que estão sendo estudados na disciplina Análise de Algoritmos.

Segundo o Wikipédia, Autômato Finito Determinístico é uma máquina de estados finitos onde, para cada par de estados e símbolo de entrada, existe um próximo estado determinístico. A figura abaixo ilustra um AFD.



Como trabalho da disciplina tive que implementar um AFD que contemplasse os seguintes requisitos:
  • Receber como entrada os seguintes dados: (K, Σ, δ, s, F).
  • Os dados devem estar em formato texto.
  • O AFD deve informar se aceita ou rejeita a entrada informada.
Para quem tiver interesse, fiz um programa em Java para solucionar o problema proposto. O download é livre. Bom proveito!

Atualizado em 14/02/2011: O link para download do programa foi corrigido.

quarta-feira, 4 de julho de 2007

CLT x PJ

Há algum tempo, as empresas de TI descobriram que poderiam contratar mão de obra sem, efetivamente, contratar um novo funcionário através da tradicional Consolidação das Leis do Trabalho (CLT). Não, não fizeram nenhuma mágica, mas sim começaram a contratar empresas prestadoras de serviços, que forneceriam a mão de obra. Isso existe em qualquer área e há bastante tempo, não havendo nada de errado com essa prática. Porém, tornou-se cada vez mais freqüente, principalmente com a disseminação da terceirização de serviços de TI, sendo que cresceu muito com a contratação de mão de obra terceirizada, também chamada de outsourcing. Ou seja, empresas deixaram de contratar funcionários para "alugar" funcionários de outras empresas. Isso foi evoluindo até que essas próprias empresas começaram a contratar diretamente mão de obra através de empresas de um único funcionário, as famosas PJ's, ou Pessoas Jurídicas.

Não há nada de errado com a contratação de PJ. Porém, o que penso é que está sendo feito o que eu chamo de gambiarra na contratação de mão de obra de TI. Empresas estão contratando funcionários fixos dessa forma. Contratar serviços de terceiros é uma coisa, mas o funcionário trabalhar fixo na empresa, com horários definidos, subordinação à chefia, e-mail, telefone, e não ser CLT, daí é visivelmente uma tentativa de enganar a lei.

Só que essa tentativa de enganar a lei pode custar caro às empresas. Se o funcionário entrar na justiça, ganhará certo. Sei de diversos exemplos. E o valor das causas não é baixo não. Além disso, a empresa não pode divulgar que o funcionário entrou na justiça contra ela, porque daí a pena aumentará ainda mais. Advogados não cansam de alertar sobre isso. Com certeza, o governo sabe e está bolando alguma forma de coibir essa prática.

Além disso, tem toda a questão dos benefícios de ser contratado através de CLT, tais como férias remuneradas, décimo-terceiro salário, FGTS, seguridade social, vale-refeição, entre outros. Claro que isso depende de cada empresa, sendo que sei de algumas (poucas) que contratam como PJ e também dão certos benefícios a seus funcionários.

Recentemente, houve um grande aumento na contratação de funcionários através de PJ, principalmente os que possuem salários mais altos. Porém, há indícios de que isso possa estar mudando. Segundo a revista Info, mais de oito mil pessoas deixaram de ser PJ para ser CLT em 2006, somente em São Paulo. Além disso, grandes empresas que contratam serviços de outsourcing estão passando a exigir que esta contratem seus funcionário através de CLT, para evitar causas da trabalhistas, que podem ocorrer contra ambas. Foi constatado, também, que a massiva contratação de PJ reduziu a qualidade dos serviços prestados pelas empresas de TI.

Não vou nem citar as vantagens de uma ou de outra forma de contratação, até porque não sou especialista nisso. Mas algumas informações e comentários interessantes podem ser encontrados no blog do Rodrigo Strauss e no site Profissionais de Tecnologia.

Só para constar, além de PJ, existem outras formas alternativas de contratação de mão de obra que usualmente são usadas por empresas de TI, tais como cooperativas, participação societária, contratações temporárias, estágio, etc. Para acabar com essa "esculhambação", espero que, o mais rápido possível, seja feita uma atualização na CLT, com o intuito de simplificar a contratação de funcionários, modernizando a lei e, principalmente, reduzindo os impostos incidentes sobre os "celetistas".

Eu poderia escrever muitas páginas sobre isso, mas a idéia era apresentar brevemente o que penso e propiciar uma discussão sobre o assunto. Portanto, comentem!