119 resultados para Programmer


Relevância:

10.00% 10.00%

Publicador:

Resumo:

La possibilité de programmer une cellule dans le but de produire une protéine d’intérêt est apparue au début des années 1970 avec l’essor du génie génétique. Environ dix années plus tard, l’insuline issue de la plateforme de production microbienne Escherichia coli, fut la première protéine recombinante (r-protéine) humaine commercialisée. Les défis associés à la production de r-protéines plus complexes et glycosylées ont amené l’industrie biopharmaceutique à développer des systèmes d’expression en cellules de mammifères. Ces derniers permettent d’obtenir des protéines humaines correctement repliées et de ce fait, biologiquement actives. Afin de transférer le gène d’intérêt dans les cellules de mammifères, le polyéthylènimine (PEI) est certainement un des vecteurs synthétiques le plus utilisé en raison de son efficacité, mais aussi sa simplicité d’élaboration, son faible coût et sa stabilité en solution qui facilite son utilisation. Il est donc largement employé dans le contexte de la production de r-protéines à grande échelle et fait l’objet d’intenses recherches dans le domaine de la thérapie génique non virale. Le PEI est capable de condenser efficacement l’ADN plasmidique (vecteur d’expression contenant le gène d’intérêt) pour former des complexes de petites tailles appelés polyplexes. Ces derniers doivent contourner plusieurs étapes limitantes afin de délivrer le gène d’intérêt au noyau de la cellule hôte. Dans les conditions optimales du transfert de gène par le PEI, les polyplexes arborent une charge positive nette interagissant de manière électrostatique avec les protéoglycanes à héparane sulfate (HSPG) qui décorent la surface cellulaire. On observe deux familles d’HSPG exprimés en abondance à la surface des cellules de mammifères : les syndécanes (4 membres, SDC1-4) et les glypicanes (6 membres, GPC1-6). Si l’implication des HSPG dans l’attachement cellulaire des polyplexes est aujourd’hui largement acceptée, leur rôle individuel vis-à-vis de cet attachement et des étapes subséquentes du transfert de gène reste à confirmer. Après avoir optimisées les conditions de transfection des cellules de mammifères CHO et HEK293 dans le but de produire des r-protéines secrétées, nous avons entrepris des cinétiques de capture, d’internalisation des polyplexes et aussi d’expression du transgène afin de mieux comprendre le processus de transfert de gène. Nous avons pu observer des différences au niveau de ces paramètres de transfection dépendamment du système d’expression et des caractéristiques structurelles du PEI utilisé. Ces résultats présentés sous forme d’articles scientifiques constituent une base solide de l’enchaînement dans le temps des évènements essentiels à une transfection efficace des cellules CHO et HEK293 par le PEI. Chaque type cellulaire possède un profil d’expression des HSPG qui lui est propre, ces derniers étant plus ou moins permissifs au transfert de gène. En effet, une étude menée dans notre laboratoire montre que les SDC1 et SDC2 ont des rôles opposés vis-à-vis du transfert de gène. Alors que tous deux sont capables de lier les polyplexes, l’expression de SDC1 permet leur internalisation contrairement à l’expression de SDC2 qui l’inhibe. De plus, lorsque le SDC1 est exprimé à la surface des cellules HEK293, l’efficacité de transfection est augmentée de douze pourcents. En utilisant la capacité de SDC1 à induire l’internalisation des polyplexes, nous avons étudié le trafic intracellulaire des complexes SDC1 / polyplexes dans les cellules HEK293. De plus, nos observations suggèrent une nouvelle voie par laquelle les polyplexes pourraient atteindre efficacement le noyau cellulaire. Dans le contexte du transfert de gène, les HSPG sont essentiellement étudiés dans leur globalité. S’il est vrai que le rôle des syndécanes dans ce contexte est le sujet de quelques études, celui des glypicanes est inexploré. Grâce à une série de traitements chimiques et enzymatiques visant une approche « perte de fonction », l’importance de la sulfatation comme modification post-traductionnelle, l’effet des chaînes d’héparanes sulfates mais aussi des glypicanes sur l’attachement, l’internalisation des polyplexes, et l’expression du transgène ont été étudiés dans les cellules CHO et HEK293. L’ensemble de nos observations indique clairement que le rôle des HSPG dans le transfert de gène devrait être investigué individuellement plutôt que collectivement. En effet, le rôle spécifique de chaque membre des HSPG sur la capture des polyplexes et leur permissivité à l’expression génique demeure encore inconnu. En exprimant de manière transitoire chaque membre des syndécanes et glypicanes à la surface des cellules CHO, nous avons déterminé leur effet inhibiteur ou activateur sur la capture des polyplexes sans pouvoir conclure quant à l’effet de cette surexpression sur l’efficacité de transfection. Par contre, lorsqu’ils sont présents dans le milieu de culture, le domaine extracellulaire des HSPG réduit l’efficacité de transfection des cellules CHO sans induire la dissociation des polyplexes. Curieusement, lorsque chaque HSPG est exprimé de manière stable dans les cellules CHO, seulement une légère modulation de l’expression du transgène a pu être observée. Ces travaux ont contribué à la compréhension des mécanismes d'action du vecteur polycationique polyéthylènimine et à préciser le rôle des protéoglycanes à héparane sulfate dans le transfert de gène des cellules CHO et HEK293.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Thesis (Ph.D.)--University of Washington, 2016-08

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The difficulties encountered in implementing large scale CM codes on multiprocessor systems are now fairly well understood. Despite the claims of shared memory architecture manufacturers to provide effective parallelizing compilers, these have not proved to be adequate for large or complex programs. Significant programmer effort is usually required to achieve reasonable parallel efficiencies on significant numbers of processors. The paradigm of Single Program Multi Data (SPMD) domain decomposition with message passing, where each processor runs the same code on a subdomain of the problem, communicating through exchange of messages, has for some time been demonstrated to provide the required level of efficiency, scalability, and portability across both shared and distributed memory systems, without the need to re-author the code into a new language or even to support differing message passing implementations. Extension of the methods into three dimensions has been enabled through the engineering of PHYSICA, a framework for supporting 3D, unstructured mesh and continuum mechanics modeling. In PHYSICA, six inspectors are used. Part of the challenge for automation of parallelization is being able to prove the equivalence of inspectors so that they can be merged into as few as possible.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Dans le contexte de restrictions budgétaires où nous sommes présentement engagés, il deviendra de plus en plus nécessaire que les institutions démontrent l'efficacité de leurs services. Aux États-Unis depuis le début des années ‘70 on a, avec l'instauration du mouvement ''d'accountability", incité les intervenants du monde de la santé et de l'éducation à s'interroger sur l'efficacité des services dispensés. Au Québec, comme l'affirme Quesnel (1980), les institutions devront rendre des comptes en précisant les raisons qui expliquent s'ils ont atteint ou non les résultats souhaités. Au niveau des services de consultation, "l'accountability" permet d'établir une relation entre les consultants en psychologie et en orientation qui s'efforcent de rendre des comptes à leur directeur de service concernant le choix, la réalisation des activités et les résultats obtenus. Nous voulons par la présente recherche nous engager dans cette ère d'évaluation de qualités de services en utilisant un outil standardisé d'identification des préoccupations des étudiants du collégial, soit le questionnaire I.P.R. Ce questionnaire s'inscrit dans un processus d'où il tire d'ailleurs son titre : I pour identification des besoins des étudiants P pour programmation d'activités en réponse aux besoins exprimés R pour réalisation de la programmation et de l'évaluation Cet instrument subventionné par la Direction générale de l'enseignement collégial (D.G.E.C.) s'inscrit dans le cadre des modèles systémiques d'évaluation. Il permet aux services de psychologie, d'orientation, d'aide pédagogique individuelle, d'information scolaire et professionnelle, d'identifier l'importance des préoccupations des étudiants et de connaître leur besoin d'aide vis-à-vis ces préoccupations. À la lumière de ces résultats, les intervenants pourront programmer des activités répondant aux besoins des étudiants et pourront évaluer la réalisation de ces activités. […]

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The persistence concern implemented as an aspect has been studied since the appearance of the Aspect-Oriented paradigm. Frequently, persistence is given as an example that can be aspectized, but until today no real world solution has applied that paradigm. Such solution should be able to enhance the programmer productivity and make the application less prone to errors. To test the viability of that concept, in a previous study we developed a prototype that implements Orthogonal Persistence as an aspect. This first version of the prototype was already fully functional with all Java types including arrays. In this work the results of our new research to overcome some limitations that we have identified on the data type abstraction and transparency in the prototype are presented. One of our goals was to avoid the Java standard idiom for genericity, based on casts, type tests and subtyping. Moreover, we also find the need to introduce some dynamic data type abilities. We consider that the Reflection is the solution to those issues. To achieve that, we have extended our prototype with a new static weaver that preprocesses the application source code in order to introduce changes to the normal behavior of the Java compiler with a new generated reflective code.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The life cycle of software applications in general is very short and with extreme volatile requirements. Within these conditions programmers need development tools and techniques with an extreme level of productivity. We consider the code reuse as the most prominent approach to solve that problem. Our proposal uses the advantages provided by the Aspect-Oriented Programming in order to build a reusable framework capable to turn both programmer and application oblivious as far as data persistence is concerned, thus avoiding the need to write any line of code about that concern. Besides the benefits to productivity, the software quality increases. This paper describes the actual state of the art, identifying the main challenge to build a complete and reusable framework for Orthogonal Persistence in concurrent environments with support for transactions. The present work also includes a successfully developed prototype of that framework, capable of freeing the programmer of implementing any read or write data operations. This prototype is supported by an object oriented database and, in the future, will also use a relational database and have support for transactions.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Applications are subject of a continuous evolution process with a profound impact on their underlining data model, hence requiring frequent updates in the applications' class structure and database structure as well. This twofold problem, schema evolution and instance adaptation, usually known as database evolution, is addressed in this thesis. Additionally, we address concurrency and error recovery problems with a novel meta-model and its aspect-oriented implementation. Modern object-oriented databases provide features that help programmers deal with object persistence, as well as all related problems such as database evolution, concurrency and error handling. In most systems there are transparent mechanisms to address these problems, nonetheless the database evolution problem still requires some human intervention, which consumes much of programmers' and database administrators' work effort. Earlier research works have demonstrated that aspect-oriented programming (AOP) techniques enable the development of flexible and pluggable systems. In these earlier works, the schema evolution and the instance adaptation problems were addressed as database management concerns. However, none of this research was focused on orthogonal persistent systems. We argue that AOP techniques are well suited to address these problems in orthogonal persistent systems. Regarding the concurrency and error recovery, earlier research showed that only syntactic obliviousness between the base program and aspects is possible. Our meta-model and framework follow an aspect-oriented approach focused on the object-oriented orthogonal persistent context. The proposed meta-model is characterized by its simplicity in order to achieve efficient and transparent database evolution mechanisms. Our meta-model supports multiple versions of a class structure by applying a class versioning strategy. Thus, enabling bidirectional application compatibility among versions of each class structure. That is to say, the database structure can be updated because earlier applications continue to work, as well as later applications that have only known the updated class structure. The specific characteristics of orthogonal persistent systems, as well as a metadata enrichment strategy within the application's source code, complete the inception of the meta-model and have motivated our research work. To test the feasibility of the approach, a prototype was developed. Our prototype is a framework that mediates the interaction between applications and the database, providing them with orthogonal persistence mechanisms. These mechanisms are introduced into applications as an {\it aspect} in the aspect-oriented sense. Objects do not require the extension of any super class, the implementation of an interface nor contain a particular annotation. Parametric type classes are also correctly handled by our framework. However, classes that belong to the programming environment must not be handled as versionable due to restrictions imposed by the Java Virtual Machine. Regarding concurrency support, the framework provides the applications with a multithreaded environment which supports database transactions and error recovery. The framework keeps applications oblivious to the database evolution problem, as well as persistence. Programmers can update the applications' class structure because the framework will produce a new version for it at the database metadata layer. Using our XML based pointcut/advice constructs, the framework's instance adaptation mechanism is extended, hence keeping the framework also oblivious to this problem. The potential developing gains provided by the prototype were benchmarked. In our case study, the results confirm that mechanisms' transparency has positive repercussions on the programmer's productivity, simplifying the entire evolution process at application and database levels. The meta-model itself also was benchmarked in terms of complexity and agility. Compared with other meta-models, it requires less meta-object modifications in each schema evolution step. Other types of tests were carried out in order to validate prototype and meta-model robustness. In order to perform these tests, we used an OO7 small size database due to its data model complexity. Since the developed prototype offers some features that were not observed in other known systems, performance benchmarks were not possible. However, the developed benchmark is now available to perform future performance comparisons with equivalent systems. In order to test our approach in a real world scenario, we developed a proof-of-concept application. This application was developed without any persistence mechanisms. Using our framework and minor changes applied to the application's source code, we added these mechanisms. Furthermore, we tested the application in a schema evolution scenario. This real world experience using our framework showed that applications remains oblivious to persistence and database evolution. In this case study, our framework proved to be a useful tool for programmers and database administrators. Performance issues and the single Java Virtual Machine concurrent model are the major limitations found in the framework.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The purpose of this paper is twofold. Firstly it presents a preliminary and ethnomethodologically-informed analysis of the way in which the growing structure of a particular program's code was ongoingly derived from its earliest stages. This was motivated by an interest in how the detailed structure of completed program `emerged from nothing' as a product of the concrete practices of the programmer within the framework afforded by the language. The analysis is broken down into three sections that discuss: the beginnings of the program's structure; the incremental development of structure; and finally the code productions that constitute the structure and the importance of the programmer's stock of knowledge. The discussion attempts to understand and describe the emerging structure of code rather than focus on generating `requirements' for supporting the production of that structure. Due to time and space constraints, however, only a relatively cursory examination of these features was possible. Secondly the paper presents some thoughts on the difficulties associated with the analytic---in particular ethnographic---study of code, drawing on general problems as well as issues arising from the difficulties and failings encountered as part of the analysis presented in the first section.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The present article reflects the progress of an ongoing master’s dissertation on language engineering. The main goal of the work here described, is to infer a programmer’s profile through the analysis of his source code. After such analysis the programmer shall be placed on a scale that characterizes him on his language abilities. There are several potential applications for such profiling, namely, the evaluation of a programmer’s skills and proficiency on a given language or the continuous evaluation of a student’s progress on a programming course. Throughout the course of this project and as a proof of concept, a tool that allows the automatic profiling of a Java programmer is under development. This tool is also introduced in the paper and its preliminary outcomes are discussed.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

É do conhecimento geral de que, hoje em dia, a tecnologia evolui rapidamente. São criadas novas arquitecturas para resolver determinadas limitações ou problemas. Por vezes, essa evolução é pacífica e não requer necessidade de adaptação e, por outras, essa evolução pode Implicar mudanças. As linguagens de programação são, desde sempre, o principal elo de comunicação entre o programador e o computador. Novas linguagens continuam a aparecer e outras estão sempre em desenvolvimento para se adaptarem a novos conceitos e paradigmas. Isto requer um esforço extra para o programador, que tem de estar sempre atento a estas mudanças. A Programação Visual pode ser uma solução para este problema. Exprimir funções como módulos que recebem determinado Input e retomam determinado output poderá ajudar os programadores espalhados pelo mundo, através da possibilidade de lhes dar uma margem para se abstraírem de pormenores de baixo nível relacionados com uma arquitectura específica. Esta tese não só mostra como combinar as capacidades do CeII/B.E. (que tem uma arquitectura multi­processador heterogénea) com o OpenDX (que tem um ambiente de programação visual), como também demonstra que tal pode ser feito sem grande perda de performance. ABSTRACT; lt is known that nowadays technology develops really fast. New architectures are created ln order to provide new solutions for different technology limitations and problems. Sometimes, this evolution is pacific and there is no need to adapt to new technologies, but things also may require a change every once ln a while. Programming languages have always been the communication bridge between the programmer and the computer. New ones keep coming and other ones keep improving ln order to adapt to new concepts and paradigms. This requires an extra-effort for the programmer, who always needs to be aware of these changes. Visual Programming may be a solution to this problem. Expressing functions as module boxes which receive determined Input and return determined output may help programmers across the world by giving them the possibility to abstract from specific low-level hardware issues. This thesis not only shows how the CeII/B.E. (which has a heterogeneous multi-core architecture) capabilities can be combined with OpenDX (which has a visual programming environment), but also demonstrates that lt can be done without losing much performance.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

La possibilité de programmer une cellule dans le but de produire une protéine d’intérêt est apparue au début des années 1970 avec l’essor du génie génétique. Environ dix années plus tard, l’insuline issue de la plateforme de production microbienne Escherichia coli, fut la première protéine recombinante (r-protéine) humaine commercialisée. Les défis associés à la production de r-protéines plus complexes et glycosylées ont amené l’industrie biopharmaceutique à développer des systèmes d’expression en cellules de mammifères. Ces derniers permettent d’obtenir des protéines humaines correctement repliées et de ce fait, biologiquement actives. Afin de transférer le gène d’intérêt dans les cellules de mammifères, le polyéthylènimine (PEI) est certainement un des vecteurs synthétiques le plus utilisé en raison de son efficacité, mais aussi sa simplicité d’élaboration, son faible coût et sa stabilité en solution qui facilite son utilisation. Il est donc largement employé dans le contexte de la production de r-protéines à grande échelle et fait l’objet d’intenses recherches dans le domaine de la thérapie génique non virale. Le PEI est capable de condenser efficacement l’ADN plasmidique (vecteur d’expression contenant le gène d’intérêt) pour former des complexes de petites tailles appelés polyplexes. Ces derniers doivent contourner plusieurs étapes limitantes afin de délivrer le gène d’intérêt au noyau de la cellule hôte. Dans les conditions optimales du transfert de gène par le PEI, les polyplexes arborent une charge positive nette interagissant de manière électrostatique avec les protéoglycanes à héparane sulfate (HSPG) qui décorent la surface cellulaire. On observe deux familles d’HSPG exprimés en abondance à la surface des cellules de mammifères : les syndécanes (4 membres, SDC1-4) et les glypicanes (6 membres, GPC1-6). Si l’implication des HSPG dans l’attachement cellulaire des polyplexes est aujourd’hui largement acceptée, leur rôle individuel vis-à-vis de cet attachement et des étapes subséquentes du transfert de gène reste à confirmer. Après avoir optimisées les conditions de transfection des cellules de mammifères CHO et HEK293 dans le but de produire des r-protéines secrétées, nous avons entrepris des cinétiques de capture, d’internalisation des polyplexes et aussi d’expression du transgène afin de mieux comprendre le processus de transfert de gène. Nous avons pu observer des différences au niveau de ces paramètres de transfection dépendamment du système d’expression et des caractéristiques structurelles du PEI utilisé. Ces résultats présentés sous forme d’articles scientifiques constituent une base solide de l’enchaînement dans le temps des évènements essentiels à une transfection efficace des cellules CHO et HEK293 par le PEI. Chaque type cellulaire possède un profil d’expression des HSPG qui lui est propre, ces derniers étant plus ou moins permissifs au transfert de gène. En effet, une étude menée dans notre laboratoire montre que les SDC1 et SDC2 ont des rôles opposés vis-à-vis du transfert de gène. Alors que tous deux sont capables de lier les polyplexes, l’expression de SDC1 permet leur internalisation contrairement à l’expression de SDC2 qui l’inhibe. De plus, lorsque le SDC1 est exprimé à la surface des cellules HEK293, l’efficacité de transfection est augmentée de douze pourcents. En utilisant la capacité de SDC1 à induire l’internalisation des polyplexes, nous avons étudié le trafic intracellulaire des complexes SDC1 / polyplexes dans les cellules HEK293. De plus, nos observations suggèrent une nouvelle voie par laquelle les polyplexes pourraient atteindre efficacement le noyau cellulaire. Dans le contexte du transfert de gène, les HSPG sont essentiellement étudiés dans leur globalité. S’il est vrai que le rôle des syndécanes dans ce contexte est le sujet de quelques études, celui des glypicanes est inexploré. Grâce à une série de traitements chimiques et enzymatiques visant une approche « perte de fonction », l’importance de la sulfatation comme modification post-traductionnelle, l’effet des chaînes d’héparanes sulfates mais aussi des glypicanes sur l’attachement, l’internalisation des polyplexes, et l’expression du transgène ont été étudiés dans les cellules CHO et HEK293. L’ensemble de nos observations indique clairement que le rôle des HSPG dans le transfert de gène devrait être investigué individuellement plutôt que collectivement. En effet, le rôle spécifique de chaque membre des HSPG sur la capture des polyplexes et leur permissivité à l’expression génique demeure encore inconnu. En exprimant de manière transitoire chaque membre des syndécanes et glypicanes à la surface des cellules CHO, nous avons déterminé leur effet inhibiteur ou activateur sur la capture des polyplexes sans pouvoir conclure quant à l’effet de cette surexpression sur l’efficacité de transfection. Par contre, lorsqu’ils sont présents dans le milieu de culture, le domaine extracellulaire des HSPG réduit l’efficacité de transfection des cellules CHO sans induire la dissociation des polyplexes. Curieusement, lorsque chaque HSPG est exprimé de manière stable dans les cellules CHO, seulement une légère modulation de l’expression du transgène a pu être observée. Ces travaux ont contribué à la compréhension des mécanismes d'action du vecteur polycationique polyéthylènimine et à préciser le rôle des protéoglycanes à héparane sulfate dans le transfert de gène des cellules CHO et HEK293.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

In the context of computer numerical control (CNC) and computer aided manufacturing (CAM), the capabilities of programming languages such as symbolic and intuitive programming, program portability and geometrical portfolio have special importance -- They allow to save time and to avoid errors during part programming and permit code re-usage -- Our updated literature review indicates that the current state of art presents voids in parametric programming, program portability and programming flexibility -- In response to this situation, this article presents a compiler implementation for EGCL (Extended G-code Language), a new, enriched CNC programming language which allows the use of descriptive variable names, geometrical functions and flow-control statements (if-then-else, while) -- Our compiler produces low-level generic, elementary ISO-compliant Gcode, thus allowing for flexibility in the choice of the executing CNC machine and in portability -- Our results show that readable variable names and flow control statements allow a simplified and intuitive part programming and permit re-usage of the programs -- Future work includes allowing the programmer to define own functions in terms of EGCL, in contrast to the current status of having them as library built-in functions

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O objecto de estudo desta tese de mestrado surgiu da necessidade de dar resposta a uma proposta para uma solução de business intelligence a pedido de um cliente da empresa onde até à data me encontro a desempenhar funções de analista programador júnior. O projecto consistiu na realização de um sistema de monitorização de eventos e análise de operações, portanto um sistema integrado de gestão de frotas com módulo de business intelligence. Durante o decurso deste projecto foi necessário analisar metodologias de desenvolvimento, aprender novas linguagens, ferramentas, como C#, JasperReport, visual studio, Microsoft SQL Server entre outros. ABSTRACT: Business Intelligence applied to fleet management systems - Technologies and Methodologies Analysis. The object of study of this master's thesis was the necessity of responding to a proposal for a business intelligence solution at the request of a client company where so far I find the duties of junior programmer. The project consisted of a system event monitoring and analysis of operations, so an integrated fleet management with integrated business intelligence. During the course of this project was necessary to analyze development methodologies, learn new languages, tools such as C #, JasperReports, visual studio, Microsoft Sql Server and others.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Neste documento foi feita a apresentação do conceito de Programação Visual, estudados alguns exemplos de Linguagens de Programação Visual e investigado vantagens e desvantagens sobre o seu uso comparativamente à programação tradicional (por texto) e, adicionalmente, foram estudados três jogos para aprender a programar com fortes características visuais. A partir desta investigação, foi criada uma nova Linguagem de Programação Visual(LPV) sendo a base de um prototipo de um jogo para aprender a programar. Este jogo é representado pela deslocação e execução de tarefas feitas por um robô dentro de uma casa, sendo o objetivo do programador colocar objetos nesta casa que manipulam a deslocação do robô dentro desta de forma a resolver um problema; Abstract: A game to learn programming Aplication of concepts of visual programming to create a game to learn how to program In this document we will explain the concept of Visual Programming, study some examples of Visual Programming Languages, analyze some arguments in favor and against its use in comparison to traditional programming (by text) and, additionally, study three games to learn programming with strong visual features. Using this research, a new Visual Programming Language(VPL) was created, being the basis of a prototype of a game to learn programming. This game is represented by the movement and execution of tasks done by a robot inside a house, being the goal of the programmer to place objects in this house that manipulate the movement of the robot inside of it in order to solve a problem.