Dissertations / Theses on the topic 'OS programmers'

To see the other types of publications on this topic, follow the link: OS programmers.

Create a spot-on reference in APA, MLA, Chicago, Harvard, and other styles

Select a source type:

Consult the top 50 dissertations / theses for your research on the topic 'OS programmers.'

Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago, Vancouver, etc.

You can also download the full text of the academic publication as pdf and read online its abstract whenever available in the metadata.

Browse dissertations / theses on a wide variety of disciplines and organise your bibliography correctly.

1

Maslovska. "TYPES OF PROGRAMMERS." Thesis, Київ 2018, 2018. http://er.nau.edu.ua/handle/NAU/33811.

Full text
APA, Harvard, Vancouver, ISO, and other styles
2

Clarke, Anthony. "Instructional methods for novice programmers." Thesis, University of British Columbia, 1989. http://hdl.handle.net/2429/28166.

Full text
Abstract:
Computer programming is a relatively new phenomenon. Instructional methods in response to this new pedagogy have been many and varied. In the critical interplay between teacher and learner, the learners' perception of the instructional environment is perhaps one of the most important yet least understood variables. Little research has been devoted to understanding the learners' perceptions of the different instructional methods advocated. This study provides an insight into the students' perceptions of two instructional methods, and thus extends the knowledge base for decision making about learning environments for novice programmers. An introductory computer programming class of sixteen university students was divided into two groups, one to experience the Lecture-lab approach (teacher centred) and the other the Guided Self-discovery approach (student centred). To ensure an even balance of abilities between the two groups, student allocation was based on a test of programming ability and a test of field independence. During the study students completed two attitude questionnaires, three tests of programming ability and a log sheet for every class. At the conclusion of the experimentation period, eight of the sixteen students were interviewed. The results of the statistical (Pearson's correlation coefficient, t-tests) and interview analysis indicated that novice programmers prefer an instructional framework based on: a teaching style that allows active student participation and substantial student-teacher interactions, a learning environment that allows student exploration and substantial student-student interactions, and resource materials that include regular work sheet.
Education, Faculty of
Curriculum and Pedagogy (EDCP), Department of
Graduate
APA, Harvard, Vancouver, ISO, and other styles
3

Berglund, Erik. "Library Communication Among Programmers Worldwide." Doctoral thesis, Linköping : Dep. of Computer and Information Science, Univ, 2002. http://www.ep.liu.se/diss/science_technology/07/58/index.html.

Full text
APA, Harvard, Vancouver, ISO, and other styles
4

Apel, Th, F. Milde, and M. Theß. "SPC-PM Po 3D --- Programmers Manual." Universitätsbibliothek Chemnitz, 1998. http://nbn-resolving.de/urn:nbn:de:bsz:ch1-199800848.

Full text
Abstract:
The experimental program ¨SPC-PM Po 3D¨ is part of the ongoing research of the Chemnitz research group Scientific Parallel Computing (SPC) into finite element methods for problems over three dimensional domains. The package in its version 2.0 is documented in two manuals. The User's Manual provides an overview over the program, its capabilities, its installation, and handling. Moreover, test examples are explained. The aim of the Programmer's Manual is to provide a description of the algorithms and their realization. It is written for those who are interested in a deeper insight into the code, for example for improving and extending. In Version 2.0 the program can solve the Poisson equation and the Lam'e system of linear elasticity with in general mixed boundary conditions of Dirichlet and Neumann type. The domain $\Omega\subset\R^3$ can be an arbitrarily bounded polyhedron. The input is a coarse mesh, a description of the data and some control parameters. The program distributes the elements of the coarse mesh to the processors, refines the elements, generates the system of equations using linear or quadratic shape functions, solves this system and offers graphical tools to display the solution. Further, the behavior of the algorithms can be monitored: arithmetic and communication time is measured, the discretization error is measured, different preconditioners can be compared. We plan to extend the program in the next future by including a multigrid solver, an error estimator and adaptive mesh refinement, as well as the treatment of coupled thermo-elastic problems. The program has been developed for MIMD computers; it has been tested on Parsytec machines (GCPowerPlus-128 with Motorola Power PC601 processors and GCel-192 on transputer basis) and on workstation clusters using PVM. The special case of only one processor is included, that means the package can be compiled for single processor machines without any change in the source files.
APA, Harvard, Vancouver, ISO, and other styles
5

Citron, Judith Linda. "Cognitive processes of novice computer programmers." Thesis, University College London (University of London), 1985. http://discovery.ucl.ac.uk/10019556/.

Full text
APA, Harvard, Vancouver, ISO, and other styles
6

Srirangarajan, Ananth Lall Pradeep Umphress David A. "The scrum process for independent programmers." Auburn, Ala, 2009. http://hdl.handle.net/10415/1617.

Full text
APA, Harvard, Vancouver, ISO, and other styles
7

Jansson, Erika. "Data-model representation for non-programmers." Thesis, Uppsala universitet, Institutionen för informationsteknologi, 2019. http://urn.kb.se/resolve?urn=urn:nbn:se:uu:diva-394277.

Full text
Abstract:
Nowadays, there are people working within the IT-industry without any major knowledge in programming. Some of them sometimes need to make changes that currently only can be done in the actual code. This project is about finding the best way for non-programmers to make changes in a data-model without having to change the code. The project is divided into three parts where the first two is about finding different ways to solve this problem and then evaluate them through expert evaluation and based on relevant theory. The third part is about taking the result from part one and two and develop it. The third part ends with user-tests and follow-up interviews with 12 test-participants. In this part, also programmers will participate to get a complete overview of all the intended user’s experience. The result is that a graphical concept is to be preferred for users with minor/without programming experience. For programmers, it is harder to tell which concept is best and a more extensive investigation probably has to be done to get a fair result. These conclusions are based on the results from the conducted tests/interviews together with available external theory. The results could be improved with more users and more extensive tests. Worth mentioning is since all users are individuals, different concepts suit different persons and what suits one user best might not suit another at all, despite background as programmer or non-programmer.
APA, Harvard, Vancouver, ISO, and other styles
8

Rousseau, Nicholas P. "The psychology of programming for non-programmers." Thesis, Loughborough University, 1990. https://dspace.lboro.ac.uk/2134/26882.

Full text
Abstract:
Intermittent computer users, generally unable to program, often need more flexibility than current applications can offer them. A first step to providing such flexibility is to consider the psychological issues underlying the users' needs and the communication of these needs. This thesis does this by exploring the possibility of "Automatic Programming" where users communicate their requirements and the computer generates programs to meet them.
APA, Harvard, Vancouver, ISO, and other styles
9

de, Raadt Michael. "Teaching programming strategies explicitly to novice programmers." University of Southern Queensland, Faculty of Business, 2008. http://eprints.usq.edu.au/archive/00004827/.

Full text
Abstract:
[Abstract]: The traditional approach to training novice programmers has been to provide explicit programming knowledge instruction but to rely on implicit instruction of programming strategies. Studies, reported in literature, have discovered universally poor results on standardised tests for novices studying under this traditional approach.This dissertation describes the explicit integration of programming strategies into instruction and assessment of novice programmers, and the impact of this change ontheir learning outcomes.An initial experiment was used to measure the performance of students studying under a traditional curriculum with implicitly taught programming strategies. Thisexperiment uncovered common flaws in the strategy skills of novices and revealed weaknesses in the curriculum. Incorporation of explicit strategy instruction wasproposed.To validate a model of strategies as being authentic and appropriate for novice instruction, an experiment with experts was conducted. Experts were asked to solvethree problems that a novice would typically be expected to solve at the end of an introductory programming course. Experts‟ solutions were analysed using Goal/PlanAnalysis and it was discovered that experts consistently applied plans, the subalgorithmic strategies suggested by Soloway (1986). It was proposed that plans could be adapted for explicit inclusion in an introductory programming curriculum.Initially a curriculum incorporating explicit strategy instruction was tested in an artificial setting with a small number of volunteers, divided into control andexperimental groups. The control group was taught using a simplified traditional curriculum and the experimental group were exposed to a curriculum which explicitly included programming strategies. Testing revealed that experimental group participants applied plans more than control group participants, who had been expected to learn these strategies implicitly. In interviews, experimental participants used strategy-related terminology and were more confident in the solutions they had created. These results justified a trial of the curriculum in an actual introductory programming course.When explicit instruction of programming strategies was incorporated into an actual introductory programming curriculum, novices achieved superior results whencompared to results from the initial experiment. Novices used strategies significantly more when these strategies were incorporated explicitly into instructional materialsand assessment items.This series of experiments focussed on explicitly teaching specific programming strategies rather than teaching problem-solving more generally. These experimentalresults demonstrate that explicit incorporation of programming strategies may improve outcomes for novices and potentially improve the potential of expertprogrammers in future.
APA, Harvard, Vancouver, ISO, and other styles
10

Milner, Walter William. "Concept development in novice programmers learning Java." Thesis, University of Birmingham, 2011. http://etheses.bham.ac.uk//id/eprint/1670/.

Full text
Abstract:
It is hypothesised that the development of concepts in formal education can be understood through the ideas of non-literal language and conceptual integration networks. The notions of concept, understanding and meaning are examined in some depth from philosophical, psychological and linguistic standpoints. The view that most concepts are grasped through non-literal means such as metaphor and conceptual blend is adopted. The central contention is that this applies both to everyday ideas and to those presented to students in formal educational contexts, and that consequently such learning is best seen in those terms. Such learning is not founded upon literal language, but a construction by the student of a complex network of metaphor and conceptual blends. This is examined in the context of students learning programming, in particular in the language Java. The hypothesis is tested by analysing transcribed interviews with a wide range of students, triangulated with an examination of teaching materials, and the data is shown to be consistent with the hypothesis. However the approach is fundamental and is not concerned with specific features of programming or Java, so that conclusions are relevant across a wide range of disciplines, especially mathematics, science and engineering. The thesis provides a new way of examining course design and learning materials including lectures and textbooks. Discourse which might seem to be literal is in fact metaphorical and blended, since it is in that way that the expert community understands the ideas. The students’ construction of corresponding blends is on the basis of their learning experience, and course design features such as examples can be explained and evaluated in such terms.
APA, Harvard, Vancouver, ISO, and other styles
11

McLean, Christopher Alex. "Artist-programmers and programming languages for the arts." Thesis, Goldsmiths College (University of London), 2011. http://research.gold.ac.uk/6611/.

Full text
Abstract:
We consider the artist-programmer, who creates work through its description as source code. The artist-programmer grandstands computer language, giving unique vantage over human-computer interaction in a creative context. We focus on the human in this relationship, noting that humans use an amalgam of language and gesture to express themselves. Accordingly we expose the deep relationship between computer languages and continuous expression, examining how these realms may support one another, and how the artist-programmer may fully engage with both. Our argument takes us up through layers of representation, starting with symbols, then words, language and notation, to consider the role that these representations may play in human creativity. We form a cross-disciplinary perspective from psychology, computer science, linguistics, human-computer interaction, computational creativity, music technology and the arts. We develop and demonstrate the potential of this view to inform arts practice, through the practical introduction of software prototypes, artworks, programming languages and improvised performances. In particular, we introduce works which demonstrate the role of perception in symbolic semantics, embed the representation of time in programming language, include visuospatial arrangement in syntax, and embed the activity of programming in the improvisation and experience of art.
APA, Harvard, Vancouver, ISO, and other styles
12

Truong, Nghi Khue Dinh. "A web-based programming environment for novice programmers." Thesis, Queensland University of Technology, 2007. https://eprints.qut.edu.au/16471/1/Nghi_Truong_Thesis.pdf.

Full text
Abstract:
Learning to program is acknowledged to be difficult; programming is a complex intellectual activity and cannot be learnt without practice. Research has shown that first year IT students presently struggle with setting up compilers, learning how to use a programming editor and understanding abstract programming concepts. Large introductory class sizes pose a great challenge for instructors in providing timely, individualised feedback and guidance for students when they do their practice. This research investigates the problems and identifies solutions. An interactive and constructive web-based programming environment is designed to help beginning students learn to program in high-level, object-oriented programming languages such as Java and C#. The environment eliminates common starting hurdles for novice programmers and gives them the opportunity to successfully produce working programs at the earliest stage of their study. The environment allows students to undertake programming exercises anytime, anywhere, by "filling in the gaps" of a partial computer program presented in a web page, and enables them to receive guidance in getting their programs to compile and run. Feedback on quality and correctness is provided through a program analysis framework. Students learn by doing, receiving feedback and reflecting - all through the web. A key novel aspect of the environment is its capability in supporting small "fill in the gap" programming exercises. This type of exercise places a stronger emphasis on developing students' reading and code comprehension skills than the traditional approach of writing a complete program from scratch. It allows students to concentrate on critical dimensions of the problem to be solved and reduces the complexity of writing programs.
APA, Harvard, Vancouver, ISO, and other styles
13

Truong, Nghi Khue Dinh. "A web-based programming environment for novice programmers." Queensland University of Technology, 2007. http://eprints.qut.edu.au/16471/.

Full text
Abstract:
Learning to program is acknowledged to be difficult; programming is a complex intellectual activity and cannot be learnt without practice. Research has shown that first year IT students presently struggle with setting up compilers, learning how to use a programming editor and understanding abstract programming concepts. Large introductory class sizes pose a great challenge for instructors in providing timely, individualised feedback and guidance for students when they do their practice. This research investigates the problems and identifies solutions. An interactive and constructive web-based programming environment is designed to help beginning students learn to program in high-level, object-oriented programming languages such as Java and C#. The environment eliminates common starting hurdles for novice programmers and gives them the opportunity to successfully produce working programs at the earliest stage of their study. The environment allows students to undertake programming exercises anytime, anywhere, by "filling in the gaps" of a partial computer program presented in a web page, and enables them to receive guidance in getting their programs to compile and run. Feedback on quality and correctness is provided through a program analysis framework. Students learn by doing, receiving feedback and reflecting - all through the web. A key novel aspect of the environment is its capability in supporting small "fill in the gap" programming exercises. This type of exercise places a stronger emphasis on developing students' reading and code comprehension skills than the traditional approach of writing a complete program from scratch. It allows students to concentrate on critical dimensions of the problem to be solved and reduces the complexity of writing programs.
APA, Harvard, Vancouver, ISO, and other styles
14

Parnin, Christopher Joseph. "Supporting interrupted programming tasks with memory-based aids." Diss., Georgia Institute of Technology, 2014. http://hdl.handle.net/1853/53056.

Full text
Abstract:
Despite its vast capacity and associative powers, the human brain does not deal well with interruptions. Particularly in situations where information density is high, such as during a programming task, recovering from an interruption requires extensive time and effort. Although researchers recognize this problem, no programming tool takes into account the brain's structure and limitations in its design. In this dissertation, I describe my research collecting evidence about the impact of interruptions on programmers, understanding how programmers manage them in practice, and designing tools that can support interrupted programmers. I present a conceptual framework for understanding human memory organization and its strengths and weaknesses, particularly with respect to dealing with work interruptions. The framework explains empirical results obtained from experiments in which programmers were interrupted. For researchers, the intent is to use the framework to design development tools capable of compensating for human memory limitations. For developers, the insights and strategies from the framework should allow reflection on our own programming habits and work practices and how they may be tailored to better fit our human brain. The framework is evaluated by conducting two experiments that find that 1) developers can recall nearly twice as many past programming events using a tool designed with the framework over traditional tools, with comparable recall effort and 2) developers can remember to perform nearly twice as many prospective actions using a tool designed with the framework over traditional tools, with limited impact to cognitive load.
APA, Harvard, Vancouver, ISO, and other styles
15

Lau-Kee, David Andrew. "Visual and by-example interactive systems for non-programmers." Thesis, University of York, 1990. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.238670.

Full text
APA, Harvard, Vancouver, ISO, and other styles
16

Warley, John. "The selection of computer programmers : an assessment of fairness." Master's thesis, University of Cape Town, 1990. http://hdl.handle.net/11427/15979.

Full text
Abstract:
Bibliography: pages 87-91.
The shortage of skilled computer staff in South Africa has reached critical proportions. Not only is commerce unable to recruit enough manpower with the required experience and expertise, they are also posed with the problem of high turnover and remunerating a small number of people in excess of their market value. In contrast to this phenomena, South Africa has a vastly under-utilised "other than "white" population of Matriculants and Technikon diplomates. It is hypothesised that the skilled shortage in computer programming could be overcome if more applicants out of this labour segment were given entry level jobs and trained to be productive and competent. This study attempts to address the difficulties of the under-utilised manpower resources by looking at the entry level requirements for computer programmers. Since for industry as a whole, aptitude tests are used on applicants for entry level programmers, one of these tests, viz. the National Institute of Personnel Research General Aptitude Battery was investigated. It was hypothesised that the instrument was an unfair selection tool· as most "other than white" applicants evaluated did not perform as well as the white applicants. The sample comprised of technikon students who had passed at least their first year of the Computer Data Processing Diploma. Thirty five were selected and matched from a white and forty three from a so-called "coloured" institution. The results of this cross cultural research design in a field setting were statistically analysed and findings were that the "coloured" group scored far lower than that of the white group. Therefore, the researcher concluded that the test battery was not a good predictor of success and should not be used across population groups, as it could lead to an unfair labour practice. It was proposed instead that a biographical structured interview guide based on the accomplishments of applicants ·be used to supplement the test results. In so doing the researcher suggested that dimensions of success for a programmer be probed for, during the interview rather than concentrating purely on an aptitude test which could be seen as unfair.
APA, Harvard, Vancouver, ISO, and other styles
17

Buyrukoglu, Selim. "Semi-automated assessment of programming languages for novice programmers." Thesis, Loughborough University, 2018. https://dspace.lboro.ac.uk/2134/33669.

Full text
Abstract:
There has recently been an increased emphasis on the importance of learning programming languages, not only in higher education but also in secondary schools. Students of a variety of departments such as physics, mathematics and engineering have also started learning programming languages as part of their academic courses. Assessment of students programming solutions is therefore important for developing their programming skills. Many Computer Based Assessment (CBA) systems utilise multiple-choice questions (MCQ) to evaluate students performance. However, MCQs lack the ability to comprehensively assess students knowledge. Thus, other forms of programming solutions are required to assess students knowledge. This research aims to develop a semi-automated assessment framework for novice programmers, utilising a computer to support the marking process. The research also focuses on ensuring the consistency of feedback. A novel marking process model is developed based on the semi-automated assessment approach which supports a new way of marking, termed segmented marking . A study is carried out to investigate and demonstrate the feasibility of the segmented marking technique. In addition, the new marking process model is developed based on the results of the feasibility study, and two novel marking process models are presented based on segmented marking, namely the full-marking and partial-marking process models. The Case-Based Reasoning (CBR) cycle is adopted in the marking process models in order to ensure the consistency of feedback. User interfaces of the prototype marking tools (full and partial) are designed and developed based on the marking process models and the user interface design requirements. The experimental results show that the full and partial marking techniques are feasible for use in formative assessment. Furthermore, the results also highlight that the tools are capable of providing consistent and personalised feedback and that they considerably reduce markers workload.
APA, Harvard, Vancouver, ISO, and other styles
18

Bertholf, Christopher Forrest. "Comprehension of Literate Programs by Novice and Intermediate Programmers." PDXScholar, 1993. https://pdxscholar.library.pdx.edu/open_access_etds/4572.

Full text
Abstract:
The studies reported herein compare comprehension of Ut style literate programs to that of traditional modular programs documented by embedded comments. Novice and intermediate programmers participated in three experiments designed to determine the comprehensibility of literate programs written using a language-independent system for abstraction-oriented literate programming compared with programs written using traditional modular programming techniques (traditional modular programs). Programs were written in either the C or FORTRAN programming language. Half of the subjects in each group received a literate program, while the other half received a traditional modular program with embedded documentation. Subjects received a problem specification, input and output specifications, and a language reference for use in the study. Subjects were asked to perform a program maintenance task (complete an incomplete program). The maintenance task was used as a measure of comprehension; it simulates an actual task in the software engineering industry that requires program comprehension in order to be completed. The elapsed time to effect a solution was recorded. The completed programs were judged as correct, functionally correct with syntax errors, or incorrect; several reconstructive program comprehension measures were also collected and analyzed_ The clear overall result was that subjects using the literate programs found a solution (correct or functionally correct with syntax errors) more often than did subjects using the traditional modular programs with embedded comments. In fact, none of the subjects in this study who modified the traditional programs were able to effect a solution that was totally correct, nor even one that was functionally correct with syntax errors.
APA, Harvard, Vancouver, ISO, and other styles
19

Cunningham, Lynn T. "A comparison of the organizational strategies of multilingual computer programmers." Thesis, Virginia Tech, 1988. http://hdl.handle.net/10919/43839.

Full text
Abstract:
see document
The objective of this study was to determine whether computer programmers would organize reserved words by programming language or by conceptual category, when given an opportunity to use either strategy. Twenty-seven participants, stratified by programming experience level (novice, intermediate, and expert), were given sixteen reserved words on index cards. The words were taken from four programming languages, as well as six conceptual categories. Participants were given both a recognition and a recall task. Organizing the words by conceptual category enabled the expert programmers to perform significantly better on the recall task than experts who organized by language. In addition, they made fewer recognition errors, and had more structured recall, in terms of recalling the words by the categories in which they were studied. Expert computer programmers, similar to natural language multilinguals, can recall more (reserved) words when they are organized by conceptual categories rather than by (programming) language. It is hypothesized that this is because human memory is organized in a fundamentally interdependent (across languages) manner in many domains other than natural language, such as computer programming.
Master of Arts
APA, Harvard, Vancouver, ISO, and other styles
20

Buss, Alanna. "Showing Programmers that they Already Know How to Write Well." DigitalCommons@CalPoly, 2018. https://digitalcommons.calpoly.edu/theses/1917.

Full text
Abstract:
Being able to communicate effectively through writing is an important skill for computer scientists and software engineers. In addition to being able to write code, programmers need to write clearly and concisely for everything from comments in their code to documentation. Despite writing being essential to their future careers, many programming students from Cal Poly find writing to be unimportant and many of them believe that they are not capable of writing good papers. How can Cal Poly help these students? This paper describes a pedagogy to help students improve their writing skills. It is based heavily on the belief that programmers already possess many of the skills necessary to be good writers. The pedagogy hopes to show students how to utilize the skills from writing code in their paper writing. This paper answers the question "Can transferring programming knowledge to writing help improve student confidence or writing ability?". Results from the study show that the pedagogy can be associated with an improvement in students' confidence in their ability to write logical, well-organized papers. It also showss that the pedagogy can be associated with students being able to split their paragraphs into single topics more effectively.
APA, Harvard, Vancouver, ISO, and other styles
21

Tula, Naveen. "An Empirical Study of How Novice Programmers Use the Web." Thesis, University of North Texas, 2016. https://digital.library.unt.edu/ark:/67531/metadc849754/.

Full text
Abstract:
Students often use the web as a source of help for problems that they encounter on programming assignments.In this work, we seek to understand how students use the web to search for help on their assignments.We used a mixed methods approach with 344 students who complete a survey and 41 students who participate in a focus group meetings and helped in recording data about their search habits.The survey reveals data about student reported search habits while the focus group uses a web browser plug-in to record actual search patterns.We examine the results collectively and as broken down by class year.Survey results show that at least 2/3 of the students from each class year rely on search engines to locate resources for help with their programming bugs in at least half of their assignments;search habits vary by class year;and the value of different types of resources such as tutorials and forums varies by class year.Focus group results exposes the high frequency web sites used by the students in solving their programming assignments.
APA, Harvard, Vancouver, ISO, and other styles
22

Nivens, Ryan Andrew. "A Review of Robot Turtles: The Game for Little Programmers." Digital Commons @ East Tennessee State University, 2017. https://dc.etsu.edu/etsu-works/2637.

Full text
APA, Harvard, Vancouver, ISO, and other styles
23

Nevins, Cole. "The effect of correspondence highlighting on novice programmer instruction." Pullman, Wash. : Washington State University, 2009. http://www.dissertations.wsu.edu/Thesis/Spring2009/c_nevins_042409.pdf.

Full text
Abstract:
Thesis (M.S. in computer science)--Washington State University, May 2009.
Title from PDF title page (viewed on May 26, 2009). "School of Electrical Engineering and Computer Science." Includes bibliographical references (p. 64-72).
APA, Harvard, Vancouver, ISO, and other styles
24

Foss, Henrik Finnland. "Development of an Embedded Test Platform : A Real-Time Programmers Perspective." Thesis, Norges teknisk-naturvitenskapelige universitet, Institutt for teknisk kybernetikk, 2014. http://urn.kb.se/resolve?urn=urn:nbn:no:ntnu:diva-26756.

Full text
Abstract:
As the embedded world grows day by day, more complex operations are carried out in this environment. The embedded market is no longer dominated by the 8-bit segment, and future embedded and real-time programmers will thus need a wider range of knowledge and skills. This project is a study into several aspects of embedded real-time systems. The first goal was to create a versatile test platform for future programmers to learn real-time and embedded programming principles. The second goal was to study GNU/Linux in an embedded real-time environment. The purpose of the first goal was to create an improved alternative to the course assignment in TTK4147, Real-Time Systems, where today's exercises are either outdated or run on virtual machines. The purpose of the second goal was to investigate the potential for a complex operating system to offer hard real-time characteristics. This project has created an embedded platform for testing embedded and real-time principles. The platform consists of a single-board computer together with a stackable cape by own design, containing a 8-bit microcontroller circuit. The cape, called the External Response Tester, was programmed to perform testing on the responsiveness of the connected hardware, and it was shown that it did so with precision. We also expanded on the operating systems catalogue for the single-board computer as we ported a fully preemptible Linux kernel, as well as the real-time operating system FreeRTOS to work on the board. This complete educational platform was found to be capable of unifying and replacing most of the TTK4147 course assignments.The operating system GNU/Linux, more importantly the fully preemptible PREEMPT\_RT version, was evaluated in terms of usage in hard real-time systems. An analysis that compared results from the ordinary Linux kernel, the PREEMPT\_RT patched Linux kernel, and FreeRTOS was carried out. We concluded that the fully preemptible Linux version is not "definitely unsuitable", and its applicability depends on the requirements of a given real-time application.
APA, Harvard, Vancouver, ISO, and other styles
25

Flatscher, Rony G. "Anatomy of a GUI (Graphical User Interface) Application for Rexx Programmers." Rexx Language Association, 2018. http://epub.wu.ac.at/6875/2/201803%2DAnatomyOfGUI%2DArticle.pdf.

Full text
Abstract:
Creating for the first time GUI (graphical user interface) applications is an endeavor that can be most challenging. This article introduces the general concepts of GUIs and the need to interact with GUI elements only on the so called "GUI thread". The concepts pertain to GUI applications written for Windows, Linux and MacOS alike. Using Java libraries for creating Rexx GUI applications makes these Rexx GUI applications totally platform independent. Taking advantage of BSF4ooRexx even the powerful JavaFX GUI libraries can be exploited by pure Rexx, allowing Rexx programmers to create the most demanding and complex GUI applications in an unparalleled easiness in an astonishing short period of time. The introduced GUI concepts will be demonstrated with short nutshell examples exploiting the JavaFX GUI libraries, empowering the Rexx programmers with the ability to create stable and error free GUI applications in Rexx.
APA, Harvard, Vancouver, ISO, and other styles
26

Lund, Geoffrey. "Quality aspects of the program development process used by learner programmers." Thesis, Abertay University, 2002. https://rke.abertay.ac.uk/en/studentTheses/6e6c8128-f8de-466a-9ee4-262a7ca9e1bf.

Full text
Abstract:
Much research in the area of computer programming education has examined the product (program) produced by the novice, measured it and sought ways to improve it. Little regard has been given to the process by which the novice has produced the product. This is in sharp contract to the main teaching in software engineering that stresses the importance of process rather than the product. This thesis initially developed and validated a set of metrics that allowed the measurement of the personal software development process (PSDP). These metrics allow comparison between different personal software development processes. In this thesis an experiment is reported where a group of novices were given feedback during the development of the program that sought to improve the PSDP. The results showed a significant improvement in the PSDP is achieved against a control group. Investigation into the relationship between the process and the product indicates that there is no correlation between the process metrics and the product metrics save for the measurement of correctness; a program developed well tends to be more correct than one that is not. Other product quality measures are unaffected by the quality of the process. This replicates results recorded in the literature. The thesis concludes by proposing a unified framework of programming knowledge that includes 4 levels of knowledge (syntactic, semantic, schematic and strategic) each with two levels (declarative and procedural). The work in this thesis is used to justify the inclusion of strategic knowledge in the framework. This work has implications for deliverers of computer programming education be they lecturers or providers of computer aided learning packages in providing a framework for the learning of novice programmers and especially emphasising the importance of the personal software development process.
APA, Harvard, Vancouver, ISO, and other styles
27

Prather, James. "Beyond Automated Assessment: Building Metacognitive Awareness in Novice Programmers in CS1." Diss., NSUWorks, 2018. https://nsuworks.nova.edu/gscis_etd/1030.

Full text
Abstract:
The primary task of learning to program in introductory computer science courses (CS1) cognitively overloads novices and must be better supported. Several recent studies have attempted to address this problem by understanding the role of metacognitive awareness in novices learning programming. These studies have focused on teaching metacognitive awareness to students by helping them understand the six stages of learning so students can know where they are in the problem-solving process, but these approaches are not scalable. One way to address scalability is to implement features in an automated assessment tool (AAT) that build metacognitive awareness in novice programmers. Currently, AATs that provide feedback messages to students can be said to implement the fifth and sixth learning stages integral to metacognitive awareness: implement solution (compilation) and evaluate implemented solution (test cases). The computer science education (CSed) community is actively engaged in research on the efficacy of compile error messages (CEMs) and how best to enhance them to maximize student learning and it is currently heavily disputed whether or not enhanced compile error messages (ECEMs) in AATs actually improve student learning. The discussion on the effectiveness of ECEMs in AATs remains focused on only one learning stage critical to metacognitive awareness in novices: implement solution. This research carries out an ethnomethodologically-informed study of CS1 students via think-aloud studies and interviews in order to propose a framework for designing an AAT that builds metacognitive awareness by supporting novices through all six stages of learning. The results of this study provide two important contributions. The first is the confirmation that ECEMs that are designed from a human-factors approach are more helpful for students than standard compiler error messages. The second important contribution is that the results from the observations and post-assessment interviews revealed the difficulties novice programmers often face to developing metacognitive awareness when using an AAT. Understanding these barriers revealed concrete ways to help novice programmers through all six stages of the problem-solving process. This was presented above as a framework of features, which when implemented properly, provides a scalable way to implicitly produce metacognitive awareness in novice programmers.
APA, Harvard, Vancouver, ISO, and other styles
28

Florian, Timothy P. "Confidence-based assessment in Moodle: Insights from teachers, administrators, and programmers." ScholarWorks, 2010. https://scholarworks.waldenu.edu/dissertations/814.

Full text
Abstract:
Critical thinking is a skill that school systems are trying to develop in their student populations. Numerous studies have been conducted on developing critical thinking skills such as self-regulation, interpretation, and analysis. However, available data on the use of learning management systems (LMS) as a means to develop critical-thinking skills have been opaque. This study examined the perceptions of local stakeholders and the impact of confidence-based assessment (CBA) on secondary students at one high school. The conceptual framework guiding the study represented a synthesis of theoretical perspectives on critical thinking and its development with the current research on the pedagogical foundations of LMS applications. This qualitative case study project was designed to understand the perceptions of teachers, administrators, and content developers regarding the viability of a LMS with CBA embedded to increase students' critical-thinking skills. The research question focused on the use of Moodle, an LMS option, modified to use CBA to measure, improve, and enhance critical thinking skills. Qualitative data from open-ended questionnaires and interviews were gathered from teachers, administrators, and content developers who had taken a CBA within Moodle, and then coded using typological analysis to explore the respondents' perspectives. Since compelling evidence was found that a cost-effective LMS with embedded CBA may provide a positive benefit to students, a project consisting of a detailed program implementation plan was proposed to the school district. If implemented, the program can be replicated by educational institutions, potentially contributing to social change by democratizing access to a testing methodology that increases students' background knowledge while measuring their critical thinking skills.
APA, Harvard, Vancouver, ISO, and other styles
29

Romero, Mares Juan Pablo. "Focal structures and information types in Prolog." Thesis, University of Sussex, 2001. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.340778.

Full text
APA, Harvard, Vancouver, ISO, and other styles
30

Hu, Jun. "The relationship between hypermedia features and the learning style/cognitive control of hypermedia developers." Morgantown, W. Va. : [West Virginia University Libraries], 1999. http://etd.wvu.edu/templates/showETD.cfm?recnum=691.

Full text
Abstract:
Thesis (Ed. D.)--West Virginia University, 1999.
Title from document title page. Document formatted into pages; contains viii, 99 p. : ill. (some col.) Includes abstract. Includes bibliographical references (p. 76-80).
APA, Harvard, Vancouver, ISO, and other styles
31

Anderson, Steven Schuyler. "Is there a shortage of computer programmers/systems analysts? an examination of the empirical evidence /." Thesis, Monterey, California : Naval Postgraduate School, 1990. http://handle.dtic.mil/100.2/ADA240588.

Full text
Abstract:
Thesis (M.S. in Information Systems)--Naval Postgraduate School, September1990.
Thesis Advisor(s): Haga, William J. Second Reader: Mehay, Stephen L. "September 1990." Description based on title screen viewed on December 16, 2009. DTIC Descriptor(s): Computer personnel, shortages, programmers, analysts, systems analysis, theses, computers, specialists. DTIC Identifier(s): Computer programs, systems analysis, specialists, shortages, theses. Author(s) subject terms: Programmer, systems analysis, shortage, shortfall. Includes bibliographical references (p. 29-30). Also available in print.
APA, Harvard, Vancouver, ISO, and other styles
32

Gopali, Gopali. "Protecting Web Applications from SQL Injection Attacks- Guidelines for Programmers Master Thesis." Thesis, Malmö universitet, Fakulteten för teknik och samhälle (TS), 2018. http://urn.kb.se/resolve?urn=urn:nbn:se:mau:diva-20238.

Full text
Abstract:
Injektionsattack är den mest kritiska säkerhetsapplikationen för webbapplikationer, och SQL-injektion (SQLi) -attack är den mest rapporterade injektionsattacken på webbapplikationer. I denna avhandling har vi identifierat angreppsteknikerna som används av angripare och vi ger också riktlinjer så att programmerarna kan skriva webbapplikationskoder på ett säkert sätt för att förhindra SQLi-attackerna.Metoden som tillämpas för forskningen är litteraturstudie och vi använde vägen bevis genom demonstration för att få den tydliga bilden. Det första steget var att ta reda på kodningsfelen, då utformade vi riktlinjer som kan hjälpa till att skydda webbapplikationer från SQLi-attacker. Denna avhandling kommer att hjälpa programmerarna att förstå de olika kodningsbristerna och hur dessa kodningsfel kan förhindras och för detta har vi använt bevis genom demonstration. Denna avhandling kommer också att bidra till den allmänna medvetenheten om SQLi-attacker, attacker och riktlinjer för programmerare som designar, utvecklar och testar webbapplikationer.
Injection attack is the most critical web application security risk, and SQL-injection (SQLi) attack is the most reported injection attack on web applications. In this thesis, we have identified the attacking techniques used by attackers and we are also providing guidelines so that the programmers can write web application code in a secure way, to prevent the SQLi attacks.The methodology applied for the research is literature study and we used the way proof by demonstration to get the clear picture. The first step was to find out the coding flaws, then we designed guidelines that can help to protect web applications from SQLi attacks. This thesis will help the programmers to understand the various coding flaws and how those coding flaws can be prevented and for this, we have used proof by demonstration. This thesis will also contribute to the general awareness of SQLi attacks, attack types and guidelines for the programmers who are designing, developing and testing web applications.
APA, Harvard, Vancouver, ISO, and other styles
33

Wendt, Maximilian. "Visual Enhancements for Code Examples to Support the Knowledge Exchange Between Programmers." Thesis, Malmö högskola, Fakulteten för teknik och samhälle (TS), 2016. http://urn.kb.se/resolve?urn=urn:nbn:se:mau:diva-20926.

Full text
Abstract:
Software development is an endless problem-solving activity and programmers regularly use online media channels to ask each other for advice. In particular, socially enabled media channels like the question & answer website Stack Overflow changed how programmers communicate and coordinate, and how they produce and consume content on the Web. Nowadays, a vast body of software development knowledge is documented in form of code examples. But acquiring the knowledge by reading code and logically reason about how they work makes non-trivial examples hard to understand. The aim of this work is to develop visual enhancements that support programmers in the knowledge exchange with code examples. Through a design science research approach using interaction design methods visualizations were developed and evaluated that allow programmers to see the execution and simultaneously inspect the state in order to gain a better understanding of how the underlying system of the code example works. Professional programmers participated in a workshop and found the visualizations to be helpful in the comprehension process.
APA, Harvard, Vancouver, ISO, and other styles
34

Woods, John Heath. "AN ASSESSMENT OF TOOLS TO ASSIST NEW C PROGRAMMERS IN FINDING BUGS." OpenSIUC, 2019. https://opensiuc.lib.siu.edu/theses/2541.

Full text
Abstract:
The C programming language offers a high degree of control and freedom to programmers. This makes it a powerful tool, but it also gives the language a steep learning curve. One difficulty that many new C programmers face is in figuring out how to analyze and debug their code, as well as the output. There exists a variety of tools that can be used to assist in debugging. They can offer aid by identifying certain types of errors and by providing meaningful output that helps the user understand and correct those errors. The following seven debugging tools have been tested and analyzed in order to ascertain when and how each one of them might be most useful: Valgrind, GCC Address Sanitizer, Clang Address Sanitizer, Mtrace, Memwatch, Electric Fence, and Dmalloc. They have been tested using anonymous code submitted by actual students for C programming labs in order to see how many errors, and of which sort, each tool catches. The results of these tests, as well as their implications, are presented here.
APA, Harvard, Vancouver, ISO, and other styles
35

Zhang, Bing. "Using skip lists in the implementation of a hypertext tool for maintenance programmers." Thesis, National Library of Canada = Bibliothèque nationale du Canada, 1999. http://www.collectionscanada.ca/obj/s4/f2/dsk2/ftp03/MQ39119.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
36

daSilva, Amanda L. "When Education Matters Less: Estimating the Relative Return to Education for Computer Programmers." Scholarship @ Claremont, 2013. http://scholarship.claremont.edu/cmc_theses/550.

Full text
Abstract:
Many argue that formal degrees are not necessary to be successful in the technology industry, and further argue that self-taught computer programmers are more productive than formally taught computer programmers. This sentiment is supported by the examples of industry leaders such as Bill Gates, Steve Jobs, and Mark Zuckerberg. This study examines the possible effects of this attitude on the returns to education for computer programmers. The empirical analysis finds that the wage return to formal education for computer programmers is less than for most other occupations including STEM and degree-dominated professions. These differences are attributed to the smaller impact of signaling through educational attainment on wages in the technology industry as well as the perceived ability to substitute the human capital accumulated through formal education with self-teaching and experience.
APA, Harvard, Vancouver, ISO, and other styles
37

Case, Desmond Robert. "An animated pedagogical agent for assisting novice programmers within a desktop computer environment." Thesis, Staffordshire University, 2012. http://eprints.staffs.ac.uk/1979/.

Full text
Abstract:
Learning to program for the first time can be a daunting process, fraught with difficulty and setback. The novice learner is faced with learning two skills at the same time each that depends on the other; they are how a program needs to be constructed to solve a problem and how the structures of a program work towards solving a problem. In addition the learner has to develop practical skills such as how to design a solution, how to use the programming development environment, how to recognise errors, how to diagnose their cause and how to successfully correct them. The nature of learning how to program a computer can cause frustration to many and some to disengage before they have a chance to progress. Numerous authorities have observed that novice programmers make the same mistakes and encounter the same problems when learning their first programming language. The learner errors are usually from a fixed set of misconceptions that are easily corrected by experience and with appropriate guidance. This thesis demonstrates how a virtual animated pedagogical agent, called MRCHIPS, can extend the Beliefs-Desires-Intentions model of agency to provide mentoring and coaching support to novice programmers learning their first programming language, Python. The Cognitive Apprenticeship pedagogy provides the theoretical underpinning of the agent mentoring strategy. Case-Based Reasoning is also used to support MRCHIPS reasoning, coaching and interacting with the learner. The results indicate that in a small controlled study when novice learners are assisted by MRCHIPS they are more productive than those working without the assistance, and are better at problem solving exercises, there are also manifestations of higher of degree of engagement and learning of the language syntax.
APA, Harvard, Vancouver, ISO, and other styles
38

Khan, Iftikhar Ahmed. "Towards a mood sensitive integrated development environment to enhance the performance of programmers." Thesis, Brunel University, 2009. http://bura.brunel.ac.uk/handle/2438/3286.

Full text
Abstract:
The aim of the research was to analyze the possibility of developing an Integrated Development Environment (IDE) that could improve a programmer‘s performance by considering their current mood. Various experiments were conducted to study this idea. However, the impact of moods on programmer performance was initially examined in the literature. Based on this, a Cognitive Programming Task Model (CPTM) was developed showing that various cognitive functions and programming activities are interrelated. A second model derived from the literature, the Cognitive Mood Model (CMM), suggested that moods are also interrelated with various cognitive functions. Combining these two models indirectly suggests a relation between moods and programming tasks, which was presented as the Mood Programming Model (MPM). As direct empirical support was lacking for this relation, two experiments were conducted to study the effect mood could have on performance in a debug task. Validated mood-inducing movie clips were used to induce specific moods along two-mood dimensions: valence and arousal. The first study was conducted online. The results showed that arousal is a significant factor when considering programmer performance whereas valence was found to have no significant effect. The second study was a continuation study to validate the findings from the first study within lab conditions. The results were not able to confirm the findings of the first experiment. The reasons for these findings were explained accordingly. As mood was found to have an effect on a programmer‘s coding and debugging performance, this factor might be considered when developing a support system. The next step in the research was therefore to consider mood measuring in a non-interruptive way. The next two experiments were based around the hypothesis that ―moods can be measured from the keyboard and mouse interaction of the computer user‖. In the first experiment an application was installed on participants‘ computers to record their key presses and mouse clicks in a log file. Their self reported moods in intervals of 20 minutes were also stored in the same file over an average period of eight days. Correlations between participants‘ self reported moods and their keyboard and mouse use revealed that it might be possible to measure moods of the some of the participants. The second experiment took place in the lab, where participants were asked to perform programming like tasks while listening to ii mood inducing background music. Their moods were measured with a Galvanic Skin Response (GSR) meter whereas key presses and mouse clicks again were recorded in log files. The correlations between GSR measurements and keyboard and mouse interaction validated the findings of the experiment in the field that it might be possible to measure the mood of some users from their computer use. Analyzing participants‘ personality traits showed dutifulness and self discipline as indicators that a person‘s mood correlates with his/her interaction behaviour. Considering that mood has an effect on programmer performance and that it might be possible to measure mood in a non-intrusive manner, the last question to focus on was whether a computer-generated intervention could change a programmer‘s mood and consequently improve their performance. In the final experiment programmers had to dry run algorithms for 16 minutes with the expectation that a level of boredom would set in. After this the video clip instructed them to participate in some physical exercises. Participants continued tracing algorithms for 8 minutes after the intervention. Results showed that the mood change after the intervention coincided with a programmers improved ability to provide the correct output of the algorithms. Together these findings lay the foundation for developing an IDE that can measure the programmer mood in a non-intrusive way and make effective interventions to improve programmer performance.
APA, Harvard, Vancouver, ISO, and other styles
39

Rudolph, Godfrey. "Instructional technology for the teaching of novice programmers at a university of technology." Thesis, Cape Peninsula University of Technology, 2015. http://hdl.handle.net/20.500.11838/1401.

Full text
Abstract:
Dissertation submitted in fulfilment of the requirements for the degree of Master of Information Technologyin the Department of Information Technology in the Faculty of Informatics and Design Cape Peninsula University of Technology
Learning computer programming can be fun, challenging and improve problem solving which is a useful ability in general. A teaching-learning environment with a strong emphasis on problem solving promotes social behaviour and discloses the personal benefits that individuals working in almost any Information Technology position can get from programming knowledge. This research project is looking at the challenges experienced by novice programmers and the negative effect it has on the student and the university. This study will address the knowledge and skills needs of programming students and the challenges for students and educators to evolve from traditional to technology-supported teaching and learning. Computer programming is a cognitively challenging subject and good instructional strategies are important in providing the student with optimal learner support. Novice programmers often struggle to understand how a computer executes a program, which impacts negatively on the delivery of the subject and throughput rates. The majority of first year Information Technology students at Cape Peninsula University of Technology are novice programmers and lack strong logic and reasoning as well as other Information Technology skills that can facilitate their interpretation and application of key concepts in programming. These challenges and negative impact on the academic development of programming students have therefore forced the researcher to investigate innovative teaching strategies and/or instructional technologies that can facilitate novice programmers in learning the basic programming concepts. The purpose of this on-going study is to enhance the traditional method of teaching and the understanding of the problems experienced by novice programmers. This study attempts to respond to the question of what the tentative design principles of instructional technology are that can be used to facilitate novice programmers’ understanding of programming concepts. A mix methodology was considered but at the end a qualitative approach was employed. Multiple sources of data gathering, which include participant observations, video recording, a questionnaire, and document analysis, were used as research instruments. The findings, relative to providing a basis for finding a mechanism to help our first year students to cope with the abstract concepts of programming, reflected the literature review. Other key findings included:  Students have little or no prior computer or programming experience  Student population is diverse in terms of computer skills and programming knowledge  Visualization will help reduce the difficulties in writing programs The overall outcomes of this study suggest that:  Good programming examples that include games should be used  Students must be given the opportunity to be more active in their learning.  Computerized assistants should be provided for novice programmers  A visualization tool similar to Scratch should be considered  A basic background in Mathematics is recommended
APA, Harvard, Vancouver, ISO, and other styles
40

MacHaffie, Scott Andrew. "Difficulties Experienced Procedural Programmers Encounter When Transferring to an Object-oriented Programming Paradigm." PDXScholar, 1993. https://pdxscholar.library.pdx.edu/open_access_etds/4621.

Full text
Abstract:
Experienced procedural programmers seem to have difficulty when transferring from a procedural language to an object-oriented language. The problem is how to assist the experienced procedural programmers to make this shift. The long term goal of this research is to identify areas where programmers have problems and to develop an automated system to help them overcome these difficulties. This study examines the class designs produced by procedural programmers and the effect of specifications and domain knowledge on class designs. Two types of specifications were used: those written from a procedural point of view which emphasized the functions and those written from an object-oriented view which highlights the domain entities. In addition, the problem specifications were selected from three different domains in order to assess the effect of domain familiarity. Data was collected using paper and pencil designs and through verbal protocols. The class designs were analyzed to see if the different types produced could be classified and to determine the effect of specification type and domain knowledge.
APA, Harvard, Vancouver, ISO, and other styles
41

Dorn, Brian James. "A case-based approach for supporting the informal computing education of end-user programmers." Diss., Georgia Institute of Technology, 2010. http://hdl.handle.net/1853/37275.

Full text
Abstract:
Software development is no longer a task limited to professionally trained computer programmers. Increasing support for software customization through scripting, the opening of application programmer interfaces on the Web, and a growing need for domain specific application support have all contributed to an increase in end-user programming. Unfortunately, learning to program remains a challenging task, and the majority of end-user programmers lack any formal education in software development. Instead, these users must piece together their understanding of programming through trial and error, examples found online, and help from peers and colleagues. While current approaches to address the difficulties facing end-user programmers seek to change the nature of the programming task, I argue that these challenges often mirror those faced by all novice programmers. Thus, pedagogical solutions must also be explored. This dissertation work investigates the challenges that end-user programmers face from a computer science education perspective. I have engaged in a cycle of learner-centered design to answer the high-level questions: What do users know; what might they need to know; how are they learning; and how might we help users discover and learn what they need or want to know? In so doing, I uniquely frame end-user programming challenges as issues related to knowledge and understanding about computer science. Rather than building new languages or programming tools, I address these difficulties through new types of instructional materials and opportunities for felicitous engagement with them. This work is contextualized within a specific domain of non-traditional programmers: graphic and web designers who write scripts as part of their careers. Through an in-depth, learner-centered investigation of this user population, this dissertation makes five specific contributions: (1) A detailed characterization of graphic and web design end-user programmers and their knowledge of fundamental computing concepts. (2) An analysis of the existing information space that graphic and web designers rely on for help. (3) The implementation of a novel case-based learning aid named ScriptABLE that is explicitly designed to leverage existing user practices while conveying conceptual knowledge about programming. (4) Initial confirmatory evidence supporting case-based learning aids for the informal computing education of web and graphic design end-user programmers. (5) An argument in support of the value of normative computing knowledge among informally trained programmers.
APA, Harvard, Vancouver, ISO, and other styles
42

Vogts, Dieter. "The evaluation of a pedagogical-program development environment for Novice programmers : a comparative study." Thesis, Nelson Mandela Metropolitan University, 2007. http://hdl.handle.net/10948/638.

Full text
Abstract:
It is an acknowledged fact that many novice programmers experience difficulty in the process of learning to program. One of the contributing factors to this difficulty is the Program Development Environment (PDE). Professional-PDEs are those developed specifically for professional programmers, but are often used by educational institutions in the instruction of programming. It has long been accepted that such environments are inappropriate in the instruction of programming due to unnecessary complexity and lack of support for novice programmers in the learning process. Numerous pedagogical-PDEs supporting the mechanics of programming have been developed in response to this. A review of literature, however, indicates that very limited empirical studies comparing pedagogical-PDEs and professional-PDEs have been conducted. The current study investigates whether there are measurable benefits to using a pedagogical-PDE supporting the mechanics of programming in the instruction of programming instead of a professional-PDE. A comparative study of this nature requires a representative pedagogical-PDE and representative professional-PDE be compared with one another. The first part of the current study determines a set of requirements that a pedagogical- PDE should adhere to based on literature. A set of representative features for a pedagogical-PDE is derived by examining the features of existing PDEs in conjunction with the set of requirements. Based on these features, a pedagogical-PDE, known as SimplifIDE, is developed that implements the representative set of features and that meets are the requirements for a pedagogical-PDE. The second part of the current study is the specification and administration of an empirical experiment in which SimplifIDE and Borland© DelphiTM are compared with one another. A holistic approach in determining the differences between the PDEs is taken and three main areas are examined, namely academic performance, perceptions and programming behavior.
APA, Harvard, Vancouver, ISO, and other styles
43

Dudman, Kay Elizabeth. "An intention-based debugging system for novice assembly language programmers in an education environment." Thesis, Queen Mary, University of London, 1991. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.528931.

Full text
APA, Harvard, Vancouver, ISO, and other styles
44

Athri, Ashima. "Integrating the Media Computation API with Pythy, an Online IDE for Novice Python Programmers." Thesis, Virginia Tech, 2015. http://hdl.handle.net/10919/56564.

Full text
Abstract:
Improvements in both software and curricula have helped introductory computer science courses attract and retain more students. Pythy is one such online learning environment that aims to reduce software setup related barriers to learning Python while providing facilities like course management and grading to instructors. To further enable its goals of being beginner-centric, we want to integrate full support for media-computation-style programming activities. The media computation curriculum teaches fundamental computer science concepts through the activities of manipulating images, sounds and videos, and has been shown to be successful in retaining students and helping them gain transferable knowledge. In this work we tackle the first two installments of the problem namely, supporting image and sound-based media computation programs in Pythy. This involves not only client-side support that enables students to run media-computation exercises in the browser, but also server-side support to leverage Pythy's auto-grading facilities. We evaluated our implementation by systematically going through all 82 programs in the textbook that deal with image and sound manipulation and verifying if they worked in Pythy as-is, while complementing this with unit-tests for full test coverage. As a result, Pythy now supports 65 out of the 66 media-computation methods required for image and sound manipulation on both the client and the server-side, and 81 out of the 82 programs in the media-computation textbook can be executed as-is in Pythy.
Master of Science
APA, Harvard, Vancouver, ISO, and other styles
45

Coull, Natalie J. "SNOOPIE : development of a learning support tool for novice programmers within a conceptual framework." Thesis, St Andrews, 2008. http://hdl.handle.net/10023/522.

Full text
APA, Harvard, Vancouver, ISO, and other styles
46

Rajan, T. "APT : a principled design for an animated view of program execution for novice programmers." Thesis, Open University, 1986. http://oro.open.ac.uk/56927/.

Full text
Abstract:
This thesis is concerned with the principled design of a computational environment which depicts an animated view of program execution for novice programmers. We assert that a principled animated view of program execution should benefit novice programmers by: (i) helping students conceptualize what is happening when programs are executed; (ii) simplifying debugging through the presentation of bugs in a manner which the novice will understand; (iii) reducing program development time. The design is based on principles which have been extracted from three areas: (i) the problems that novices encounter when learning a programming language; (ii) the general design principles for computer systems; and (iii) systems which present a view of program execution. The design principles have been embodied in three 'canned stepper displays for Prolog, Lisp and 6502 Assembler. These prototypes, called APT-0 (Animated Program Tracer), demonstrate that the design principles can be broadly applied to procedural and declarative; low and high level languages. Protocol data was collected from subjects using the prototypes in order to check the direction of the research and to suggest improvements in the design. These improvements have been incorporated in a real implementation of APT for Prolog. This principled approach embodied by APT provides two important facilities which have previously not been available, firstly a means of demonstrating dynamic programming concepts such as variable binding, recursion, and backtracking, and secondly a debugging tool which allows novices to step through their own code watching the virtual machine in action. This moves towards simplifying the novice's debugging environment by supplying program execution information in a form that the novice can easily assimilate. An experiment into the misconceptions novices hold concerning the execution of Prolog programs shows that the order of database search, and the concepts of variable binding, unification and backtracking are poorly understood. A further experiment was conducted which looked at the effect that APT had on the ability of novice Prolog programmers to understand the execution of Prolog programs. This demonstrated that the performance of subjects significantly increased after being shown demonstrations of the execution of Prolog programs on APT, while the control group who saw no demonstration showed no improvement. The experimental evidence demonstrates the potential of APT, and the principled approach which it embodies, to communicate run-time information to novice programmers, increasing their understanding of the dynamic aspects of the Prolog interpreter. APT, uses an object centred representation, is built on top of a Prolog interpreter and environment, and is implemented in Common Lisp and Zeta Lisp and runs on the Symbolics 3600 range of machines.
APA, Harvard, Vancouver, ISO, and other styles
47

DePasquale, Peter Joseph III. "Implications on the Learning of Programming Through the Implementation of Subsets in Program Development Environments." Diss., Virginia Tech, 2003. http://hdl.handle.net/10919/28367.

Full text
Abstract:
The undergraduate Computer Science program at Virginia Tech is the largest in the Commonwealth of Virginia, of which a key component is ``CS 1044: Introduction to Programming'', and is typical of a first course in computer programming throughout the USA. While the student access to learning resources has improved considerably with the development of web-based assets, students are still expected to use the same sophisticated program development tools as are used in industry. The perceived complexity of the learning environment currently in use drives many women and minority students from the Computer Science program. A great deal of attention has been paid to the need to administer the student assignments and the grading system for this course, so as to minimize the teaching/grading load, but little attention has been paid to the methodologies of learning the material through practice. The work reported herein is intended to improve the pedagogy of this course by creating and integrating teaching/learning tools that better manage the student's engagement in the use of program development activities. Following the implementation of a three-element software system involving an interpreter for the C-language, a program development environment, and a data-monitoring/collectiondevice, the system was deployed in support of the freshman course in parallel to the commercial system commonly used. The experiment concentrated on examining the impact of the simplified development environment and the effort required for students to complete assigned programming projects.
Ph. D.
APA, Harvard, Vancouver, ISO, and other styles
48

Harwood, Philip Andrew. "Software development and continual change : a programmer's attitude problem." Thesis, University of Stirling, 1997. http://hdl.handle.net/1893/21883.

Full text
Abstract:
Software forms around a requirement. Defining this requirement is often regarded as the hardest part of software engineering. The requirement however has an additional complexity as, once defined, it will change with time. This change of requirement can come either from the user, or from the rapid advances in 'computer' technology. How then can software succeed to continue to remain 'current' both in terms of requirements and technology in this forever changing environment? This thesis examines the issues surrounding 'change' as applied to software and software engineering. Changing requirements are often deemed a 'curse' placed upon software engineers. It has been suggested, however, that the problems associated with change exist only in the attitude of software engineers. This is perhaps understandable considering the training methods and tools available to supposedly 'help' them. The evidence shows that quality of management and experience of personnel involved in development contribute more significantly to the success of a development project than any technical aspect. This unfortunately means that the process is highly susceptible to staff turnover which, if uncontrolled, can lead to pending disaster for the users. This suggests a 'better' system would be developed if 'experience' was maintained at a process level, rather that at an individual level. Conventional methods of software engineering are based upon a defined set of requirements which are determined at the beginning of the software process. This thesis presents an alternative paradigm which requires only a minimal set of requirements at the outset and actively encourages changes and additional requirements, even with a mature software product. The basis of this alternative approach is the fonn of the 'requirements specification' and the capturing and re-use of the 'experience' maintained by the software process itself.
APA, Harvard, Vancouver, ISO, and other styles
49

MAUDGALYA, TUSHYATI S. "EVALUATING THE IMPACT OF CULTURAL DIFFERENCES AMONG SOFTWARE PROGRAMMERS IN INDIA AND IN THE U.S." University of Cincinnati / OhioLINK, 2004. http://rave.ohiolink.edu/etdc/view?acc_num=ucin1085747490.

Full text
APA, Harvard, Vancouver, ISO, and other styles
50

Maudgalya, Tushyati S. "Evaluating the impact of cultural diferences among software programmers in India and in the U.S." Cincinnati, Ohio : University of Cincinnati, 2004. http://rave.ohiolink.edu/etdc/view?acc%5Fnum=ucin1085747490.

Full text
APA, Harvard, Vancouver, ISO, and other styles
We offer discounts on all premium plans for authors whose works are included in thematic literature selections. Contact us to get a unique promo code!

To the bibliography